diff --git a/.github/ISSUE_TEMPLATE/bug_report.md b/.github/ISSUE_TEMPLATE/bug_report.md index 7e580b0d7..de93034e0 100644 --- a/.github/ISSUE_TEMPLATE/bug_report.md +++ b/.github/ISSUE_TEMPLATE/bug_report.md @@ -14,6 +14,6 @@ assignees: '' If you know how to fix the issue you are reporting please consider opening a pull request. We provide a tutorial on -using git here: https://docs.godotengine.org/en/stable/community/contributing/pr_workflow.html, -writing documentation at https://docs.godotengine.org/en/stable/community/contributing/docs_writing_guidelines.html -and contributing to the class reference here: https://docs.godotengine.org/en/stable/community/contributing/updating_the_class_reference.html +using git here: https://contributing.godotengine.org/en/latest/organization/pull_requests/creating_pull_requests.html, +writing documentation at https://contributing.godotengine.org/en/latest/documentation/guidelines/index.html +and contributing to the class reference here: https://contributing.godotengine.org/en/latest/documentation/class_reference.html diff --git a/.github/PULL_REQUEST_TEMPLATE.md b/.github/PULL_REQUEST_TEMPLATE.md index 62e3e211d..33ddb49b1 100644 --- a/.github/PULL_REQUEST_TEMPLATE.md +++ b/.github/PULL_REQUEST_TEMPLATE.md @@ -4,5 +4,5 @@ PRs can target other branches (e.g. `3.2`, `3.5`) if the same change was done in PRs must not target `stable`, as that branch is updated manually. The type of content accepted into the documentation is explained here: -https://docs.godotengine.org/en/latest/community/contributing/content_guidelines.html +https://contributing.godotengine.org/en/latest/documentation/guidelines/content_guidelines.html --> diff --git a/.github/workflows/build_offline_docs.yml b/.github/workflows/build_offline_docs.yml index 82251e4b3..14b0a3b56 100644 --- a/.github/workflows/build_offline_docs.yml +++ b/.github/workflows/build_offline_docs.yml @@ -24,7 +24,7 @@ jobs: permissions: contents: write steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@v5 with: ref: ${{ matrix.branch }} diff --git a/.github/workflows/check_urls.yml b/.github/workflows/check_urls.yml index 26ece3c47..7359b526e 100644 --- a/.github/workflows/check_urls.yml +++ b/.github/workflows/check_urls.yml @@ -11,7 +11,7 @@ jobs: runs-on: ubuntu-24.04 steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@v5 - name: Restore lychee cache uses: actions/cache@v4 diff --git a/.github/workflows/cherrypick.yml b/.github/workflows/cherrypick.yml index 0be1fc399..50d7e270e 100644 --- a/.github/workflows/cherrypick.yml +++ b/.github/workflows/cherrypick.yml @@ -10,7 +10,7 @@ on: env: # TODO: Add a way to handle multiple potential cherrypick targets. - TARGET_BRANCH: '4.3' + TARGET_BRANCH: '4.5' USERNAME: 'Godot Organization' EMAIL: 'noreply@godotengine.org' @@ -35,7 +35,7 @@ jobs: steps: - name: Checkout - uses: actions/checkout@v4 + uses: actions/checkout@v5 with: ref: ${{ env.TARGET_BRANCH }} diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index e7413f86d..56d772aab 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -14,11 +14,15 @@ jobs: timeout-minutes: 120 steps: - name: Checkout - uses: actions/checkout@v4 + uses: actions/checkout@v5 - name: Style checks via pre-commit uses: pre-commit/action@v3.0.1 + - name: Custom RST checks (check-rst.sh) + run: | + bash ./_tools/check-rst.sh + - name: Get Python version id: pythonv run: | diff --git a/.github/workflows/sync_class_ref.yml b/.github/workflows/sync_class_ref.yml index fb786c547..10530828f 100644 --- a/.github/workflows/sync_class_ref.yml +++ b/.github/workflows/sync_class_ref.yml @@ -17,17 +17,17 @@ jobs: runs-on: ubuntu-24.04 timeout-minutes: 10 env: - engine_rev: '4.4' + engine_rev: '4.5' permissions: contents: write pull-requests: write steps: - name: Checkout the documentation repository - uses: actions/checkout@v4 + uses: actions/checkout@v5 - name: Checkout the engine repository - uses: actions/checkout@v4 + uses: actions/checkout@v5 with: repository: 'godotengine/godot' # Use the appropriate branch for the documentation version. diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index 806934458..8712366a6 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -6,7 +6,7 @@ repos: rev: v2.3.0 hooks: - id: codespell - files: ^(about|community|contributing|getting_started|tutorials)/.*\.rst$ + files: ^(about|community|engine_details|getting_started|tutorials)/.*\.rst$ additional_dependencies: [tomli] - repo: https://github.com/pre-commit/pre-commit-hooks diff --git a/404.rst b/404.rst new file mode 100644 index 000000000..21960757c --- /dev/null +++ b/404.rst @@ -0,0 +1,24 @@ +:github_url: hide +:allow_comments: False + +Page not found +============== + +.. https://github.com/readthedocs/sphinx-notfound-page + +.. raw:: html + +

+ Sorry, we couldn't find that page. It may have been renamed or removed + in the version of the documentation you're currently browsing. +

+

+ If you're currently browsing the + latest version of the documentation, try browsing the + stable version of the documentation. +

+

+ Alternatively, use the + Search docs + box on the left or go to the homepage. +

diff --git a/README.md b/README.md index bf2223d19..8684a8ba9 100644 --- a/README.md +++ b/README.md @@ -33,16 +33,16 @@ add-on. All contributors are welcome to help on the Godot documentation. -To get started, head to the [Contributing section](https://docs.godotengine.org/en/latest/contributing/how_to_contribute.html) of the online manual. There, you will find all the information you need to write and submit changes. +To get started, head to the [Contributing documentation](https://contributing.godotengine.org/en/latest/organization/how_to_contribute.html). There, you will find all the information you need to write and submit changes. Here are some quick links to the areas you might be interested in: -1. [Contributing to the online manual](https://docs.godotengine.org/en/latest/contributing/documentation/contributing_to_the_documentation.html) -2. [Contributing to the class reference](https://docs.godotengine.org/en/latest/contributing/documentation/updating_the_class_reference.html) -3. [Content guidelines](https://docs.godotengine.org/en/latest/contributing/documentation/content_guidelines.html) -4. [Writing guidelines](https://docs.godotengine.org/en/latest/contributing/documentation/docs_writing_guidelines.html) -5. [Building the manual](https://docs.godotengine.org/en/latest/contributing/documentation/building_the_manual.html) -6. [Translating the documentation](https://docs.godotengine.org/en/latest/contributing/documentation/editor_and_docs_localization.html) +1. [Contributing to the online manual](https://contributing.godotengine.org/en/latest/documentation/manual/index.html) +2. [Contributing to the class reference](https://contributing.godotengine.org/en/latest/documentation/class_reference.html) +3. [Content guidelines](https://contributing.godotengine.org/en/latest/documentation/guidelines/content_guidelines.html) +4. [Writing guidelines](https://contributing.godotengine.org/en/latest/documentation/guidelines/docs_writing_guidelines.html) +5. [Building the manual](https://contributing.godotengine.org/en/latest/documentation/manual/building_the_manual.html) +6. [Translating the documentation](https://contributing.godotengine.org/en/latest/documentation/translation/index.html) ## License diff --git a/_extensions/gdscript.py b/_extensions/gdscript.py index 533732158..f7c1e214c 100644 --- a/_extensions/gdscript.py +++ b/_extensions/gdscript.py @@ -324,6 +324,7 @@ class GDScriptLexer(RegexLexer): "is_instance_of", "len", "load", + "ord", "preload", "print_debug", "print_stack", @@ -396,6 +397,7 @@ class GDScriptLexer(RegexLexer): words( ( # modules/gdscript/doc_classes/@GDScript.xml + "@abstract", "@export", "@export_category", "@export_color_no_alpha", @@ -404,6 +406,7 @@ class GDScriptLexer(RegexLexer): "@export_enum", "@export_exp_easing", "@export_file", + "@export_file_path", "@export_flags", "@export_flags_2d_navigation", "@export_flags_2d_physics", diff --git a/_static/css/custom.css b/_static/css/custom.css index 5a57b8b4a..0300e8ecd 100644 --- a/_static/css/custom.css +++ b/_static/css/custom.css @@ -150,6 +150,8 @@ --kbd-shadow-color: #b0b7bf; --kbd-text-color: #444d56; + --role-button-background-color: #d3d7e1; + --code-example-good-color: #3fb950; --code-example-bad-color: #f85149; @@ -279,6 +281,8 @@ --kbd-outline-color: #3d4144; --kbd-shadow-color: #1e2023; --kbd-text-color: #e2f2ff; + + --role-button-background-color: #22252d; --code-example-good-color: #3fb950; --code-example-bad-color: #f85149; @@ -1844,3 +1848,18 @@ p + .classref-constant { #godot-giscus { margin-bottom: 1em; } + +/* Custom Sphinx roles for editor UI */ +/* The :ui: and :inspector: roles just render as bold. */ +.role-ui { + font-weight: 700; +} + +.role-button, .role-menu { + font-size: 80%; + border-radius: 4px; + padding: 2.4px 6px; + margin: auto 2px; + border: 0px solid #7fbbe3; + background: var(--role-button-background-color); +} diff --git a/_styleguides/de.md b/_styleguides/de.md index 649cdcefe..a75364c66 100644 --- a/_styleguides/de.md +++ b/_styleguides/de.md @@ -8,7 +8,7 @@ Lesbarkeit, Klarheit und Benutzbarkeit besonders im Vordergrund stehen. Für die Übersetzung selbst ist das Tool [Weblate](https://hosted.weblate.org/projects/godot-engine/) im Einsatz, das in der -[offiziellen Dokumentation](https://docs.godotengine.org/de/4.x/contributing/documentation/editor_and_docs_localization.html) näher +[offiziellen Dokumentation](https://contributing.godotengine.org/en/latest/documentation/translation/index.html) näher erläutert wird. Die Bedienung von Weblate ist nicht Bestandteil dieses Dokuments. @@ -357,8 +357,8 @@ mit übersetzt werden sollten. Für Übersetzungen des Editors und der Properties ist es ratsam, diese auch selbst zu testen, indem -man [die aktuelle Übersetzung herunterlädt](https://docs.godotengine.org/de/4.x/contributing/documentation/editor_and_docs_localization.html#offline-translation-and-testing) -und Godot mit den Änderungen [selbst kompiliert](https://docs.godotengine.org/de/4.x/contributing/development/compiling/compiling_for_windows.html). +man [die aktuelle Übersetzung herunterlädt](https://contributing.godotengine.org/en/latest/documentation/translation/index.html#offline-translation-and-testing) +und Godot mit den Änderungen [selbst kompiliert](https://docs.godotengine.org/de/4.x/engine_details/development/compiling/compiling_for_windows.html). Gerade bei der Anleitung kommt es oft auf den Kontext zwischen benachbarten Textblöcken an, sodass das Lesen eines ganzen Artikels Fehler sichtbar diff --git a/_templates/breadcrumbs.html b/_templates/breadcrumbs.html index d7e3dfd38..bf1f8389a 100644 --- a/_templates/breadcrumbs.html +++ b/_templates/breadcrumbs.html @@ -32,7 +32,7 @@ } } - + Learn how to contribute! diff --git a/_tools/check-rst.sh b/_tools/check-rst.sh new file mode 100755 index 000000000..3abb28cbc --- /dev/null +++ b/_tools/check-rst.sh @@ -0,0 +1,10 @@ +#!/usr/bin/env bash + +set -uo pipefail + +output=$(grep -r -P '^(?!\s*\.\.).*\S::$' --include='*.rst' --exclude='docs_writing_guidelines.rst' .) +if [[ -n $output ]]; then + echo 'The shorthand codeblock syntax (trailing `::`) is not allowed.' + echo "$output" + exit 1 +fi diff --git a/_tools/redirects/redirects.csv b/_tools/redirects/redirects.csv index 8abf40579..22ac665d1 100644 --- a/_tools/redirects/redirects.csv +++ b/_tools/redirects/redirects.csv @@ -2,22 +2,6 @@ source,destination /about/index.html,/index.html /about/troubleshooting.html,/tutorials/troubleshooting.html /classes/_classes.html,/classes/ -/community/contributing/best_practices_for_engine_contributors.html,/contributing/development/best_practices_for_engine_contributors.html -/community/contributing/bisecting_regressions.html,/contributing/workflow/bisecting_regressions.html -/community/contributing/bug_triage_guidelines.html,/contributing/workflow/bug_triage_guidelines.html -/community/contributing/building_the_manual.html,/contributing/documentation/building_the_manual.html -/community/contributing/class_reference_writing_guidelines.html,/contributing/documentation/class_reference_primer.html -/community/contributing/code_style_guidelines.html,/contributing/development/code_style_guidelines.html -/community/contributing/content_guidelines.html,/contributing/documentation/content_guidelines.html -/community/contributing/contributing_to_the_documentation.html,/contributing/documentation/contributing_to_the_documentation.html -/community/contributing/cpp_usage_guidelines.html,/contributing/development/cpp_usage_guidelines.html -/community/contributing/docs_writing_guidelines.html,/contributing/documentation/docs_writing_guidelines.html -/community/contributing/editor_and_docs_localization.html,/contributing/documentation/editor_and_docs_localization.html -/community/contributing/index.html,/contributing/ways_to_contribute.html -/community/contributing/pr_workflow.html,/contributing/workflow/pr_workflow.html -/community/contributing/testing_pull_requests.html,/contributing/workflow/testing_pull_requests.html -/community/contributing/updating_the_class_reference.html,/contributing/documentation/updating_the_class_reference.html -/community/contributing/ways_to_contribute.html,/contributing/ways_to_contribute.html /community/tutorials/3d/mesh_generation_with_heightmap_and_shaders.html,/tutorials/3d/mesh_generation_with_heightmap_and_shaders.html /community/tutorials/gdnative/gdnative-c-example.html,/tutorials/plugins/gdnative/gdnative-c-example.html /community/tutorials/gdnative/index.html,/tutorials/plugins/gdnative/index.html @@ -25,61 +9,56 @@ source,destination /community/tutorials/vr/vr_primer.html,/tutorials/vr/vr_primer.html /content/3d/making_trees.html,/tutorials/content/making_trees.html /contributing/_contributing.html,/community/contributing/ -/contributing/bug_triage_guidelines.html,/community/contributing/bug_triage_guidelines.html -/contributing/development/compiling/compiling_with_mono.html,/contributing/development/compiling/compiling_with_dotnet.html -/contributing/development/core_and_modules/introduction_to_godot_development.html,/contributing/development/core_and_modules/index.html -/contributing/doc_and_l10n_guidelines.html,/community/contributing/doc_and_l10n_guidelines.html -/contributing/updating_the_class_reference.html,/community/contributing/updating_the_class_reference.html -/contributing/ways_to_contribute.html,/contributing/how_to_contribute.html -/development/compiling/compiling_for_android.html,/contributing/development/compiling/compiling_for_android.html -/development/compiling/compiling_for_ios.html,/contributing/development/compiling/compiling_for_ios.html -/development/compiling/compiling_for_linuxbsd.html,/contributing/development/compiling/compiling_for_linuxbsd.html -/development/compiling/compiling_for_macos.html,/contributing/development/compiling/compiling_for_macos.html -/development/compiling/compiling_for_uwp.html,/contributing/development/compiling/compiling_for_uwp.html -/development/compiling/compiling_for_web.html,/contributing/development/compiling/compiling_for_web.html -/development/compiling/compiling_for_windows.html,/contributing/development/compiling/compiling_for_windows.html -/development/compiling/compiling_for_x11.html,/contributing/development/compiling/compiling_for_linuxbsd.html -/development/compiling/compiling_with_mono.html,/contributing/development/compiling/compiling_with_mono.html -/development/compiling/compiling_with_script_encryption_key.html,/contributing/development/compiling/compiling_with_script_encryption_key.html -/development/compiling/cross-compiling_for_ios_on_linux.html,/contributing/development/compiling/cross-compiling_for_ios_on_linux.html -/development/compiling/getting_source.html,/contributing/development/compiling/getting_source.html -/development/compiling/index.html,/contributing/development/compiling/index.html -/development/compiling/introduction_to_the_buildsystem.html,/contributing/development/compiling/introduction_to_the_buildsystem.html -/development/compiling/optimizing_for_size.html,/contributing/development/compiling/optimizing_for_size.html +/contributing/development/compiling/compiling_with_mono.html,/engine_details/development/compiling/compiling_with_dotnet.html +/contributing/development/core_and_modules/introduction_to_godot_development.html,/engine_details/development/core_and_modules/index.html +/development/compiling/compiling_for_android.html,/engine_details/development/compiling/compiling_for_android.html +/development/compiling/compiling_for_ios.html,/engine_details/development/compiling/compiling_for_ios.html +/development/compiling/compiling_for_linuxbsd.html,/engine_details/development/compiling/compiling_for_linuxbsd.html +/development/compiling/compiling_for_macos.html,/engine_details/development/compiling/compiling_for_macos.html +/development/compiling/compiling_for_uwp.html,/engine_details/development/compiling/compiling_for_uwp.html +/development/compiling/compiling_for_web.html,/engine_details/development/compiling/compiling_for_web.html +/development/compiling/compiling_for_windows.html,/engine_details/development/compiling/compiling_for_windows.html +/development/compiling/compiling_for_x11.html,/engine_details/development/compiling/compiling_for_linuxbsd.html +/development/compiling/compiling_with_mono.html,/engine_details/development/compiling/compiling_with_mono.html +/development/compiling/compiling_with_script_encryption_key.html,/engine_details/development/compiling/compiling_with_script_encryption_key.html +/development/compiling/cross-compiling_for_ios_on_linux.html,/engine_details/development/compiling/cross-compiling_for_ios_on_linux.html +/development/compiling/getting_source.html,/engine_details/development/compiling/getting_source.html +/development/compiling/index.html,/engine_details/development/compiling/index.html +/development/compiling/introduction_to_the_buildsystem.html,/engine_details/development/compiling/introduction_to_the_buildsystem.html +/development/compiling/optimizing_for_size.html,/engine_details/development/compiling/optimizing_for_size.html /development/consoles/consoles.html,/tutorials/platform/consoles.html -/development/cpp/binding_to_external_libraries.html,/contributing/development/core_and_modules/binding_to_external_libraries.html -/development/cpp/common_engine_methods_and_macros.html,/contributing/development/core_and_modules/common_engine_methods_and_macros.html -/development/cpp/configuring_an_ide/android_studio.html,/contributing/development/configuring_an_ide/android_studio.html -/development/cpp/configuring_an_ide/clion.html,/contributing/development/configuring_an_ide/clion.html -/development/cpp/configuring_an_ide/code_blocks.html,/contributing/development/configuring_an_ide/code_blocks.html -/development/cpp/configuring_an_ide/index.html,/contributing/development/configuring_an_ide/index.html -/development/cpp/configuring_an_ide/kdevelop.html,/contributing/development/configuring_an_ide/kdevelop.html -/development/cpp/configuring_an_ide/qt_creator.html,/contributing/development/configuring_an_ide/qt_creator.html -/development/cpp/configuring_an_ide/visual_studio.html,/contributing/development/configuring_an_ide/visual_studio.html -/development/cpp/configuring_an_ide/visual_studio_code.html,/contributing/development/configuring_an_ide/visual_studio_code.html -/development/cpp/configuring_an_ide/xcode.html,/contributing/development/configuring_an_ide/xcode.html -/development/cpp/core_types.html,/contributing/development/core_and_modules/core_types.html -/development/cpp/custom_audiostreams.html,/contributing/development/core_and_modules/custom_audiostreams.html -/development/cpp/custom_godot_servers.html,/contributing/development/core_and_modules/custom_godot_servers.html -/development/cpp/custom_modules_in_cpp.html,/contributing/development/core_and_modules/custom_modules_in_cpp.html -/development/cpp/custom_resource_format_loaders.html,/contributing/development/core_and_modules/custom_resource_format_loaders.html -/development/cpp/index.html,/contributing/development/core_and_modules/index.html -/development/cpp/inheritance_class_tree.html,/contributing/development/core_and_modules/inheritance_class_tree.html -/development/cpp/introduction_to_godot_development.html,/contributing/development/core_and_modules/introduction_to_godot_development.html -/development/cpp/macos_debug.html,/contributing/development/debugging/macos_debug.html -/development/cpp/object_class.html,/contributing/development/core_and_modules/object_class.html -/development/cpp/unit_testing.html,/contributing/development/core_and_modules/unit_testing.html -/development/cpp/using_cpp_profilers.html,/contributing/development/debugging/using_cpp_profilers.html -/development/cpp/variant_class.html,/contributing/development/core_and_modules/variant_class.html -/development/cpp/vulkan/index.html,/contributing/development/debugging/vulkan/index.html -/development/cpp/vulkan/vulkan_validation_layers.html,/contributing/development/debugging/vulkan/vulkan_validation_layers.html -/development/editor/creating_icons.html,/contributing/development/editor/creating_icons.html -/development/editor/editor_style_guide.html,/contributing/development/editor/editor_style_guide.html -/development/editor/index.html,/contributing/development/editor/index.html -/development/editor/introduction_to_editor_development.html,/contributing/development/editor/introduction_to_editor_development.html -/development/file_formats/gdscript_grammar.html,/contributing/development/file_formats/gdscript_grammar.html -/development/file_formats/index.html,/contributing/development/file_formats/index.html -/development/file_formats/tscn.html,/contributing/development/file_formats/tscn.html +/development/cpp/binding_to_external_libraries.html,/engine_details/development/core_and_modules/binding_to_external_libraries.html +/development/cpp/common_engine_methods_and_macros.html,/engine_details/development/core_and_modules/common_engine_methods_and_macros.html +/development/cpp/configuring_an_ide/android_studio.html,/engine_details/development/configuring_an_ide/android_studio.html +/development/cpp/configuring_an_ide/clion.html,/engine_details/development/configuring_an_ide/clion.html +/development/cpp/configuring_an_ide/code_blocks.html,/engine_details/development/configuring_an_ide/code_blocks.html +/development/cpp/configuring_an_ide/index.html,/engine_details/development/configuring_an_ide/index.html +/development/cpp/configuring_an_ide/kdevelop.html,/engine_details/development/configuring_an_ide/kdevelop.html +/development/cpp/configuring_an_ide/qt_creator.html,/engine_details/development/configuring_an_ide/qt_creator.html +/development/cpp/configuring_an_ide/visual_studio.html,/engine_details/development/configuring_an_ide/visual_studio.html +/development/cpp/configuring_an_ide/visual_studio_code.html,/engine_details/development/configuring_an_ide/visual_studio_code.html +/development/cpp/configuring_an_ide/xcode.html,/engine_details/development/configuring_an_ide/xcode.html +/development/cpp/core_types.html,/engine_details/development/core_and_modules/core_types.html +/development/cpp/custom_audiostreams.html,/engine_details/development/core_and_modules/custom_audiostreams.html +/development/cpp/custom_godot_servers.html,/engine_details/development/core_and_modules/custom_godot_servers.html +/development/cpp/custom_modules_in_cpp.html,/engine_details/development/core_and_modules/custom_modules_in_cpp.html +/development/cpp/custom_resource_format_loaders.html,/engine_details/development/core_and_modules/custom_resource_format_loaders.html +/development/cpp/index.html,/engine_details/development/core_and_modules/index.html +/development/cpp/inheritance_class_tree.html,/engine_details/development/core_and_modules/inheritance_class_tree.html +/development/cpp/introduction_to_godot_development.html,/engine_details/development/core_and_modules/introduction_to_godot_development.html +/development/cpp/macos_debug.html,/engine_details/development/debugging/macos_debug.html +/development/cpp/object_class.html,/engine_details/development/core_and_modules/object_class.html +/development/cpp/unit_testing.html,/engine_details/development/core_and_modules/unit_testing.html +/development/cpp/using_cpp_profilers.html,/engine_details/development/debugging/using_cpp_profilers.html +/development/cpp/variant_class.html,/engine_details/development/core_and_modules/variant_class.html +/development/cpp/vulkan/index.html,/engine_details/development/debugging/vulkan/index.html +/development/cpp/vulkan/vulkan_validation_layers.html,/engine_details/development/debugging/vulkan/vulkan_validation_layers.html +/development/editor/creating_icons.html,/engine_details/editor/creating_icons.html +/development/editor/index.html,/engine_details/editor/index.html +/development/editor/introduction_to_editor_development.html,/engine_details/editor/introduction_to_editor_development.html +/development/file_formats/gdscript_grammar.html,/engine_details/development/file_formats/gdscript_grammar.html +/development/file_formats/index.html,/engine_details/development/file_formats/index.html +/development/file_formats/tscn.html,/engine_details/development/file_formats/tscn.html /development/plugins/import_plugins.html,/tutorials/plugins/editor/import_plugins.html /development/plugins/index.html,/tutorials/plugins/editor/index.html /development/plugins/making_plugins.html,/tutorials/plugins/editor/making_plugins.html @@ -399,8 +378,9 @@ source,destination /tutorials/plugins/gdnative/gdnative-c-example.html,/tutorials/scripting/gdnative/gdnative_c_example.html /tutorials/plugins/gdnative/gdnative-cpp-example.html,/tutorials/scripting/gdnative/gdnative_cpp_example.html /tutorials/plugins/gdnative/index.html,/tutorials/scripting/gdnative/index.html -/tutorials/scripting/gdnative/gdnative_c_example.html,/tutorials/plugins/gdextension/gdextension_cpp_example.html -/tutorials/scripting/gdnative/gdnative_cpp_example.html,/tutorials/plugins/gdextension/gdextension_cpp_example.html +/tutorials/plugins/gdextension/gdextension_cpp_example.html,/tutorials/plugins/cpp/gdextension_cpp_example.html +/tutorials/scripting/gdnative/gdnative_c_example.html,/tutorials/plugins/cpp/gdextension_cpp_example.html +/tutorials/scripting/gdnative/gdnative_cpp_example.html,/tutorials/plugins/cpp/gdextension_cpp_example.html /tutorials/scripting/gdnative/index.html,/tutorials/scripting/gdextension/index.html /tutorials/scripting/gdnative/what_is_gdnative.html,/tutorials/scripting/gdnative/what_is_gdextension.html /tutorials/shading/advanced_postprocessing.html,/tutorials/shaders/advanced_postprocessing.html diff --git a/_tools/redirects/requirements.txt b/_tools/redirects/requirements.txt index e8bee6fe6..987545961 100644 --- a/_tools/redirects/requirements.txt +++ b/_tools/redirects/requirements.txt @@ -1,2 +1,2 @@ python-dotenv==0.18.0 -requests==2.32.0 +requests==2.32.4 diff --git a/about/complying_with_licenses.rst b/about/complying_with_licenses.rst index b0f6cb977..0ce3a63d3 100644 --- a/about/complying_with_licenses.rst +++ b/about/complying_with_licenses.rst @@ -27,7 +27,7 @@ with the original one. This section covers compliance with licenses from a user perspective. If you are interested in licence compliance as a contributor, you can find - guidelines :ref:`here `. + guidelines `here `__. .. tip:: @@ -42,7 +42,9 @@ Requirements In the case of the MIT license, the only requirement is to include the license text somewhere in your game or derivative project. -This text reads as follows:: +This text reads as follows: + +:: This game uses Godot Engine, available under the following license: diff --git a/about/docs_changelog.rst b/about/docs_changelog.rst index 2ff6a8b31..4497b294f 100644 --- a/about/docs_changelog.rst +++ b/about/docs_changelog.rst @@ -78,13 +78,12 @@ Contributing ~~~~~~~~~~~~ - :ref:`doc_handling_compatibility_breakages` -- :ref:`doc_ways_to_contribute` GDExtension ~~~~~~~~~~~ - :ref:`doc_gdextension_file` -- :ref:`doc_gdextension_docs_system` +- :ref:`doc_godot_cpp_docs_system` Migrating ~~~~~~~~~ @@ -215,11 +214,6 @@ Shaders - :ref:`doc_compute_shaders` -Workflow -~~~~~~~~ - -- :ref:`doc_pr_review_guidelines` - XR ~~ @@ -253,11 +247,6 @@ Editor New pages since version 3.3 --------------------------- -C++ -~~~ - -- :ref:`doc_cpp_usage_guidelines` - GDScript ~~~~~~~~ @@ -283,19 +272,10 @@ Best practices - :ref:`doc_version_control_systems` -Community -~~~~~~~~~ - -- :ref:`doc_best_practices_for_engine_contributors` -- :ref:`doc_bisecting_regressions` -- :ref:`doc_editor_and_docs_localization` - Development ~~~~~~~~~~~ -- :ref:`doc_introduction_to_editor_development` -- :ref:`doc_editor_style_guide` -- :ref:`doc_common_engine_methods_and_macros` +- :ref:`doc_common_engine_methods_and_macros_error_macros` - :ref:`doc_vulkan_validation_layers` - :ref:`doc_gdscript_grammar` - Configuring an IDE: :ref:`doc_configuring_an_ide_code_blocks` diff --git a/about/faq.rst b/about/faq.rst index 8f6ff66cb..1b8a76a3a 100644 --- a/about/faq.rst +++ b/about/faq.rst @@ -448,7 +448,7 @@ compile the engine from sources, or how to build the documentation. You also nee get familiar with Git, a version control system that Godot developers use. We explain how to work with the engine source, how to edit the documentation, and -what other ways to contribute are there in our :ref:`documentation for contributors `. +what other ways to contribute are there in our `documentation for contributors `__. I have a great idea for Godot. How can I share it? -------------------------------------------------- @@ -579,6 +579,8 @@ general-purpose library, but we had special requirements for Godot. * We use our custom String type, as the one provided by STL is too basic and lacks proper internationalization support. +Check out :ref:`Godot's container types ` for alternatives. + Why does Godot not use exceptions? ---------------------------------- @@ -627,7 +629,7 @@ for the rest of the game. How can I support Godot development or contribute? -------------------------------------------------- -See :ref:`doc_ways_to_contribute`. +See `How to contribute `__. Who is working on Godot? How can I contact you? ----------------------------------------------- diff --git a/about/introduction.rst b/about/introduction.rst index 20c188474..06454b207 100644 --- a/about/introduction.rst +++ b/about/introduction.rst @@ -77,11 +77,8 @@ This documentation is organized into several sections: if you're new!** - The **Manual** can be read or referenced as needed, in any order. It contains feature-specific tutorials and documentation. -- **Contributing** gives information related to contributing to - Godot, whether to the core engine, documentation, demos or other parts. - It describes how to report bugs, how contributor workflows are organized, etc. - It also contains sections intended for advanced users and contributors, - with information on compiling the engine, contributing to the editor, +- **Engine details** contains sections intended for advanced users and contributors, + with information on compiling the engine, working on the editor, or developing C++ modules. - **Community** is dedicated to the life of Godot's community and contains a list of recommended third-party tutorials and materials outside of this documentation. @@ -100,8 +97,8 @@ About this documentation Members of the Godot Engine community continuously write, correct, edit, and improve this documentation. We are always looking for more help. You can also contribute by opening Github issues or translating the documentation into your language. -If you are interested in helping, see :ref:`Ways to contribute ` -and :ref:`Writing documentation `, +If you are interested in helping, see `How to contribute `__ +and `Writing documentation `__, or get in touch with the `Documentation team `_ on `Godot Contributors Chat `_. diff --git a/about/list_of_features.rst b/about/list_of_features.rst index dfcedbdb6..b3fcee157 100644 --- a/about/list_of_features.rst +++ b/about/list_of_features.rst @@ -36,6 +36,13 @@ Platforms - :ref:`Web browsers `. Experimental in 4.0, using Godot 3.x is recommended instead when targeting HTML5. +.. note:: + + Linux supports rv64 (RISC-V), ppc64 & ppc32 (PowerPC), and loongarch64. However + you must compile the editor for that platform (as well as export templates) + yourself, no official downloads are currently provided. RISC-V compiling + instructions can be found on the :ref:`doc_compiling_for_linuxbsd` page. + **Runs exported projects:** - iOS. @@ -346,7 +353,7 @@ See :ref:`doc_renderers` for a detailed comparison of the rendering methods. **Post-processing:** -- Tonemapping (Linear, Reinhard, Filmic, ACES). +- Tonemapping (Linear, Reinhard, Filmic, ACES, AgX). - Automatic exposure adjustments based on viewport brightness (and manual exposure override). - Near and far depth of field with adjustable bokeh simulation (box, hexagon, circle). - Screen-space ambient occlusion (SSAO) at half or full resolution. @@ -645,6 +652,8 @@ Mobile and :ref:`iOS `. - Support for advertisements using third-party modules. +.. _doc_xr_support: + XR support (AR and VR) ---------------------- @@ -656,6 +665,11 @@ XR support (AR and VR) - Including support for popular stand alone headsets like the Meta Quest 1/2/3 and Pro, Pico 4, Magic Leap 2, and Lynx R1. +- Out of the box limited support for visionOS Apple headsets. + + - Currently only exporting an application for use on a flat plane within the + headset is supported. Immersive experiences are not supported. + - Other devices supported through an XR plugin structure. - Various advanced toolkits are available that implement common features required by XR applications. @@ -774,7 +788,7 @@ Miscellaneous - Licensed under the permissive MIT license. - - Open development process with :ref:`contributions welcome `. + - Open development process with `contributions welcome `__. .. seealso:: diff --git a/about/system_requirements.rst b/about/system_requirements.rst index 673840dc1..2a095eaf1 100644 --- a/about/system_requirements.rst +++ b/about/system_requirements.rst @@ -23,25 +23,26 @@ Desktop or laptop PC - Minimum .. which can run up to macOS 10.13. +----------------------+-----------------------------------------------------------------------------------------+ -| **CPU** | - **Windows:** x86_32 CPU with SSE2 instructions, x86_64 CPU, ARMv8 CPU | +| **CPU** | - **Windows:** x86_32 CPU with SSE2 support, x86_64 CPU with SSE4.2 support, ARMv8 CPU | | | | -| | - *Example: Intel Core 2 Duo E8200, AMD Athlon XE BE-2300, Snapdragon X Elite* | +| | - *Example: Intel Core 2 Duo E8200, AMD FX-4100, Snapdragon X Elite* | | | | | | - **macOS:** x86_64 or ARM CPU (Apple Silicon) | | | | | | - *Example: Intel Core 2 Duo SU9400, Apple M1* | | | | -| | - **Linux:** x86_32 CPU with SSE2 instructions, x86_64 CPU, ARMv7 or ARMv8 CPU | +| | - **Linux:** x86_32 CPU with SSE2 support, x86_64 CPU with SSE4.2 support, ARMv7 or | +| | ARMv8 CPU | | | | -| | - *Example: Intel Core 2 Duo E8200, AMD Athlon XE BE-2300, Raspberry Pi 4* | +| | - *Example: Intel Core 2 Duo E8200, AMD FX-4100, Raspberry Pi 4* | +----------------------+-----------------------------------------------------------------------------------------+ | **GPU** | - **Forward+ renderer:** Integrated graphics with full Vulkan 1.0 support | | | | -| | - *Example: Intel HD Graphics 5500 (Broadwell), AMD Radeon R5 Graphics (Kaveri)* | +| | - *Example: Intel HD Graphics 510 (Skylake), AMD Radeon R5 Graphics (Kaveri)* | | | | | | - **Mobile renderer:** Integrated graphics with full Vulkan 1.0 support | | | | -| | - *Example: Intel HD Graphics 5500 (Broadwell), AMD Radeon R5 Graphics (Kaveri)* | +| | - *Example: Intel HD Graphics 510 (Skylake), AMD Radeon R5 Graphics (Kaveri)* | | | | | | - **Compatibility renderer:** Integrated graphics with full OpenGL 3.3 support | | | | @@ -54,22 +55,22 @@ Desktop or laptop PC - Minimum | | Exporting projects requires downloading export templates separately | | | (1.3 GB after installation). | +----------------------+-----------------------------------------------------------------------------------------+ -| **Operating system** | - **Native editor:** Windows 7, macOS 10.13 (Compatibility) or | -| | macOS 10.15 (Forward+/Mobile), Linux distribution released after 2016 | -| | - **Web editor:** Firefox 79, Chrome 68, Edge 79, Safari 15.2, Opera 64 | +| **Operating system** | - **Native editor:** Windows 10, macOS 10.13 (Compatibility) or | +| | macOS 10.15 (Forward+/Mobile), Linux distribution released after 2018 | +| | - **Web editor:** Recent versions of mainstream browsers: Firefox and derivatives | +| | (including ESR), Chrome and Chromium derivatives, Safari and WebKit derivatives. | +----------------------+-----------------------------------------------------------------------------------------+ .. note:: - Windows 7/8/8.1 are supported on a best-effort basis. These versions are not - regularly tested and some features may be missing (such as colored - :ref:`print_rich ` console output). - Support for Windows 7/8/8.1 may be removed in a - :ref:`future Godot 4.x release `. + If your x86_64 CPU does not support SSE4.2, you can still run the 32-bit Godot + executable which only has a SSE2 requirement (all x86_64 CPUs support SSE2). - Vulkan drivers for these Windows versions are known to have issues with - memory leaks. As a result, it's recommended to stick to the Compatibility - renderer when running Godot on a Windows version older than 10. + While supported on Linux, we have no official minimum requirements for running on + rv64 (RISC-V), ppc64 & ppc32 (PowerPC), and loongarch64. In addition you must + compile the editor for that platform (as well as export templates) yourself, + no official downloads are currently provided. RISC-V compiling instructions can + be found on the :ref:`doc_compiling_for_linuxbsd` page. Mobile device (smartphone/tablet) - Minimum ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ @@ -101,8 +102,8 @@ Mobile device (smartphone/tablet) - Minimum | | (1.3 GB after installation) | +----------------------+-----------------------------------------------------------------------------------------+ | **Operating system** | - **Native editor:** Android 6.0 (Compatibility) or Android 9.0 (Forward+/Mobile) | -| | - **Web editor:** Firefox 79, Chrome 88, Edge 79, Safari 15.2, Opera 64, | -| | Samsung Internet 15 | +| | - **Web editor:** Recent versions of mainstream browsers: Firefox and derivatives | +| | (including ESR), Chrome and Chromium derivatives, Safari and WebKit derivatives. | +----------------------+-----------------------------------------------------------------------------------------+ These are the **recommended** specifications to get a smooth experience with the @@ -112,7 +113,7 @@ Desktop or laptop PC - Recommended ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +----------------------+---------------------------------------------------------------------------------------------+ -| **CPU** | - **Windows:** x86_64 CPU with SSE4.2 instructions, with 4 physical cores or more, ARMv8 CPU| +| **CPU** | - **Windows:** x86_64 CPU with SSE4.2 support, with 4 physical cores or more, ARMv8 CPU | | | | | | - *Example: Intel Core i5-6600K, AMD Ryzen 5 1600, Snapdragon X Elite* | | | | @@ -120,7 +121,7 @@ Desktop or laptop PC - Recommended | | | | | - *Example: Intel Core i5-8500, Apple M1* | | | | -| | - **Linux:** x86_32 CPU with SSE2 instructions, x86_64 CPU, ARMv7 or ARMv8 CPU | +| | - **Linux:** x86_64 CPU with SSE4.2 support, ARMv7 or ARMv8 CPU | | | | | | - *Example: Intel Core i5-6600K, AMD Ryzen 5 1600, Raspberry Pi 5 with overclocking* | +----------------------+---------------------------------------------------------------------------------------------+ @@ -207,27 +208,29 @@ Desktop or laptop PC - Minimum .. which can run up to macOS 10.13. +----------------------+-----------------------------------------------------------------------------------------+ -| **CPU** | - **Windows:** x86_32 CPU with SSE2 instructions, any x86_64 CPU, ARMv8 CPU | +| **CPU** | - **Windows:** x86_32 CPU with SSE2 support, x86_64 CPU with SSE4.2 support, | +| | ARMv8 CPU | | | | -| | - *Example: Intel Core 2 Duo E8200, AMD Athlon XE BE-2300, Snapdragon X Elite* | +| | - *Example: Intel Core 2 Duo E8200, AMD FX-4100, Snapdragon X Elite* | | | | | | - **macOS:** x86_64 or ARM CPU (Apple Silicon) | | | | | | - *Example: Intel Core 2 Duo SU9400, Apple M1* | | | | -| | - **Linux:** x86_32 CPU with SSE2 instructions, x86_64 CPU, ARMv7 or ARMv8 CPU | +| | - **Linux:** x86_32 CPU with SSE2 support, x86_64 CPU with SSE4.2 support, | +| | ARMv7 or ARMv8 CPU | | | | -| | - *Example: Intel Core 2 Duo E8200, AMD Athlon XE BE-2300, Raspberry Pi 4* | +| | - *Example: Intel Core 2 Duo E8200, AMD FX-4100, Raspberry Pi 4* | +----------------------+-----------------------------------------------------------------------------------------+ | **GPU** | - **Forward+ renderer:** Integrated graphics with full Vulkan 1.0 support, | | | Metal 3 support (macOS) or Direct3D 12 (12_0 feature level) support (Windows) | | | | -| | - *Example: Intel HD Graphics 5500 (Broadwell), AMD Radeon R5 Graphics (Kaveri)* | +| | - *Example: Intel HD Graphics 510 (Skylake), AMD Radeon R5 Graphics (Kaveri)* | | | | | | - **Mobile renderer:** Integrated graphics with full Vulkan 1.0 support, | | | Metal 3 support (macOS) or Direct3D 12 (12_0 feature level) support (Windows) | | | | -| | - *Example: Intel HD Graphics 5500 (Broadwell), AMD Radeon R5 Graphics (Kaveri)* | +| | - *Example: Intel HD Graphics 510 (Skylake), AMD Radeon R5 Graphics (Kaveri)* | | | | | | - **Compatibility renderer:** Integrated graphics with full OpenGL 3.3 support | | | or Direct3D 11 support (Windows). | @@ -239,25 +242,13 @@ Desktop or laptop PC - Minimum +----------------------+-----------------------------------------------------------------------------------------+ | **Storage** | 150 MB (used for the executable, project files and cache) | +----------------------+-----------------------------------------------------------------------------------------+ -| **Operating system** | - **For native exports:** Windows 7 (Compatibility and Forward+/Mobile, Vulkan), | -| | Windows 10 (Forward+/Mobile, Direct3D 12), macOS 10.13 (Compatibility), macOS 10.15 | +| **Operating system** | - **For native exports:** Windows 10, macOS 10.13 (Compatibility), macOS 10.15 | | | (Forward+/Mobile, Vulkan), macOS 13.0 (Forward+/Mobile, Metal), Linux distribution | -| | released after 2016 | -| | - **For web exports:** Firefox 79, Chrome 68, Edge 79, Safari 15.2, Opera 64 | +| | released after 2018 | +| | - **Web editor:** Recent versions of mainstream browsers: Firefox and derivatives | +| | (including ESR), Chrome and Chromium derivatives, Safari and WebKit derivatives. | +----------------------+-----------------------------------------------------------------------------------------+ -.. note:: - - Windows 7/8/8.1 are supported on a best-effort basis. These versions are not - regularly tested and some features may be missing (such as colored - :ref:`print_rich ` console output). - Support for Windows 7/8/8.1 may be removed in a - :ref:`future Godot 4.x release `. - - Vulkan drivers for these Windows versions are known to have issues with - memory leaks. As a result, it's recommended to stick to the Compatibility - renderer when running Godot on a Windows version older than 10. - Mobile device (smartphone/tablet) - Minimum ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ @@ -293,8 +284,8 @@ Mobile device (smartphone/tablet) - Minimum +----------------------+-----------------------------------------------------------------------------------------+ | **Operating system** | - **For native exports:** Android 6.0 (Compatibility), Android 9.0 (Forward+/Mobile), | | | iOS 12.0 (Forward+/Mobile, Vulkan), iOS 16.0 (Forward+/Mobile, Metal) | -| | - **For web exports:** Firefox 79, Chrome 88, Edge 79, Safari 15.2, Opera 64, | -| | Samsung Internet 15 | +| | - **Web editor:** Recent versions of mainstream browsers: Firefox and derivatives | +| | (including ESR), Chrome and Chromium derivatives, Safari and WebKit derivatives. | +----------------------+-----------------------------------------------------------------------------------------+ These are the **recommended** specifications to get a smooth experience with a @@ -304,7 +295,7 @@ Desktop or laptop PC - Recommended ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +----------------------+----------------------------------------------------------------------------------------------+ -| **CPU** | - **Windows:** x86_64 CPU with SSE4.2 instructions, with 4 physical cores or more, ARMv8 CPU | +| **CPU** | - **Windows:** x86_64 CPU with SSE4.2 support, with 4 physical cores or more, ARMv8 CPU | | | | | | - *Example: Intel Core i5-6600K, AMD Ryzen 5 1600, Snapdragon X Elite* | | | | @@ -312,7 +303,8 @@ Desktop or laptop PC - Recommended | | | | | - *Example: Intel Core i5-8500, Apple M1* | | | | -| | - **Linux:** x86_32 CPU with SSE2 instructions, x86_64 CPU, ARMv7 or ARMv8 CPU | +| | - **Linux:** x86_64 CPU with SSE4.2 support, with 4 physical cores or more, | +| | ARMv7 or ARMv8 CPU | | | | | | - *Example: Intel Core i5-6600K, AMD Ryzen 5 1600, Raspberry Pi 5 with overclocking* | +----------------------+----------------------------------------------------------------------------------------------+ diff --git a/classes/class_@gdscript.rst b/classes/class_@gdscript.rst index 4f5e6008a..9491dcf8f 100644 --- a/classes/class_@gdscript.rst +++ b/classes/class_@gdscript.rst @@ -41,7 +41,7 @@ Methods +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`assert`\ (\ condition\: :ref:`bool`, message\: :ref:`String` = ""\ ) | +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`String` | :ref:`char`\ (\ char\: :ref:`int`\ ) | + | :ref:`String` | :ref:`char`\ (\ code\: :ref:`int`\ ) | +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`Variant` | :ref:`convert`\ (\ what\: :ref:`Variant`, type\: :ref:`Variant.Type`\ ) | +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ @@ -57,6 +57,8 @@ Methods +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`Resource` | :ref:`load`\ (\ path\: :ref:`String`\ ) | +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`ord`\ (\ char\: :ref:`String`\ ) | + +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`Resource` | :ref:`preload`\ (\ path\: :ref:`String`\ ) | +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`print_debug`\ (\ ...\ ) |vararg| | @@ -109,7 +111,9 @@ Positive floating-point infinity. This is the result of floating-point division **NAN** = ``nan`` :ref:`🔗` -"Not a Number", an invalid floating-point value. :ref:`NAN` has special properties, including that ``!=`` always returns ``true``, while other comparison operators always return ``false``. This is true even when comparing with itself (``NAN == NAN`` returns ``false`` and ``NAN != NAN`` returns ``true``). It is returned by some invalid operations, such as dividing floating-point ``0.0`` by ``0.0``. +"Not a Number", an invalid floating-point value. It is returned by some invalid operations, such as dividing floating-point ``0.0`` by ``0.0``. + +\ :ref:`NAN` has special properties, including that ``!=`` always returns ``true``, while other comparison operators always return ``false``. This is true even when comparing with itself (``NAN == NAN`` returns ``false`` and ``NAN != NAN`` returns ``true``). Due to this, you must use :ref:`@GlobalScope.is_nan()` to check whether a number is equal to :ref:`NAN`. \ **Warning:** "Not a Number" is only a concept with floating-point numbers, and has no equivalent for integers. Dividing an integer ``0`` by ``0`` will not result in :ref:`NAN` and will result in a run-time error instead. @@ -120,6 +124,37 @@ Positive floating-point infinity. This is the result of floating-point division Annotations ----------- +.. _class_@GDScript_annotation_@abstract: + +.. rst-class:: classref-annotation + +**@abstract**\ (\ ) :ref:`🔗` + +Marks a class or a method as abstract. + +An abstract class is a class that cannot be instantiated directly. Instead, it is meant to be inherited by other classes. Attempting to instantiate an abstract class will result in an error. + +An abstract method is a method that has no implementation. Therefore, a newline or a semicolon is expected after the function header. This defines a contract that inheriting classes must conform to, because the method signature must be compatible when overriding. + +Inheriting classes must either provide implementations for all abstract methods, or the inheriting class must be marked as abstract. If a class has at least one abstract method (either its own or an unimplemented inherited one), then it must also be marked as abstract. However, the reverse is not true: an abstract class is allowed to have no abstract methods. + +:: + + @abstract class Shape: + @abstract func draw() + + class Circle extends Shape: + func draw(): + print("Drawing a circle.") + + class Square extends Shape: + func draw(): + print("Drawing a square.") + +.. rst-class:: classref-item-separator + +---- + .. _class_@GDScript_annotation_@export: .. rst-class:: classref-annotation @@ -131,27 +166,27 @@ Mark the following property as exported (editable in the Inspector dock and save :: extends Node - + enum Direction {LEFT, RIGHT, UP, DOWN} - + # Built-in types. @export var string = "" @export var int_number = 5 @export var float_number: float = 5 - + # Enums. @export var type: Variant.Type @export var format: Image.Format @export var direction: Direction - + # Resources. @export var image: Image @export var custom_resource: CustomResource - + # Nodes. @export var node: Node @export var custom_node: CustomNode - + # Typed arrays. @export var int_array: Array[int] @export var direction_array: Array[Direction] @@ -259,7 +294,7 @@ See also :ref:`@GlobalScope.PROPERTY_HINT_ENUM` methods to convert it to path. + +.. rst-class:: classref-item-separator + +---- + +.. _class_@GDScript_annotation_@export_file_path: + +.. rst-class:: classref-annotation + +**@export_file_path**\ (\ filter\: :ref:`String` = "", ...\ ) |vararg| :ref:`🔗` + +Same as :ref:`@export_file`, except the file will be stored as a raw path. This means that it may become invalid when the file is moved. If you are exporting a :ref:`Resource` path, consider using :ref:`@export_file` instead. + .. rst-class:: classref-item-separator ---- @@ -564,11 +613,11 @@ See also :ref:`@GlobalScope.PROPERTY_USAGE_GROUP` cannot receive objects which define required parameters in :ref:`Object._init()`. See :ref:`Object._init()` for more details. + .. rst-class:: classref-item-separator ---- @@ -997,15 +1048,16 @@ An optional ``message`` can be shown in addition to the generic "Assertion faile .. rst-class:: classref-method -:ref:`String` **char**\ (\ char\: :ref:`int`\ ) :ref:`🔗` +:ref:`String` **char**\ (\ code\: :ref:`int`\ ) :ref:`🔗` -Returns a single character (as a :ref:`String`) of the given Unicode code point (which is compatible with ASCII code). +Returns a single character (as a :ref:`String` of length 1) of the given Unicode code point ``code``. :: - var upper = char(65) # upper is "A" - var lower = char(65 + 32) # lower is "a" - var euro = char(8364) # euro is "€" + print(char(65)) # Prints "A" + print(char(129302)) # Prints "🤖" (robot face emoji) + +This is the inverse of :ref:`ord()`. See also :ref:`String.chr()` and :ref:`String.unicode_at()`. .. rst-class:: classref-item-separator @@ -1025,7 +1077,7 @@ Converts ``what`` to ``type`` in the best way possible. The ``type`` uses the :r var a = [4, 2.5, 1.2] print(a is Array) # Prints true - + var b = convert(a, TYPE_PACKED_BYTE_ARRAY) print(b) # Prints [4, 2, 1] print(b is Array) # Prints false @@ -1054,16 +1106,16 @@ Converts a ``dictionary`` (created with :ref:`inst_to_dict()` **get_stack**\ (\ ) :ref:`🔗` -Returns an array of dictionaries representing the current call stack. See also :ref:`print_stack()`. +Returns an array of dictionaries representing the current call stack. :: func _ready(): foo() - + func foo(): bar() - + func bar(): print(get_stack()) @@ -1073,9 +1125,9 @@ Starting from ``_ready()``, ``bar()`` would print: [{function:bar, line:12, source:res://script.gd}, {function:foo, line:9, source:res://script.gd}, {function:_ready, line:6, source:res://script.gd}] -\ **Note:** This function only works if the running instance is connected to a debugging server (i.e. an editor instance). :ref:`get_stack()` will not work in projects exported in release mode, or in projects exported in debug mode if not connected to a debugging server. +See also :ref:`print_debug()`, :ref:`print_stack()`, and :ref:`Engine.capture_script_backtraces()`. -\ **Note:** Calling this function from a :ref:`Thread` is not supported. Doing so will return an empty array. +\ **Note:** By default, backtraces are only available in editor builds and debug builds. To enable them for release builds as well, you need to enable :ref:`ProjectSettings.debug/settings/gdscript/always_track_call_stacks`. .. rst-class:: classref-item-separator @@ -1089,7 +1141,7 @@ Starting from ``_ready()``, ``bar()`` would print: **Deprecated:** Consider using :ref:`JSON.from_native()` or :ref:`Object.get_property_list()` instead. -Returns the passed ``instance`` converted to a Dictionary. Can be useful for serializing. +Returns the passed ``instance`` converted to a :ref:`Dictionary`. Can be useful for serializing. :: @@ -1128,7 +1180,7 @@ Returns ``true`` if ``value`` is an instance of ``type``. The ``type`` value mus - A :ref:`Script` (you can use any class, including inner one). -Unlike the right operand of the ``is`` operator, ``type`` can be a non-constant value. The ``is`` operator supports more features (such as typed arrays). Use the operator instead of this method if you do not need dynamic type checking. +Unlike the right operand of the ``is`` operator, ``type`` can be a non-constant value. The ``is`` operator supports more features (such as typed arrays). Use the operator instead of this method if you do not need to check the type dynamically. \ **Examples:**\ @@ -1159,7 +1211,7 @@ Returns the length of the given Variant ``var``. The length can be the character var a = [1, 2, 3, 4] len(a) # Returns 4 - + var b = "Hello!" len(b) # Returns 6 @@ -1194,6 +1246,25 @@ This function is a simplified version of :ref:`ResourceLoader.load()` **ord**\ (\ char\: :ref:`String`\ ) :ref:`🔗` + +Returns an integer representing the Unicode code point of the given character ``char``, which should be a string of length 1. + +:: + + print(ord("A")) # Prints 65 + print(ord("🤖")) # Prints 129302 + +This is the inverse of :ref:`char()`. See also :ref:`String.chr()` and :ref:`String.unicode_at()`. + +.. rst-class:: classref-item-separator + +---- + .. _class_@GDScript_method_preload: .. rst-class:: classref-method @@ -1230,7 +1301,9 @@ The output in the console may look like the following: Test print At: res://test.gd:15:_process() -\ **Note:** Calling this function from a :ref:`Thread` is not supported. Doing so will instead print the thread ID. +See also :ref:`print_stack()`, :ref:`get_stack()`, and :ref:`Engine.capture_script_backtraces()`. + +\ **Note:** By default, backtraces are only available in editor builds and debug builds. To enable them for release builds as well, you need to enable :ref:`ProjectSettings.debug/settings/gdscript/always_track_call_stacks`. .. rst-class:: classref-item-separator @@ -1242,7 +1315,7 @@ The output in the console may look like the following: |void| **print_stack**\ (\ ) :ref:`🔗` -Prints a stack trace at the current code location. See also :ref:`get_stack()`. +Prints a stack trace at the current code location. The output in the console may look like the following: @@ -1250,9 +1323,9 @@ The output in the console may look like the following: Frame 0 - res://test.gd:16 in function '_process' -\ **Note:** This function only works if the running instance is connected to a debugging server (i.e. an editor instance). :ref:`print_stack()` will not work in projects exported in release mode, or in projects exported in debug mode if not connected to a debugging server. +See also :ref:`print_debug()`, :ref:`get_stack()`, and :ref:`Engine.capture_script_backtraces()`. -\ **Note:** Calling this function from a :ref:`Thread` is not supported. Doing so will instead print the thread ID. +\ **Note:** By default, backtraces are only available in editor builds and debug builds. To enable them for release builds as well, you need to enable :ref:`ProjectSettings.debug/settings/gdscript/always_track_call_stacks`. .. rst-class:: classref-item-separator @@ -1334,6 +1407,7 @@ Returns ``true`` if the given :ref:`Object`-derived class exists i type_exists("NonExistentClass") # Returns false .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_@globalscope.rst b/classes/class_@globalscope.rst index 97755bbea..37b822d4e 100644 --- a/classes/class_@globalscope.rst +++ b/classes/class_@globalscope.rst @@ -3052,7 +3052,7 @@ Since :ref:`OK` has value ``0``, and all other e var error = method_that_returns_error() if error != OK: printerr("Failure!") - + # Or, alternatively: if error: printerr("Still failing!") @@ -3587,7 +3587,7 @@ Hints that an integer property is a bitmask using the optionally named avoidance :ref:`PropertyHint` **PROPERTY_HINT_FILE** = ``13`` -Hints that a :ref:`String` property is a path to a file. Editing it will show a file dialog for picking the path. The hint string can be a set of filters with wildcards like ``"*.png,*.jpg"``. +Hints that a :ref:`String` property is a path to a file. Editing it will show a file dialog for picking the path. The hint string can be a set of filters with wildcards like ``"*.png,*.jpg"``. By default the file will be stored as UID whenever available. You can use :ref:`ResourceUID` methods to convert it back to path. For storing a raw path, use :ref:`PROPERTY_HINT_FILE_PATH`. .. _class_@GlobalScope_constant_PROPERTY_HINT_DIR: @@ -3671,6 +3671,8 @@ If a property is :ref:`String`, hints that the property represents If a property is :ref:`Array`, hints the editor how to show elements. The ``hint_string`` must encode nested types using ``":"`` and ``"/"``. +If a property is :ref:`Dictionary`, hints the editor how to show elements. The ``hint_string`` is the same as :ref:`Array`, with a ``";"`` separating the key and value. + .. tabs:: @@ -3713,7 +3715,7 @@ If a property is :ref:`Array`, hints the editor how to show element hint_string = "%d/%d:Zero,One,Three:3,Six:6" % [TYPE_INT, PROPERTY_HINT_ENUM] # Array of integers (an enum). hint_string = "%d/%d:*.png" % [TYPE_STRING, PROPERTY_HINT_FILE] # Array of strings (file paths). hint_string = "%d/%d:Texture2D" % [TYPE_OBJECT, PROPERTY_HINT_RESOURCE_TYPE] # Array of textures. - + hint_string = "%d:%d:" % [TYPE_ARRAY, TYPE_FLOAT] # Two-dimensional array of floats. hint_string = "%d:%d/%d:" % [TYPE_ARRAY, TYPE_STRING, PROPERTY_HINT_MULTILINE_TEXT] # Two-dimensional array of multiline strings. hint_string = "%d:%d/%d:-1,1,0.1" % [TYPE_ARRAY, TYPE_FLOAT, PROPERTY_HINT_RANGE] # Two-dimensional array of floats (in range from -1 to 1). @@ -3726,7 +3728,7 @@ If a property is :ref:`Array`, hints the editor how to show element hintString = $"{Variant.Type.Int:D}/{PropertyHint.Enum:D}:Zero,One,Three:3,Six:6"; // Array of integers (an enum). hintString = $"{Variant.Type.String:D}/{PropertyHint.File:D}:*.png"; // Array of strings (file paths). hintString = $"{Variant.Type.Object:D}/{PropertyHint.ResourceType:D}:Texture2D"; // Array of textures. - + hintString = $"{Variant.Type.Array:D}:{Variant.Type.Float:D}:"; // Two-dimensional array of floats. hintString = $"{Variant.Type.Array:D}:{Variant.Type.String:D}/{PropertyHint.MultilineText:D}:"; // Two-dimensional array of multiline strings. hintString = $"{Variant.Type.Array:D}:{Variant.Type.Float:D}/{PropertyHint.Range:D}:-1,1,0.1"; // Two-dimensional array of floats (in range from -1 to 1). @@ -3802,7 +3804,9 @@ Hints that an :ref:`int` property is a pointer. Used by GDExtension. :ref:`PropertyHint` **PROPERTY_HINT_ARRAY_TYPE** = ``31`` -Hints that a property is an :ref:`Array` with the stored type specified in the hint string. +Hints that a property is an :ref:`Array` with the stored type specified in the hint string. The hint string contains the type of the array (e.g. ``"String"``). + +Use the hint string format from :ref:`PROPERTY_HINT_TYPE_STRING` for more control over the stored type. .. _class_@GlobalScope_constant_PROPERTY_HINT_DICTIONARY_TYPE: @@ -3810,7 +3814,9 @@ Hints that a property is an :ref:`Array` with the stored type speci :ref:`PropertyHint` **PROPERTY_HINT_DICTIONARY_TYPE** = ``38`` -Hints that a property is a :ref:`Dictionary` with the stored types specified in the hint string. +Hints that a property is a :ref:`Dictionary` with the stored types specified in the hint string. The hint string contains the key and value types separated by a semicolon (e.g. ``"int;String"``). + +Use the hint string format from :ref:`PROPERTY_HINT_TYPE_STRING` for more control over the stored types. .. _class_@GlobalScope_constant_PROPERTY_HINT_LOCALE_ID: @@ -3875,11 +3881,41 @@ Hints that a :ref:`Callable` property should be displayed as a c Hints that a property will be changed on its own after setting, such as :ref:`AudioStreamPlayer.playing` or :ref:`GPUParticles3D.emitting`. +.. _class_@GlobalScope_constant_PROPERTY_HINT_GROUP_ENABLE: + +.. rst-class:: classref-enumeration-constant + +:ref:`PropertyHint` **PROPERTY_HINT_GROUP_ENABLE** = ``42`` + +Hints that a boolean property will enable the feature associated with the group that it occurs in. The property will be displayed as a checkbox on the group header. Only works within a group or subgroup. + +By default, disabling the property hides all properties in the group. Use the optional hint string ``"checkbox_only"`` to disable this behavior. + +.. _class_@GlobalScope_constant_PROPERTY_HINT_INPUT_NAME: + +.. rst-class:: classref-enumeration-constant + +:ref:`PropertyHint` **PROPERTY_HINT_INPUT_NAME** = ``43`` + +Hints that a :ref:`String` or :ref:`StringName` property is the name of an input action. This allows the selection of any action name from the Input Map in the Project Settings. The hint string may contain two options separated by commas: + +- If it contains ``"show_builtin"``, built-in input actions are included in the selection. + +- If it contains ``"loose_mode"``, loose mode is enabled. This allows inserting any action name even if it's not present in the input map. + +.. _class_@GlobalScope_constant_PROPERTY_HINT_FILE_PATH: + +.. rst-class:: classref-enumeration-constant + +:ref:`PropertyHint` **PROPERTY_HINT_FILE_PATH** = ``44`` + +Like :ref:`PROPERTY_HINT_FILE`, but the property is stored as a raw path, not UID. That means the reference will be broken if you move the file. Consider using :ref:`PROPERTY_HINT_FILE` when possible. + .. _class_@GlobalScope_constant_PROPERTY_HINT_MAX: .. rst-class:: classref-enumeration-constant -:ref:`PropertyHint` **PROPERTY_HINT_MAX** = ``42`` +:ref:`PropertyHint` **PROPERTY_HINT_MAX** = ``45`` Represents the size of the :ref:`PropertyHint` enum. @@ -4225,7 +4261,7 @@ Used internally. Allows to not dump core virtual methods (such as :ref:`Object._ :ref:`MethodFlags` **METHOD_FLAG_VIRTUAL_REQUIRED** = ``128`` -Flag for a virtual method that is required. +Flag for a virtual method that is required. In GDScript, this flag is set for abstract functions. .. _class_@GlobalScope_constant_METHOD_FLAGS_DEFAULT: @@ -5261,19 +5297,19 @@ Returns the absolute value of a :ref:`Variant` parameter ``x`` (i var a = abs(-1) # a is 1 - + var b = abs(-1.2) # b is 1.2 - + var c = abs(Vector2(-3.5, -4)) # c is (3.5, 4) - + var d = abs(Vector2i(-5, -6)) # d is (5, 6) - + var e = abs(Vector3(-7, 8.5, -3.8)) # e is (7, 8.5, 3.8) - + var f = abs(Vector3i(-7, -8, -9)) # f is (7, 8, 9) @@ -5346,7 +5382,7 @@ Returns the hyperbolic arc (also called inverse) cosine of ``x``, returning a va var a = acosh(2) # Returns 1.31695789692482 cosh(a) # Returns 2 - + var b = acosh(-1) # Returns 0 .. rst-class:: classref-item-separator @@ -5451,7 +5487,7 @@ In mathematics, the inverse hyperbolic tangent is only defined for -1 < ``x`` < var a = atanh(0.9) # Returns 1.47221948958322 tanh(a) # Returns 0.9 - + var b = atanh(-2) # Returns -inf tanh(b) # Returns -1 @@ -5572,7 +5608,7 @@ Clamps the ``value``, returning a :ref:`Variant` not less than `` var a = clamp(-10, -1, 5) # a is -1 - + var b = clamp(8.1, 0.9, 5.5) # b is 5.5 @@ -5596,7 +5632,7 @@ Clamps the ``value``, returning a :ref:`float` not less than ``min` var speed = 42.1 var a = clampf(speed, 1.0, 20.5) # a is 20.5 - + speed = -10.0 var b = clampf(speed, -1.0, 1.0) # b is -1.0 @@ -5616,7 +5652,7 @@ Clamps the ``value``, returning an :ref:`int` not less than ``min`` a var speed = 42 var a = clampi(speed, 1, 20) # a is 20 - + speed = -10 var b = clampi(speed, -1, 1) # b is -1 @@ -5943,7 +5979,7 @@ Returns the :ref:`Object` that corresponds to ``instance_id``. All .. code-tab:: gdscript var drink = "water" - + func _ready(): var id = get_instance_id() var instance = instance_from_id(id) @@ -5954,7 +5990,7 @@ Returns the :ref:`Object` that corresponds to ``instance_id``. All public partial class MyNode : Node { public string Drink { get; set; } = "water"; - + public override void _Ready() { ulong id = GetInstanceId(); @@ -5982,7 +6018,7 @@ Returns an interpolation or extrapolation factor considering the range specified # The interpolation ratio in the `lerp()` call below is 0.75. var middle = lerp(20, 30, 0.75) # middle is now 27.5. - + # Now, we pretend to have forgotten the original ratio and want to get it back. var ratio = inverse_lerp(20, 30, 27.5) # ratio is now 0.75. @@ -6015,7 +6051,7 @@ Infinity values of the same sign are considered equal. :ref:`bool` **is_finite**\ (\ x\: :ref:`float`\ ) :ref:`🔗` -Returns whether ``x`` is a finite value, i.e. it is not :ref:`@GDScript.NAN`, positive infinity, or negative infinity. +Returns whether ``x`` is a finite value, i.e. it is not :ref:`@GDScript.NAN`, positive infinity, or negative infinity. See also :ref:`is_inf()` and :ref:`is_nan()`. .. rst-class:: classref-item-separator @@ -6027,7 +6063,7 @@ Returns whether ``x`` is a finite value, i.e. it is not :ref:`@GDScript.NAN` **is_inf**\ (\ x\: :ref:`float`\ ) :ref:`🔗` -Returns ``true`` if ``x`` is either positive infinity or negative infinity. +Returns ``true`` if ``x`` is either positive infinity or negative infinity. See also :ref:`is_finite()` and :ref:`is_nan()`. .. rst-class:: classref-item-separator @@ -6063,7 +6099,7 @@ Returns ``true`` if ``instance`` is a valid Object (e.g. has not been deleted fr :ref:`bool` **is_nan**\ (\ x\: :ref:`float`\ ) :ref:`🔗` -Returns ``true`` if ``x`` is a NaN ("Not a Number" or invalid) value. +Returns ``true`` if ``x`` is a NaN ("Not a Number" or invalid) value. This method is needed as :ref:`@GDScript.NAN` is not equal to itself, which means ``x == NAN`` can't be used to check whether a value is a NaN. .. rst-class:: classref-item-separator @@ -6086,7 +6122,7 @@ Returns ``true``, for value types, if ``a`` and ``b`` share the same value. Retu is_same(vec2_a, vec2_a) # true is_same(vec2_a, vec2_b) # true is_same(vec2_a, vec2_c) # false - + # Array is a reference type var arr_a = [] var arr_b = [] @@ -6357,7 +6393,7 @@ Returns the smallest integer power of 2 that is greater than or equal to ``value nearest_po2(3) # Returns 4 nearest_po2(4) # Returns 4 nearest_po2(5) # Returns 8 - + nearest_po2(0) # Returns 0 (this may not be expected) nearest_po2(-1) # Returns 0 (this may not be expected) @@ -6500,8 +6536,6 @@ When printing to standard output, the supported subset of BBCode is converted to \ **Note:** Consider using :ref:`push_error()` and :ref:`push_warning()` to print error and warning messages instead of :ref:`print()` or :ref:`print_rich()`. This distinguishes them from print messages used for debugging purposes, while also displaying a stack trace when an error or warning is printed. -\ **Note:** On Windows, only Windows 10 and later correctly displays ANSI escape codes in standard output. - \ **Note:** Output displayed in the editor supports clickable ``[url=address]text[/url]`` tags. The ``[url]`` tag's ``address`` value is handled by :ref:`OS.shell_open()` when clicked. .. rst-class:: classref-item-separator @@ -6711,7 +6745,7 @@ Given a ``seed``, returns a :ref:`PackedInt64Array` of s :: var a = rand_from_seed(4) - + print(a[0]) # Prints 2879024997 print(a[1]) # Prints 4 @@ -7018,7 +7052,7 @@ Supported types: :ref:`int`, :ref:`float`, :ref:`Vector2 sign(0.0) # Returns 0 sign(6.0) # Returns 1 sign(NAN) # Returns 0 - + sign(Vector3(-6.0, 0.0, 6.0)) # Returns (-1, 0, 1) \ **Note:** For better type safety, use :ref:`signf()`, :ref:`signi()`, :ref:`Vector2.sign()`, :ref:`Vector2i.sign()`, :ref:`Vector3.sign()`, :ref:`Vector3i.sign()`, :ref:`Vector4.sign()`, or :ref:`Vector4i.sign()`. @@ -7143,7 +7177,7 @@ The returned value is the same type of :ref:`Variant` as ``step`` snapped(100, 32) # Returns 96 snapped(3.14159, 0.01) # Returns 3.14 - + snapped(Vector2(34, 70), Vector2(8, 8)) # Returns (32, 72) See also :ref:`ceil()`, :ref:`floor()`, and :ref:`round()`. @@ -7206,7 +7240,7 @@ Returns the square root of ``x``, where ``x`` is a non-negative number. sqrt(10.24) # Returns 3.2 sqrt(-1) # Returns NaN -\ **Note:** Negative values of ``x`` return NaN ("Not a Number"). in C#, if you need negative inputs, use ``System.Numerics.Complex``. +\ **Note:** Negative values of ``x`` return NaN ("Not a Number"). In C#, if you need negative inputs, use ``System.Numerics.Complex``. .. rst-class:: classref-item-separator @@ -7467,18 +7501,18 @@ A weak reference to an object is not enough to keep the object alive: when the o :ref:`Variant` **wrap**\ (\ value\: :ref:`Variant`, min\: :ref:`Variant`, max\: :ref:`Variant`\ ) :ref:`🔗` -Wraps the :ref:`Variant` ``value`` between ``min`` and ``max``. Can be used for creating loop-alike behavior or infinite surfaces. +Wraps the :ref:`Variant` ``value`` between ``min`` and ``max``. ``min`` is *inclusive* while ``max`` is *exclusive*. This can be used for creating loop-like behavior or infinite surfaces. -Variant types :ref:`int` and :ref:`float` are supported. If any of the arguments is :ref:`float` this function returns a :ref:`float`, otherwise it returns an :ref:`int`. +Variant types :ref:`int` and :ref:`float` are supported. If any of the arguments is :ref:`float`, this function returns a :ref:`float`, otherwise it returns an :ref:`int`. :: var a = wrap(4, 5, 10) # a is 9 (int) - + var a = wrap(7, 5, 10) # a is 7 (int) - + var a = wrap(10.5, 5, 10) # a is 5.5 (float) @@ -7492,7 +7526,7 @@ Variant types :ref:`int` and :ref:`float` are supported. :ref:`float` **wrapf**\ (\ value\: :ref:`float`, min\: :ref:`float`, max\: :ref:`float`\ ) :ref:`🔗` -Wraps the float ``value`` between ``min`` and ``max``. Can be used for creating loop-alike behavior or infinite surfaces. +Wraps the float ``value`` between ``min`` and ``max``. ``min`` is *inclusive* while ``max`` is *exclusive*. This can be used for creating loop-like behavior or infinite surfaces. :: @@ -7509,9 +7543,7 @@ Wraps the float ``value`` between ``min`` and ``max``. Can be used for creating # Infinite rotation (in radians) angle = wrapf(angle + 0.1, -PI, PI) -\ **Note:** If ``min`` is ``0``, this is equivalent to :ref:`fposmod()`, so prefer using that instead. - -\ :ref:`wrapf()` is more flexible than using the :ref:`fposmod()` approach by giving the user control over the minimum value. +\ **Note:** If ``min`` is ``0``, this is equivalent to :ref:`fposmod()`, so prefer using that instead. :ref:`wrapf()` is more flexible than using the :ref:`fposmod()` approach by giving the user control over the minimum value. .. rst-class:: classref-item-separator @@ -7523,7 +7555,7 @@ Wraps the float ``value`` between ``min`` and ``max``. Can be used for creating :ref:`int` **wrapi**\ (\ value\: :ref:`int`, min\: :ref:`int`, max\: :ref:`int`\ ) :ref:`🔗` -Wraps the integer ``value`` between ``min`` and ``max``. Can be used for creating loop-alike behavior or infinite surfaces. +Wraps the integer ``value`` between ``min`` and ``max``. ``min`` is *inclusive* while ``max`` is *exclusive*. This can be used for creating loop-like behavior or infinite surfaces. :: @@ -7536,6 +7568,7 @@ Wraps the integer ``value`` between ``min`` and ``max``. Can be used for creatin var result = wrapi(-6, -5, -1) .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_aabb.rst b/classes/class_aabb.rst index cff1cd256..e07be295a 100644 --- a/classes/class_aabb.rst +++ b/classes/class_aabb.rst @@ -23,7 +23,7 @@ It uses floating-point coordinates. The 2D counterpart to **AABB** is :ref:`Rect \ **Note:** Negative values for :ref:`size` are not supported. With negative size, most **AABB** methods do not work correctly. Use :ref:`abs()` to get an equivalent **AABB** with a non-negative size. -\ **Note:** In a boolean context, a **AABB** evaluates to ``false`` if both :ref:`position` and :ref:`size` are zero (equal to :ref:`Vector3.ZERO`). Otherwise, it always evaluates to ``true``. +\ **Note:** In a boolean context, an **AABB** evaluates to ``false`` if both :ref:`position` and :ref:`size` are zero (equal to :ref:`Vector3.ZERO`). Otherwise, it always evaluates to ``true``. .. note:: @@ -286,7 +286,7 @@ Returns ``true`` if this bounding box *completely* encloses the ``with`` box. Th var a = AABB(Vector3(0, 0, 0), Vector3(4, 4, 4)) var b = AABB(Vector3(1, 1, 1), Vector3(3, 3, 3)) var c = AABB(Vector3(2, 2, 2), Vector3(8, 8, 8)) - + print(a.encloses(a)) # Prints true print(a.encloses(b)) # Prints true print(a.encloses(c)) # Prints false @@ -296,7 +296,7 @@ Returns ``true`` if this bounding box *completely* encloses the ``with`` box. Th var a = new Aabb(new Vector3(0, 0, 0), new Vector3(4, 4, 4)); var b = new Aabb(new Vector3(1, 1, 1), new Vector3(3, 3, 3)); var c = new Aabb(new Vector3(2, 2, 2), new Vector3(8, 8, 8)); - + GD.Print(a.Encloses(a)); // Prints True GD.Print(a.Encloses(b)); // Prints True GD.Print(a.Encloses(c)); // Prints False @@ -321,11 +321,11 @@ Returns a copy of this bounding box expanded to align the edges with the given ` .. code-tab:: gdscript var box = AABB(Vector3(0, 0, 0), Vector3(5, 2, 5)) - + box = box.expand(Vector3(10, 0, 0)) print(box.position) # Prints (0.0, 0.0, 0.0) print(box.size) # Prints (10.0, 2.0, 5.0) - + box = box.expand(Vector3(-5, 0, 5)) print(box.position) # Prints (-5.0, 0.0, 0.0) print(box.size) # Prints (15.0, 2.0, 5.0) @@ -333,11 +333,11 @@ Returns a copy of this bounding box expanded to align the edges with the given ` .. code-tab:: csharp var box = new Aabb(new Vector3(0, 0, 0), new Vector3(5, 2, 5)); - + box = box.Expand(new Vector3(10, 0, 0)); GD.Print(box.Position); // Prints (0, 0, 0) GD.Print(box.Size); // Prints (10, 2, 5) - + box = box.Expand(new Vector3(-5, 0, 5)); GD.Print(box.Position); // Prints (-5, 0, 0) GD.Print(box.Size); // Prints (15, 2, 5) @@ -366,7 +366,7 @@ Returns the center point of the bounding box. This is the same as ``position + ( :ref:`Vector3` **get_endpoint**\ (\ idx\: :ref:`int`\ ) |const| :ref:`🔗` -Returns the position of one of the 8 vertices that compose this bounding box. With a ``idx`` of ``0`` this is the same as :ref:`position`, and a ``idx`` of ``7`` is the same as :ref:`end`. +Returns the position of one of the 8 vertices that compose this bounding box. With an ``idx`` of ``0`` this is the same as :ref:`position`, and an ``idx`` of ``7`` is the same as :ref:`end`. .. rst-class:: classref-item-separator @@ -386,7 +386,7 @@ Returns the longest normalized axis of this bounding box's :ref:`size` and :ref: \ **Note:** Due to floating-point precision errors, consider using :ref:`is_equal_approx()` instead, which is more reliable. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_acceptdialog.rst b/classes/class_acceptdialog.rst index 7b24b3ced..0d02fdb51 100644 --- a/classes/class_acceptdialog.rst +++ b/classes/class_acceptdialog.rst @@ -44,7 +44,11 @@ Properties +-----------------------------+-----------------------------------------------------------------------------------+------------------------------------------------------------------------------+ | :ref:`bool` | keep_title_visible | ``true`` (overrides :ref:`Window`) | +-----------------------------+-----------------------------------------------------------------------------------+------------------------------------------------------------------------------+ - | :ref:`String` | :ref:`ok_button_text` | ``"OK"`` | + | :ref:`bool` | maximize_disabled | ``true`` (overrides :ref:`Window`) | + +-----------------------------+-----------------------------------------------------------------------------------+------------------------------------------------------------------------------+ + | :ref:`bool` | minimize_disabled | ``true`` (overrides :ref:`Window`) | + +-----------------------------+-----------------------------------------------------------------------------------+------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`ok_button_text` | ``""`` | +-----------------------------+-----------------------------------------------------------------------------------+------------------------------------------------------------------------------+ | :ref:`String` | title | ``"Alert!"`` (overrides :ref:`Window`) | +-----------------------------+-----------------------------------------------------------------------------------+------------------------------------------------------------------------------+ @@ -134,7 +138,7 @@ Emitted when the dialog is accepted, i.e. the OK button is pressed. **custom_action**\ (\ action\: :ref:`StringName`\ ) :ref:`🔗` -Emitted when a custom button is pressed. See :ref:`add_button()`. +Emitted when a custom button with an action is pressed. See :ref:`add_button()`. .. rst-class:: classref-section-separator @@ -173,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 @@ -219,14 +223,14 @@ The text displayed by the dialog. .. rst-class:: classref-property -:ref:`String` **ok_button_text** = ``"OK"`` :ref:`🔗` +:ref:`String` **ok_button_text** = ``""`` :ref:`🔗` .. rst-class:: classref-property-setget - |void| **set_ok_button_text**\ (\ value\: :ref:`String`\ ) - :ref:`String` **get_ok_button_text**\ (\ ) -The text displayed by the OK button (see :ref:`get_ok_button()`). +The text displayed by the OK button (see :ref:`get_ok_button()`). If empty, a default text will be used. .. rst-class:: classref-section-separator @@ -243,7 +247,9 @@ Method Descriptions :ref:`Button` **add_button**\ (\ text\: :ref:`String`, right\: :ref:`bool` = false, action\: :ref:`String` = ""\ ) :ref:`🔗` -Adds a button with label ``text`` and a custom ``action`` to the dialog and returns the created button. ``action`` will be passed to the :ref:`custom_action` signal when pressed. +Adds a button with label ``text`` and a custom ``action`` to the dialog and returns the created button. + +If ``action`` is not empty, pressing the button will emit the :ref:`custom_action` signal with the specified action string. If ``true``, ``right`` will place the button to the right of any sibling buttons. @@ -369,6 +375,7 @@ The size of the vertical space between the dialog's content and the button row. The panel that fills the background of the window. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_aescontext.rst b/classes/class_aescontext.rst index 3e43943df..49ee1e150 100644 --- a/classes/class_aescontext.rst +++ b/classes/class_aescontext.rst @@ -27,9 +27,9 @@ This class holds the context information required for encryption and decryption .. code-tab:: gdscript extends Node - + var aes = AESContext.new() - + func _ready(): var key = "My secret key!!!" # Key must be either 16 or 32 bytes. var data = "My secret text!!" # Data size must be multiple of 16 bytes, apply padding if needed. @@ -43,7 +43,7 @@ This class holds the context information required for encryption and decryption aes.finish() # Check ECB assert(decrypted == data.to_utf8_buffer()) - + var iv = "My secret iv!!!!" # IV must be of exactly 16 bytes. # Encrypt CBC aes.start(AESContext.MODE_CBC_ENCRYPT, key.to_utf8_buffer(), iv.to_utf8_buffer()) @@ -60,11 +60,11 @@ This class holds the context information required for encryption and decryption using Godot; using System.Diagnostics; - + public partial class MyNode : Node { private AesContext _aes = new AesContext(); - + public override void _Ready() { string key = "My secret key!!!"; // Key must be either 16 or 32 bytes. @@ -79,7 +79,7 @@ This class holds the context information required for encryption and decryption _aes.Finish(); // Check ECB Debug.Assert(decrypted == data.ToUtf8Buffer()); - + string iv = "My secret iv!!!!"; // IV must be of exactly 16 bytes. // Encrypt CBC _aes.Start(AesContext.Mode.EcbEncrypt, key.ToUtf8Buffer(), iv.ToUtf8Buffer()); @@ -227,6 +227,7 @@ Run the desired operation for this AES context. Will return a :ref:`PackedByteAr \ **Note:** The size of ``src`` must be a multiple of 16. Apply some padding if needed. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_aimmodifier3d.rst b/classes/class_aimmodifier3d.rst new file mode 100644 index 000000000..07ca7f602 --- /dev/null +++ b/classes/class_aimmodifier3d.rst @@ -0,0 +1,197 @@ +:github_url: hide + +.. DO NOT EDIT THIS FILE!!! +.. Generated automatically from Godot engine sources. +.. Generator: https://github.com/godotengine/godot/tree/master/doc/tools/make_rst.py. +.. XML source: https://github.com/godotengine/godot/tree/master/doc/classes/AimModifier3D.xml. + +.. _class_AimModifier3D: + +AimModifier3D +============= + +**Inherits:** :ref:`BoneConstraint3D` **<** :ref:`SkeletonModifier3D` **<** :ref:`Node3D` **<** :ref:`Node` **<** :ref:`Object` + +The **AimModifier3D** rotates a bone to look at a reference bone. + +.. rst-class:: classref-introduction-group + +Description +----------- + +This is a simple version of :ref:`LookAtModifier3D` that only allows bone to the reference without advanced options such as angle limitation or time-based interpolation. + +The feature is simplified, but instead it is implemented with smooth tracking without euler, see :ref:`set_use_euler()`. + +.. rst-class:: classref-reftable-group + +Properties +---------- + +.. table:: + :widths: auto + + +-----------------------+------------------------------------------------------------------+-------+ + | :ref:`int` | :ref:`setting_count` | ``0`` | + +-----------------------+------------------------------------------------------------------+-------+ + +.. rst-class:: classref-reftable-group + +Methods +------- + +.. table:: + :widths: auto + + +---------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`BoneAxis` | :ref:`get_forward_axis`\ (\ index\: :ref:`int`\ ) |const| | + +---------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Axis` | :ref:`get_primary_rotation_axis`\ (\ index\: :ref:`int`\ ) |const| | + +---------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`is_using_euler`\ (\ index\: :ref:`int`\ ) |const| | + +---------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`is_using_secondary_rotation`\ (\ index\: :ref:`int`\ ) |const| | + +---------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_forward_axis`\ (\ index\: :ref:`int`, axis\: :ref:`BoneAxis`\ ) | + +---------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_primary_rotation_axis`\ (\ index\: :ref:`int`, axis\: :ref:`Axis`\ ) | + +---------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_use_euler`\ (\ index\: :ref:`int`, enabled\: :ref:`bool`\ ) | + +---------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_use_secondary_rotation`\ (\ index\: :ref:`int`, enabled\: :ref:`bool`\ ) | + +---------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + +.. rst-class:: classref-section-separator + +---- + +.. rst-class:: classref-descriptions-group + +Property Descriptions +--------------------- + +.. _class_AimModifier3D_property_setting_count: + +.. rst-class:: classref-property + +:ref:`int` **setting_count** = ``0`` :ref:`🔗` + +.. rst-class:: classref-property-setget + +- |void| **set_setting_count**\ (\ value\: :ref:`int`\ ) +- :ref:`int` **get_setting_count**\ (\ ) + +The number of settings in the modifier. + +.. rst-class:: classref-section-separator + +---- + +.. rst-class:: classref-descriptions-group + +Method Descriptions +------------------- + +.. _class_AimModifier3D_method_get_forward_axis: + +.. rst-class:: classref-method + +:ref:`BoneAxis` **get_forward_axis**\ (\ index\: :ref:`int`\ ) |const| :ref:`🔗` + +Returns the forward axis of the bone. + +.. rst-class:: classref-item-separator + +---- + +.. _class_AimModifier3D_method_get_primary_rotation_axis: + +.. rst-class:: classref-method + +:ref:`Axis` **get_primary_rotation_axis**\ (\ index\: :ref:`int`\ ) |const| :ref:`🔗` + +Returns the axis of the first rotation. It is enabled only if :ref:`is_using_euler()` is ``true``. + +.. rst-class:: classref-item-separator + +---- + +.. _class_AimModifier3D_method_is_using_euler: + +.. rst-class:: classref-method + +:ref:`bool` **is_using_euler**\ (\ index\: :ref:`int`\ ) |const| :ref:`🔗` + +Returns ``true`` if it provides rotation with using euler. + +.. rst-class:: classref-item-separator + +---- + +.. _class_AimModifier3D_method_is_using_secondary_rotation: + +.. rst-class:: classref-method + +:ref:`bool` **is_using_secondary_rotation**\ (\ index\: :ref:`int`\ ) |const| :ref:`🔗` + +Returns ``true`` if it provides rotation by two axes. It is enabled only if :ref:`is_using_euler()` is ``true``. + +.. rst-class:: classref-item-separator + +---- + +.. _class_AimModifier3D_method_set_forward_axis: + +.. rst-class:: classref-method + +|void| **set_forward_axis**\ (\ index\: :ref:`int`, axis\: :ref:`BoneAxis`\ ) :ref:`🔗` + +Sets the forward axis of the bone. + +.. rst-class:: classref-item-separator + +---- + +.. _class_AimModifier3D_method_set_primary_rotation_axis: + +.. rst-class:: classref-method + +|void| **set_primary_rotation_axis**\ (\ index\: :ref:`int`, axis\: :ref:`Axis`\ ) :ref:`🔗` + +Sets the axis of the first rotation. It is enabled only if :ref:`is_using_euler()` is ``true``. + +.. rst-class:: classref-item-separator + +---- + +.. _class_AimModifier3D_method_set_use_euler: + +.. rst-class:: classref-method + +|void| **set_use_euler**\ (\ index\: :ref:`int`, enabled\: :ref:`bool`\ ) :ref:`🔗` + +If sets ``enabled`` to ``true``, it provides rotation with using euler. + +If sets ``enabled`` to ``false``, it provides rotation with using rotation by arc generated from the forward axis vector and the vector toward the reference. + +.. rst-class:: classref-item-separator + +---- + +.. _class_AimModifier3D_method_set_use_secondary_rotation: + +.. rst-class:: classref-method + +|void| **set_use_secondary_rotation**\ (\ index\: :ref:`int`, enabled\: :ref:`bool`\ ) :ref:`🔗` + +If sets ``enabled`` to ``true``, it provides rotation by two axes. It is enabled only if :ref:`is_using_euler()` is ``true``. + +.. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` +.. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` +.. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` +.. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` +.. |static| replace:: :abbr:`static (This method doesn't need an instance to be called, so it can be called directly using the class name.)` +.. |operator| replace:: :abbr:`operator (This method describes a valid operator to use with this type as left-hand operand.)` +.. |bitfield| replace:: :abbr:`BitField (This value is an integer composed as a bitmask of the following flags.)` +.. |void| replace:: :abbr:`void (No return value.)` diff --git a/classes/class_animatablebody2d.rst b/classes/class_animatablebody2d.rst index fb68cf93d..336773921 100644 --- a/classes/class_animatablebody2d.rst +++ b/classes/class_animatablebody2d.rst @@ -23,6 +23,15 @@ An animatable 2D physics body. It can't be moved by external forces or contacts, When **AnimatableBody2D** is moved, its linear and angular velocity are estimated and used to affect other physics bodies in its path. This makes it useful for moving platforms, doors, and other moving objects. +.. rst-class:: classref-introduction-group + +Tutorials +--------- + +- :doc:`Physics introduction <../tutorials/physics/physics_introduction>` + +- :doc:`Troubleshooting physics issues <../tutorials/physics/troubleshooting_physics_issues>` + .. rst-class:: classref-reftable-group Properties @@ -58,6 +67,7 @@ Property Descriptions If ``true``, the body's movement will be synchronized to the physics frame. This is useful when animating movement via :ref:`AnimationPlayer`, for example on moving platforms. Do **not** use together with :ref:`PhysicsBody2D.move_and_collide()`. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_animatablebody3d.rst b/classes/class_animatablebody3d.rst index d96fc1efa..1705b4d32 100644 --- a/classes/class_animatablebody3d.rst +++ b/classes/class_animatablebody3d.rst @@ -28,6 +28,10 @@ When **AnimatableBody3D** is moved, its linear and angular velocity are estimate Tutorials --------- +- :doc:`Physics introduction <../tutorials/physics/physics_introduction>` + +- :doc:`Troubleshooting physics issues <../tutorials/physics/troubleshooting_physics_issues>` + - `3D Physics Tests Demo `__ - `Third Person Shooter (TPS) Demo `__ @@ -69,6 +73,7 @@ Property Descriptions If ``true``, the body's movement will be synchronized to the physics frame. This is useful when animating movement via :ref:`AnimationPlayer`, for example on moving platforms. Do **not** use together with :ref:`PhysicsBody3D.move_and_collide()`. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_animatedsprite2d.rst b/classes/class_animatedsprite2d.rst index 0810c8ffc..6843d94c9 100644 --- a/classes/class_animatedsprite2d.rst +++ b/classes/class_animatedsprite2d.rst @@ -413,7 +413,7 @@ This method is a shorthand for :ref:`play()` |void| **set_frame_and_progress**\ (\ frame\: :ref:`int`, progress\: :ref:`float`\ ) :ref:`🔗` -Sets :ref:`frame` the :ref:`frame_progress` to the given values. Unlike setting :ref:`frame`, this method does not reset the :ref:`frame_progress` to ``0.0`` implicitly. +Sets :ref:`frame` and :ref:`frame_progress` to the given values. Unlike setting :ref:`frame`, this method does not reset the :ref:`frame_progress` to ``0.0`` implicitly. \ **Example:** Change the animation while keeping the same :ref:`frame` and :ref:`frame_progress`: @@ -442,6 +442,7 @@ Sets :ref:`frame` the :ref:`frame_progres Stops the currently playing animation. The animation position is reset to ``0`` and the ``custom_speed`` is reset to ``1.0``. See also :ref:`pause()`. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_animatedsprite3d.rst b/classes/class_animatedsprite3d.rst index d42a4c0c3..9e2d066f4 100644 --- a/classes/class_animatedsprite3d.rst +++ b/classes/class_animatedsprite3d.rst @@ -333,7 +333,7 @@ This method is a shorthand for :ref:`play()` |void| **set_frame_and_progress**\ (\ frame\: :ref:`int`, progress\: :ref:`float`\ ) :ref:`🔗` -Sets :ref:`frame` the :ref:`frame_progress` to the given values. Unlike setting :ref:`frame`, this method does not reset the :ref:`frame_progress` to ``0.0`` implicitly. +Sets :ref:`frame` and :ref:`frame_progress` to the given values. Unlike setting :ref:`frame`, this method does not reset the :ref:`frame_progress` to ``0.0`` implicitly. \ **Example:** Change the animation while keeping the same :ref:`frame` and :ref:`frame_progress`: @@ -362,6 +362,7 @@ Sets :ref:`frame` the :ref:`frame_progres Stops the currently playing animation. The animation position is reset to ``0`` and the ``custom_speed`` is reset to ``1.0``. See also :ref:`pause()`. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_animatedtexture.rst b/classes/class_animatedtexture.rst index 0ec02d591..7a8e812f0 100644 --- a/classes/class_animatedtexture.rst +++ b/classes/class_animatedtexture.rst @@ -234,6 +234,7 @@ Assigns a :ref:`Texture2D` to the given frame. Frame IDs start You can define any number of textures up to :ref:`MAX_FRAMES`, but keep in mind that only frames from 0 to :ref:`frames` - 1 will be part of the animation. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_animation.rst b/classes/class_animation.rst index 3b7189ba0..da4032bc9 100644 --- a/classes/class_animation.rst +++ b/classes/class_animation.rst @@ -67,15 +67,15 @@ Properties .. table:: :widths: auto - +------------------------------------------+--------------------------------------------------------------------+---------------+ - | :ref:`bool` | :ref:`capture_included` | ``false`` | - +------------------------------------------+--------------------------------------------------------------------+---------------+ - | :ref:`float` | :ref:`length` | ``1.0`` | - +------------------------------------------+--------------------------------------------------------------------+---------------+ - | :ref:`LoopMode` | :ref:`loop_mode` | ``0`` | - +------------------------------------------+--------------------------------------------------------------------+---------------+ - | :ref:`float` | :ref:`step` | ``0.0333333`` | - +------------------------------------------+--------------------------------------------------------------------+---------------+ + +------------------------------------------+--------------------------------------------------------------------+-----------------+ + | :ref:`bool` | :ref:`capture_included` | ``false`` | + +------------------------------------------+--------------------------------------------------------------------+-----------------+ + | :ref:`float` | :ref:`length` | ``1.0`` | + +------------------------------------------+--------------------------------------------------------------------+-----------------+ + | :ref:`LoopMode` | :ref:`loop_mode` | ``0`` | + +------------------------------------------+--------------------------------------------------------------------+-----------------+ + | :ref:`float` | :ref:`step` | ``0.033333335`` | + +------------------------------------------+--------------------------------------------------------------------+-----------------+ .. rst-class:: classref-reftable-group @@ -575,7 +575,7 @@ The total length of the animation (in seconds). - |void| **set_loop_mode**\ (\ value\: :ref:`LoopMode`\ ) - :ref:`LoopMode` **get_loop_mode**\ (\ ) -Determines the behavior of both ends of the animation timeline during animation playback. This is used for correct interpolation of animation cycles, and for hinting the player that it must restart the animation. +Determines the behavior of both ends of the animation timeline during animation playback. This indicates whether and how the animation should be restarted, and is also used to correctly interpolate animation cycles. .. rst-class:: classref-item-separator @@ -585,7 +585,7 @@ Determines the behavior of both ends of the animation timeline during animation .. rst-class:: classref-property -:ref:`float` **step** = ``0.0333333`` :ref:`🔗` +:ref:`float` **step** = ``0.033333335`` :ref:`🔗` .. rst-class:: classref-property-setget @@ -1553,9 +1553,10 @@ A ``backward`` mainly affects the direction of key retrieval of the track with : |void| **value_track_set_update_mode**\ (\ track_idx\: :ref:`int`, mode\: :ref:`UpdateMode`\ ) :ref:`🔗` -Sets the update mode (see :ref:`UpdateMode`) of a value track. +Sets the update mode of a value track. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_animationlibrary.rst b/classes/class_animationlibrary.rst index 3967684b2..73d3860bf 100644 --- a/classes/class_animationlibrary.rst +++ b/classes/class_animationlibrary.rst @@ -197,6 +197,7 @@ Removes the :ref:`Animation` with the key ``name``. Changes the key of the :ref:`Animation` associated with the key ``name`` to ``newname``. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_animationmixer.rst b/classes/class_animationmixer.rst index 950ce0d96..d33265e7c 100644 --- a/classes/class_animationmixer.rst +++ b/classes/class_animationmixer.rst @@ -55,7 +55,7 @@ Properties +-----------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+--------------------+ | :ref:`bool` | :ref:`reset_on_save` | ``true`` | +-----------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+--------------------+ - | :ref:`bool` | :ref:`root_motion_local` | | + | :ref:`bool` | :ref:`root_motion_local` | ``false`` | +-----------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+--------------------+ | :ref:`NodePath` | :ref:`root_motion_track` | ``NodePath("")`` | +-----------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+--------------------+ @@ -169,6 +169,8 @@ Notifies when an animation list is changed. Notifies when an animation starts playing. +\ **Note:** This signal is not emitted if an animation is looping. + .. rst-class:: classref-item-separator ---- @@ -480,7 +482,7 @@ This makes it more convenient to preview and edit animations in the editor, as c .. rst-class:: classref-property -:ref:`bool` **root_motion_local** :ref:`🔗` +:ref:`bool` **root_motion_local** = ``false`` :ref:`🔗` .. rst-class:: classref-property-setget @@ -704,7 +706,7 @@ The most basic example is applying position to :ref:`CharacterBody3D` is ``true``, return the pre-multiplied translation value with the inverted rotation. +If :ref:`root_motion_local` is ``true``, returns the pre-multiplied translation value with the inverted rotation. In this case, the code can be written as follows: @@ -773,7 +775,7 @@ For example, if an animation with only one key ``Vector3(0, 0, 0)`` is played in .. code-tab:: gdscript var prev_root_motion_position_accumulator - + func _process(delta): if Input.is_action_just_pressed("animate"): state_machine.travel("Animate") @@ -840,7 +842,7 @@ For example, if an animation with only one key ``Quaternion(0, 0, 0, 1)`` is pla .. code-tab:: gdscript var prev_root_motion_rotation_accumulator - + func _process(delta): if Input.is_action_just_pressed("animate"): state_machine.travel("Animate") @@ -878,7 +880,7 @@ The most basic example is applying scale to :ref:`CharacterBody3D` associated with the Moves the :ref:`AnimationLibrary` associated with the key ``name`` to the key ``newname``. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_animationnode.rst b/classes/class_animationnode.rst index 93372bff6..04bd61362 100644 --- a/classes/class_animationnode.rst +++ b/classes/class_animationnode.rst @@ -31,9 +31,9 @@ You can access the time information as read-only parameter which is processed an :: - var current_length = $AnimationTree[parameters/AnimationNodeName/current_length] - var current_position = $AnimationTree[parameters/AnimationNodeName/current_position] - var current_delta = $AnimationTree[parameters/AnimationNodeName/current_delta] + var current_length = $AnimationTree["parameters/AnimationNodeName/current_length"] + var current_position = $AnimationTree["parameters/AnimationNodeName/current_position"] + var current_delta = $AnimationTree["parameters/AnimationNodeName/current_delta"] .. rst-class:: classref-introduction-group @@ -349,9 +349,9 @@ Adds an input to the animation node. This is only useful for animation nodes cre |void| **blend_animation**\ (\ animation\: :ref:`StringName`, time\: :ref:`float`, delta\: :ref:`float`, seeked\: :ref:`bool`, is_external_seeking\: :ref:`bool`, blend\: :ref:`float`, looped_flag\: :ref:`LoopedFlag` = 0\ ) :ref:`🔗` -Blend an animation by ``blend`` amount (name must be valid in the linked :ref:`AnimationPlayer`). A ``time`` and ``delta`` may be passed, as well as whether ``seeked`` happened. +Blends an animation by ``blend`` amount (name must be valid in the linked :ref:`AnimationPlayer`). A ``time`` and ``delta`` may be passed, as well as whether ``seeked`` happened. -A ``looped_flag`` is used by internal processing immediately after the loop. See also :ref:`LoopedFlag`. +A ``looped_flag`` is used by internal processing immediately after the loop. .. rst-class:: classref-item-separator @@ -363,7 +363,7 @@ A ``looped_flag`` is used by internal processing immediately after the loop. See :ref:`float` **blend_input**\ (\ input_index\: :ref:`int`, time\: :ref:`float`, seek\: :ref:`bool`, is_external_seeking\: :ref:`bool`, blend\: :ref:`float`, filter\: :ref:`FilterAction` = 0, sync\: :ref:`bool` = true, test_only\: :ref:`bool` = false\ ) :ref:`🔗` -Blend an input. This is only useful for animation nodes created for an :ref:`AnimationNodeBlendTree`. The ``time`` parameter is a relative delta, unless ``seek`` is ``true``, in which case it is absolute. A filter mode may be optionally passed (see :ref:`FilterAction` for options). +Blends an input. This is only useful for animation nodes created for an :ref:`AnimationNodeBlendTree`. The ``time`` parameter is a relative delta, unless ``seek`` is ``true``, in which case it is absolute. A filter mode may be optionally passed. .. rst-class:: classref-item-separator @@ -512,6 +512,7 @@ Sets the name of the input at the given ``input`` index. If the setting fails, r Sets a custom parameter. These are used as local memory, because resources can be reused across the tree or scenes. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_animationnodeadd2.rst b/classes/class_animationnodeadd2.rst index c23b86a53..4b4a28365 100644 --- a/classes/class_animationnodeadd2.rst +++ b/classes/class_animationnodeadd2.rst @@ -33,6 +33,7 @@ Tutorials - :doc:`Using AnimationTree <../tutorials/animation/animation_tree>` .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_animationnodeadd3.rst b/classes/class_animationnodeadd3.rst index f77b8f847..05c5c9c05 100644 --- a/classes/class_animationnodeadd3.rst +++ b/classes/class_animationnodeadd3.rst @@ -41,6 +41,7 @@ Tutorials - `Third Person Shooter (TPS) Demo `__ .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_animationnodeanimation.rst b/classes/class_animationnodeanimation.rst index 2d14e3dbd..e0fa3591c 100644 --- a/classes/class_animationnodeanimation.rst +++ b/classes/class_animationnodeanimation.rst @@ -241,6 +241,7 @@ If :ref:`use_custom_timeline` provides an animation based on the :ref:`Animation` resource with some parameters adjusted. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_animationnodeblend2.rst b/classes/class_animationnodeblend2.rst index 53a14c547..4affaacd9 100644 --- a/classes/class_animationnodeblend2.rst +++ b/classes/class_animationnodeblend2.rst @@ -35,6 +35,7 @@ Tutorials - `Third Person Shooter (TPS) Demo `__ .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_animationnodeblend3.rst b/classes/class_animationnodeblend3.rst index 4b7837d7e..c8f86ae6f 100644 --- a/classes/class_animationnodeblend3.rst +++ b/classes/class_animationnodeblend3.rst @@ -39,6 +39,7 @@ Tutorials - :doc:`Using AnimationTree <../tutorials/animation/animation_tree>` .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_animationnodeblendspace1d.rst b/classes/class_animationnodeblendspace1d.rst index e302b7582..85157dd62 100644 --- a/classes/class_animationnodeblendspace1d.rst +++ b/classes/class_animationnodeblendspace1d.rst @@ -137,7 +137,7 @@ Property Descriptions - |void| **set_blend_mode**\ (\ value\: :ref:`BlendMode`\ ) - :ref:`BlendMode` **get_blend_mode**\ (\ ) -Controls the interpolation between animations. See :ref:`BlendMode` constants. +Controls the interpolation between animations. .. rst-class:: classref-item-separator @@ -316,6 +316,7 @@ Changes the :ref:`AnimationNode` referenced by the point at Updates the position of the point at index ``point`` on the blend axis. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_animationnodeblendspace2d.rst b/classes/class_animationnodeblendspace2d.rst index f555b0367..12bdec3c7 100644 --- a/classes/class_animationnodeblendspace2d.rst +++ b/classes/class_animationnodeblendspace2d.rst @@ -185,7 +185,7 @@ If ``true``, the blend space is triangulated automatically. The mesh updates eve - |void| **set_blend_mode**\ (\ value\: :ref:`BlendMode`\ ) - :ref:`BlendMode` **get_blend_mode**\ (\ ) -Controls the interpolation between animations. See :ref:`BlendMode` constants. +Controls the interpolation between animations. .. rst-class:: classref-item-separator @@ -429,6 +429,7 @@ Changes the :ref:`AnimationNode` referenced by the point at Updates the position of the point at index ``point`` in the blend space. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_animationnodeblendtree.rst b/classes/class_animationnodeblendtree.rst index c2efe9588..eb4c125b7 100644 --- a/classes/class_animationnodeblendtree.rst +++ b/classes/class_animationnodeblendtree.rst @@ -50,25 +50,27 @@ Methods .. table:: :widths: auto - +-------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`add_node`\ (\ name\: :ref:`StringName`, node\: :ref:`AnimationNode`, position\: :ref:`Vector2` = Vector2(0, 0)\ ) | - +-------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`connect_node`\ (\ input_node\: :ref:`StringName`, input_index\: :ref:`int`, output_node\: :ref:`StringName`\ ) | - +-------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`disconnect_node`\ (\ input_node\: :ref:`StringName`, input_index\: :ref:`int`\ ) | - +-------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`AnimationNode` | :ref:`get_node`\ (\ name\: :ref:`StringName`\ ) |const| | - +-------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Vector2` | :ref:`get_node_position`\ (\ name\: :ref:`StringName`\ ) |const| | - +-------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`has_node`\ (\ name\: :ref:`StringName`\ ) |const| | - +-------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`remove_node`\ (\ name\: :ref:`StringName`\ ) | - +-------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`rename_node`\ (\ name\: :ref:`StringName`, new_name\: :ref:`StringName`\ ) | - +-------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`set_node_position`\ (\ name\: :ref:`StringName`, position\: :ref:`Vector2`\ ) | - +-------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`add_node`\ (\ name\: :ref:`StringName`, node\: :ref:`AnimationNode`, position\: :ref:`Vector2` = Vector2(0, 0)\ ) | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`connect_node`\ (\ input_node\: :ref:`StringName`, input_index\: :ref:`int`, output_node\: :ref:`StringName`\ ) | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`disconnect_node`\ (\ input_node\: :ref:`StringName`, input_index\: :ref:`int`\ ) | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`AnimationNode` | :ref:`get_node`\ (\ name\: :ref:`StringName`\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Array`\[:ref:`StringName`\] | :ref:`get_node_list`\ (\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Vector2` | :ref:`get_node_position`\ (\ name\: :ref:`StringName`\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`has_node`\ (\ name\: :ref:`StringName`\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`remove_node`\ (\ name\: :ref:`StringName`\ ) | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`rename_node`\ (\ name\: :ref:`StringName`, new_name\: :ref:`StringName`\ ) | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_node_position`\ (\ name\: :ref:`StringName`, position\: :ref:`Vector2`\ ) | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ .. rst-class:: classref-section-separator @@ -223,6 +225,18 @@ Returns the sub animation node with the specified ``name``. ---- +.. _class_AnimationNodeBlendTree_method_get_node_list: + +.. rst-class:: classref-method + +:ref:`Array`\[:ref:`StringName`\] **get_node_list**\ (\ ) |const| :ref:`🔗` + +Returns a list containing the names of all sub animation nodes in this blend tree. + +.. rst-class:: classref-item-separator + +---- + .. _class_AnimationNodeBlendTree_method_get_node_position: .. rst-class:: classref-method @@ -280,6 +294,7 @@ Changes the name of a sub animation node. Modifies the position of a sub animation node. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_animationnodeextension.rst b/classes/class_animationnodeextension.rst index 3bb6932ae..f07792dfc 100644 --- a/classes/class_animationnodeextension.rst +++ b/classes/class_animationnodeextension.rst @@ -31,13 +31,13 @@ Methods .. table:: :widths: auto - +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`PackedFloat32Array` | :ref:`_process_animation_node`\ (\ playback_info\: :ref:`PackedFloat64Array`, test_only\: :ref:`bool`\ ) |virtual| | - +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`float` | :ref:`get_remaining_time`\ (\ node_info\: :ref:`PackedFloat32Array`, break_loop\: :ref:`bool`\ ) |static| | - +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`is_looping`\ (\ node_info\: :ref:`PackedFloat32Array`\ ) |static| | - +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + +-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`PackedFloat32Array` | :ref:`_process_animation_node`\ (\ playback_info\: :ref:`PackedFloat64Array`, test_only\: :ref:`bool`\ ) |virtual| |required| | + +-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`get_remaining_time`\ (\ node_info\: :ref:`PackedFloat32Array`, break_loop\: :ref:`bool`\ ) |static| | + +-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`is_looping`\ (\ node_info\: :ref:`PackedFloat32Array`\ ) |static| | + +-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ .. rst-class:: classref-section-separator @@ -52,7 +52,7 @@ Method Descriptions .. rst-class:: classref-method -:ref:`PackedFloat32Array` **_process_animation_node**\ (\ playback_info\: :ref:`PackedFloat64Array`, test_only\: :ref:`bool`\ ) |virtual| :ref:`🔗` +:ref:`PackedFloat32Array` **_process_animation_node**\ (\ playback_info\: :ref:`PackedFloat64Array`, test_only\: :ref:`bool`\ ) |virtual| |required| :ref:`🔗` A version of the :ref:`AnimationNode._process()` method that is meant to be overridden by custom nodes. It returns a :ref:`PackedFloat32Array` with the processed animation data. @@ -85,6 +85,7 @@ Returns the animation's remaining time for the given node info. For looping anim Returns ``true`` if the animation for the given ``node_info`` is looping. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_animationnodeoneshot.rst b/classes/class_animationnodeoneshot.rst index 62cd81810..97b8e1ce9 100644 --- a/classes/class_animationnodeoneshot.rst +++ b/classes/class_animationnodeoneshot.rst @@ -32,22 +32,22 @@ After setting the request and changing the animation playback, the one-shot node animation_tree.set("parameters/OneShot/request", AnimationNodeOneShot.ONE_SHOT_REQUEST_FIRE) # Alternative syntax (same result as above). animation_tree["parameters/OneShot/request"] = AnimationNodeOneShot.ONE_SHOT_REQUEST_FIRE - + # Abort child animation connected to "shot" port. animation_tree.set("parameters/OneShot/request", AnimationNodeOneShot.ONE_SHOT_REQUEST_ABORT) # Alternative syntax (same result as above). animation_tree["parameters/OneShot/request"] = AnimationNodeOneShot.ONE_SHOT_REQUEST_ABORT - + # Abort child animation with fading out connected to "shot" port. animation_tree.set("parameters/OneShot/request", AnimationNodeOneShot.ONE_SHOT_REQUEST_FADE_OUT) # Alternative syntax (same result as above). animation_tree["parameters/OneShot/request"] = AnimationNodeOneShot.ONE_SHOT_REQUEST_FADE_OUT - + # Get current state (read-only). animation_tree.get("parameters/OneShot/active") # Alternative syntax (same result as above). animation_tree["parameters/OneShot/active"] - + # Get current internal state (read-only). animation_tree.get("parameters/OneShot/internal_active") # Alternative syntax (same result as above). @@ -57,16 +57,16 @@ After setting the request and changing the animation playback, the one-shot node // Play child animation connected to "shot" port. animationTree.Set("parameters/OneShot/request", (int)AnimationNodeOneShot.OneShotRequest.Fire); - + // Abort child animation connected to "shot" port. animationTree.Set("parameters/OneShot/request", (int)AnimationNodeOneShot.OneShotRequest.Abort); - + // Abort child animation with fading out connected to "shot" port. animationTree.Set("parameters/OneShot/request", (int)AnimationNodeOneShot.OneShotRequest.FadeOut); - + // Get current state (read-only). animationTree.Get("parameters/OneShot/active"); - + // Get current internal state (read-only). animationTree.Get("parameters/OneShot/internal_active"); @@ -291,7 +291,7 @@ Determines how cross-fading between animations is eased. If empty, the transitio The fade-in duration. For example, setting this to ``1.0`` for a 5 second length animation will produce a cross-fade that starts at 0 second and ends at 1 second during the animation. -\ **Note:** **AnimationNodeOneShot** transitions the current state after the end of the fading. When :ref:`AnimationNodeOutput` is considered as the most upstream, so the :ref:`fadein_time` is scaled depending on the downstream delta. For example, if this value is set to ``1.0`` and a :ref:`AnimationNodeTimeScale` with a value of ``2.0`` is chained downstream, the actual processing time will be 0.5 second. +\ **Note:** **AnimationNodeOneShot** transitions the current state after the fading has finished. .. rst-class:: classref-item-separator @@ -327,7 +327,7 @@ Determines how cross-fading between animations is eased. If empty, the transitio The fade-out duration. For example, setting this to ``1.0`` for a 5 second length animation will produce a cross-fade that starts at 4 second and ends at 5 second during the animation. -\ **Note:** **AnimationNodeOneShot** transitions the current state after the end of the fading. When :ref:`AnimationNodeOutput` is considered as the most upstream, so the :ref:`fadeout_time` is scaled depending on the downstream delta. For example, if this value is set to ``1.0`` and an :ref:`AnimationNodeTimeScale` with a value of ``2.0`` is chained downstream, the actual processing time will be 0.5 second. +\ **Note:** **AnimationNodeOneShot** transitions the current state after the fading has finished. .. rst-class:: classref-item-separator @@ -347,6 +347,7 @@ The fade-out duration. For example, setting this to ``1.0`` for a 5 second lengt The blend type. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_animationnodeoutput.rst b/classes/class_animationnodeoutput.rst index 17f6be4d6..36c14f1c8 100644 --- a/classes/class_animationnodeoutput.rst +++ b/classes/class_animationnodeoutput.rst @@ -33,6 +33,7 @@ Tutorials - `Third Person Shooter (TPS) Demo `__ .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_animationnodestatemachine.rst b/classes/class_animationnodestatemachine.rst index f22a1a63f..3724360ee 100644 --- a/classes/class_animationnodestatemachine.rst +++ b/classes/class_animationnodestatemachine.rst @@ -76,6 +76,8 @@ Methods +---------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`AnimationNode` | :ref:`get_node`\ (\ name\: :ref:`StringName`\ ) |const| | +---------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Array`\[:ref:`StringName`\] | :ref:`get_node_list`\ (\ ) |const| | + +---------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`StringName` | :ref:`get_node_name`\ (\ node\: :ref:`AnimationNode`\ ) |const| | +---------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`Vector2` | :ref:`get_node_position`\ (\ name\: :ref:`StringName`\ ) |const| | @@ -261,6 +263,18 @@ Returns the animation node with the given name. ---- +.. _class_AnimationNodeStateMachine_method_get_node_list: + +.. rst-class:: classref-method + +:ref:`Array`\[:ref:`StringName`\] **get_node_list**\ (\ ) |const| :ref:`🔗` + +Returns a list containing the names of all animation nodes in this state machine. + +.. rst-class:: classref-item-separator + +---- + .. _class_AnimationNodeStateMachine_method_get_node_name: .. rst-class:: classref-method @@ -438,6 +452,7 @@ Sets the draw offset of the graph. Used for display in the editor. Sets the animation node's coordinates. Used for display in the editor. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_animationnodestatemachineplayback.rst b/classes/class_animationnodestatemachineplayback.rst index c1490a096..0755e0614 100644 --- a/classes/class_animationnodestatemachineplayback.rst +++ b/classes/class_animationnodestatemachineplayback.rst @@ -91,6 +91,37 @@ Methods .. rst-class:: classref-descriptions-group +Signals +------- + +.. _class_AnimationNodeStateMachinePlayback_signal_state_finished: + +.. rst-class:: classref-signal + +**state_finished**\ (\ state\: :ref:`StringName`\ ) :ref:`🔗` + +Emitted when the ``state`` finishes playback. If ``state`` is a state machine set to grouped mode, its signals are passed through with its name prefixed. + +If there is a crossfade, this will be fired when the influence of the :ref:`get_fading_from_node()` animation is no longer present. + +.. rst-class:: classref-item-separator + +---- + +.. _class_AnimationNodeStateMachinePlayback_signal_state_started: + +.. rst-class:: classref-signal + +**state_started**\ (\ state\: :ref:`StringName`\ ) :ref:`🔗` + +Emitted when the ``state`` starts playback. If ``state`` is a state machine set to grouped mode, its signals are passed through with its name prefixed. + +.. rst-class:: classref-section-separator + +---- + +.. rst-class:: classref-descriptions-group + Method Descriptions ------------------- @@ -221,6 +252,7 @@ If the path does not connect from the current state, the animation will play aft If ``reset_on_teleport`` is ``true``, the animation is played from the beginning when the travel cause a teleportation. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_animationnodestatemachinetransition.rst b/classes/class_animationnodestatemachinetransition.rst index 140a4a06c..b80c84889 100644 --- a/classes/class_animationnodestatemachinetransition.rst +++ b/classes/class_animationnodestatemachinetransition.rst @@ -322,6 +322,7 @@ The time to cross-fade between this state and the next. \ **Note:** :ref:`AnimationNodeStateMachine` transitions the current state immediately after the start of the fading. The precise remaining time can only be inferred from the main animation. When :ref:`AnimationNodeOutput` is considered as the most upstream, so the :ref:`xfade_time` is not scaled depending on the downstream delta. See also :ref:`AnimationNodeOneShot.fadeout_time`. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_animationnodesub2.rst b/classes/class_animationnodesub2.rst index 8a62e6d44..e627557c4 100644 --- a/classes/class_animationnodesub2.rst +++ b/classes/class_animationnodesub2.rst @@ -35,6 +35,7 @@ Tutorials - :doc:`AnimationTree <../tutorials/animation/animation_tree>` .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_animationnodesync.rst b/classes/class_animationnodesync.rst index bbe20f0a3..5de060b0f 100644 --- a/classes/class_animationnodesync.rst +++ b/classes/class_animationnodesync.rst @@ -67,6 +67,7 @@ If ``false``, the blended animations' frame are stopped when the blend value is If ``true``, forcing the blended animations to advance frame. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_animationnodetimescale.rst b/classes/class_animationnodetimescale.rst index 7d19d1419..6c865f463 100644 --- a/classes/class_animationnodetimescale.rst +++ b/classes/class_animationnodetimescale.rst @@ -31,6 +31,7 @@ Tutorials - `3D Platformer Demo `__ .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_animationnodetimeseek.rst b/classes/class_animationnodetimeseek.rst index a6c98704e..0d7c2fe2d 100644 --- a/classes/class_animationnodetimeseek.rst +++ b/classes/class_animationnodetimeseek.rst @@ -32,7 +32,7 @@ After setting the time and changing the animation playback, the time seek node a animation_tree.set("parameters/TimeSeek/seek_request", 0.0) # Alternative syntax (same result as above). animation_tree["parameters/TimeSeek/seek_request"] = 0.0 - + # Play child animation from 12 second timestamp. animation_tree.set("parameters/TimeSeek/seek_request", 12.0) # Alternative syntax (same result as above). @@ -42,7 +42,7 @@ After setting the time and changing the animation playback, the time seek node a // Play child animation from the start. animationTree.Set("parameters/TimeSeek/seek_request", 0.0); - + // Play child animation from 12 second timestamp. animationTree.Set("parameters/TimeSeek/seek_request", 12.0); @@ -90,6 +90,7 @@ Property Descriptions If ``true``, some processes are executed to handle keys between seeks, such as calculating root motion and finding the nearest discrete key. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_animationnodetransition.rst b/classes/class_animationnodetransition.rst index 8b42fc024..719de4008 100644 --- a/classes/class_animationnodetransition.rst +++ b/classes/class_animationnodetransition.rst @@ -34,12 +34,12 @@ After setting the request and changing the animation playback, the transition no animation_tree.set("parameters/Transition/transition_request", "state_2") # Alternative syntax (same result as above). animation_tree["parameters/Transition/transition_request"] = "state_2" - + # Get current state name (read-only). animation_tree.get("parameters/Transition/current_state") # Alternative syntax (same result as above). animation_tree["parameters/Transition/current_state"] - + # Get current state index (read-only). animation_tree.get("parameters/Transition/current_index") # Alternative syntax (same result as above). @@ -49,10 +49,10 @@ After setting the request and changing the animation playback, the transition no // Play child animation connected to "state_2" port. animationTree.Set("parameters/Transition/transition_request", "state_2"); - + // Get current state name (read-only). animationTree.Get("parameters/Transition/current_state"); - + // Get current state index (read-only). animationTree.Get("parameters/Transition/current_index"); @@ -262,6 +262,7 @@ If ``true``, breaks the loop at the end of the loop cycle for transition, even i If ``true``, the destination animation is restarted when the animation transitions. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_animationplayer.rst b/classes/class_animationplayer.rst index bb1c21323..70012e0b1 100644 --- a/classes/class_animationplayer.rst +++ b/classes/class_animationplayer.rst @@ -622,7 +622,7 @@ Returns the start time of the section currently being played. :ref:`bool` **has_section**\ (\ ) |const| :ref:`🔗` -Returns ``true`` if an animation is currently playing with section. +Returns ``true`` if an animation is currently playing with a section. .. rst-class:: classref-item-separator @@ -787,7 +787,7 @@ Queues an animation for playback once the current animation and all previously q |void| **reset_section**\ (\ ) :ref:`🔗` -Resets the current section if section is set. +Resets the current section. Does nothing if a section has not been set. .. rst-class:: classref-item-separator @@ -902,6 +902,7 @@ If ``keep_state`` is ``true``, the animation state is not updated visually. \ **Note:** The method / audio / animation playback tracks will not be processed by this method. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_animationrootnode.rst b/classes/class_animationrootnode.rst index 8281adc15..20aea2e58 100644 --- a/classes/class_animationrootnode.rst +++ b/classes/class_animationrootnode.rst @@ -33,6 +33,7 @@ Tutorials - :doc:`Using AnimationTree <../tutorials/animation/animation_tree>` .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_animationtree.rst b/classes/class_animationtree.rst index ed8653c44..096f6de96 100644 --- a/classes/class_animationtree.rst +++ b/classes/class_animationtree.rst @@ -218,6 +218,7 @@ Returns the process notification in which to update animations. Sets the process notification in which to update animations. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_area2d.rst b/classes/class_area2d.rst index e06699e42..47248ca99 100644 --- a/classes/class_area2d.rst +++ b/classes/class_area2d.rst @@ -155,7 +155,7 @@ Emitted when a :ref:`Shape2D` of the received ``area`` enters a s var other_shape_owner = area.shape_find_owner(area_shape_index) var other_shape_node = area.shape_owner_get_owner(other_shape_owner) - + var local_shape_owner = shape_find_owner(local_shape_index) var local_shape_node = shape_owner_get_owner(local_shape_owner) @@ -222,7 +222,7 @@ Emitted when a :ref:`Shape2D` of the received ``body`` enters a s var body_shape_owner = body.shape_find_owner(body_shape_index) var body_shape_node = body.shape_owner_get_owner(body_shape_owner) - + var local_shape_owner = shape_find_owner(local_shape_index) var local_shape_node = shape_owner_get_owner(local_shape_owner) @@ -336,7 +336,7 @@ See :ref:`ProjectSettings.physics/2d/default_angular_damp`\ ) - :ref:`SpaceOverride` **get_angular_damp_space_override_mode**\ (\ ) -Override mode for angular damping calculations within this area. See :ref:`SpaceOverride` for possible values. +Override mode for angular damping calculations within this area. .. rst-class:: classref-item-separator @@ -474,7 +474,7 @@ The above is true only when the unit distance is a positive number. When this is - |void| **set_gravity_space_override_mode**\ (\ value\: :ref:`SpaceOverride`\ ) - :ref:`SpaceOverride` **get_gravity_space_override_mode**\ (\ ) -Override mode for gravity calculations within this area. See :ref:`SpaceOverride` for possible values. +Override mode for gravity calculations within this area. .. rst-class:: classref-item-separator @@ -510,7 +510,7 @@ See :ref:`ProjectSettings.physics/2d/default_linear_damp`\ ) - :ref:`SpaceOverride` **get_linear_damp_space_override_mode**\ (\ ) -Override mode for linear damping calculations within this area. See :ref:`SpaceOverride` for possible values. +Override mode for linear damping calculations within this area. .. rst-class:: classref-item-separator @@ -655,6 +655,7 @@ Returns ``true`` if the given physics body intersects or overlaps this **Area2D* The ``body`` argument can either be a :ref:`PhysicsBody2D` or a :ref:`TileMap` instance. While TileMaps are not physics bodies themselves, they register their tiles with collision shapes as a virtual physics body. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_area3d.rst b/classes/class_area3d.rst index 9c0b2aaf8..93590202c 100644 --- a/classes/class_area3d.rst +++ b/classes/class_area3d.rst @@ -169,7 +169,7 @@ Emitted when a :ref:`Shape3D` of the received ``area`` enters a s var other_shape_owner = area.shape_find_owner(area_shape_index) var other_shape_node = area.shape_owner_get_owner(other_shape_owner) - + var local_shape_owner = shape_find_owner(local_shape_index) var local_shape_node = shape_owner_get_owner(local_shape_owner) @@ -236,7 +236,7 @@ Emitted when a :ref:`Shape3D` of the received ``body`` enters a s var body_shape_owner = body.shape_find_owner(body_shape_index) var body_shape_node = body.shape_owner_get_owner(body_shape_owner) - + var local_shape_owner = shape_find_owner(local_shape_index) var local_shape_node = shape_owner_get_owner(local_shape_owner) @@ -350,7 +350,7 @@ See :ref:`ProjectSettings.physics/3d/default_angular_damp`\ ) - :ref:`SpaceOverride` **get_angular_damp_space_override_mode**\ (\ ) -Override mode for angular damping calculations within this area. See :ref:`SpaceOverride` for possible values. +Override mode for angular damping calculations within this area. .. rst-class:: classref-item-separator @@ -488,7 +488,7 @@ The above is true only when the unit distance is a positive number. When this is - |void| **set_gravity_space_override_mode**\ (\ value\: :ref:`SpaceOverride`\ ) - :ref:`SpaceOverride` **get_gravity_space_override_mode**\ (\ ) -Override mode for gravity calculations within this area. See :ref:`SpaceOverride` for possible values. +Override mode for gravity calculations within this area. .. rst-class:: classref-item-separator @@ -524,7 +524,7 @@ See :ref:`ProjectSettings.physics/3d/default_linear_damp`\ ) - :ref:`SpaceOverride` **get_linear_damp_space_override_mode**\ (\ ) -Override mode for linear damping calculations within this area. See :ref:`SpaceOverride` for possible values. +Override mode for linear damping calculations within this area. .. rst-class:: classref-item-separator @@ -794,6 +794,7 @@ Returns ``true`` if the given physics body intersects or overlaps this **Area3D* The ``body`` argument can either be a :ref:`PhysicsBody3D` or a :ref:`GridMap` instance. While GridMaps are not physics body themselves, they register their tiles with collision shapes as a virtual physics body. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_array.rst b/classes/class_array.rst index 7dccd4243..7e85ad4b3 100644 --- a/classes/class_array.rst +++ b/classes/class_array.rst @@ -28,7 +28,7 @@ An array data structure that can contain a sequence of elements of any :ref:`Var print(array[0]) # Prints "First" print(array[2]) # Prints 3 print(array[-1]) # Prints "Last" - + array[1] = "Second" print(array[1]) # Prints "Second" print(array[-3]) # Prints "Second" @@ -39,7 +39,7 @@ An array data structure that can contain a sequence of elements of any :ref:`Var GD.Print(array[0]); // Prints "First" GD.Print(array[2]); // Prints 3 GD.Print(array[^1]); // Prints "Last" - + array[1] = "Second"; GD.Print(array[1]); // Prints "Second" GD.Print(array[^3]); // Prints "Second" @@ -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`\ ) | @@ -267,10 +269,10 @@ If ``type`` is not :ref:`@GlobalScope.TYPE_OBJECT` parameter (the curr func greater_than_5(number): return number > 5 - + func _ready(): print([6, 10, 6].all(greater_than_5)) # Prints true (3/3 elements evaluate to true). print([4, 10, 4].all(greater_than_5)) # Prints false (1/3 elements evaluate to true). print([4, 4, 4].all(greater_than_5)) # Prints false (0/3 elements evaluate to true). print([].all(greater_than_5)) # Prints true (0/0 elements evaluate to true). - + # Same as the first line above, but using a lambda function. print([6, 10, 6].all(func(element): return element > 5)) # Prints true @@ -441,7 +443,7 @@ The ``method`` should take one :ref:`Variant` parameter (the curr { return number > 5; } - + public override void _Ready() { // Prints True (3/3 elements evaluate to true). @@ -452,7 +454,7 @@ The ``method`` should take one :ref:`Variant` parameter (the curr GD.Print(new Godot.Collections.Array>int< { 4, 4, 4 }.All(GreaterThan5)); // Prints True (0/0 elements evaluate to true). GD.Print(new Godot.Collections.Array>int< { }.All(GreaterThan5)); - + // Same as the first line above, but using a lambda function. GD.Print(new Godot.Collections.Array>int< { 6, 10, 6 }.All(element => element > 5)); // Prints True } @@ -483,13 +485,13 @@ The ``method`` should take one :ref:`Variant` parameter (the curr func greater_than_5(number): return number > 5 - + func _ready(): print([6, 10, 6].any(greater_than_5)) # Prints true (3 elements evaluate to true). print([4, 10, 4].any(greater_than_5)) # Prints true (1 elements evaluate to true). print([4, 4, 4].any(greater_than_5)) # Prints false (0 elements evaluate to true). print([].any(greater_than_5)) # Prints false (0 elements evaluate to true). - + # Same as the first line above, but using a lambda function. print([6, 10, 6].any(func(number): return number > 5)) # Prints true @@ -574,10 +576,10 @@ If ``before`` is ``true`` (as by default), the returned index comes before all e var numbers = [2, 4, 8, 10] var idx = numbers.bsearch(7) - + numbers.insert(idx, 7) print(numbers) # Prints [2, 4, 7, 8, 10] - + var fruits = ["Apple", "Lemon", "Lemon", "Orange"] print(fruits.bsearch("Lemon", true)) # Prints 1, points at the first "Lemon". print(fruits.bsearch("Lemon", false)) # Prints 3, points at "Orange". @@ -606,18 +608,18 @@ If ``before`` is ``true`` (as by default), the returned index comes before all e if a[1] < b[1]: return true return false - + func _ready(): var my_items = [["Tomato", 2], ["Kiwi", 5], ["Rice", 9]] - + var apple = ["Apple", 5] # "Apple" is inserted before "Kiwi". my_items.insert(my_items.bsearch_custom(apple, sort_by_amount, true), apple) - + var banana = ["Banana", 5] # "Banana" is inserted after "Kiwi". my_items.insert(my_items.bsearch_custom(banana, sort_by_amount, false), banana) - + # Prints [["Tomato", 2], ["Apple", 5], ["Kiwi", 5], ["Banana", 5], ["Rice", 9]] print(my_items) @@ -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:`DeepDuplicateMode`. By default, only internal resources will be duplicated (recursively). .. rst-class:: classref-item-separator @@ -734,10 +750,10 @@ The ``method`` receives one of the array elements as an argument, and should ret func is_even(number): return number % 2 == 0 - + func _ready(): print([1, 4, 5, 8].filter(is_even)) # Prints [4, 8] - + # Same as above, but using a lambda function. print([1, 4, 5, 8].filter(func(number): return number % 2 == 0)) @@ -782,7 +798,7 @@ Returns the index of the **first** element in the array that causes ``method`` t func is_even(number): return number % 2 == 0 - + func _ready(): print([1, 3, 4, 7].find_custom(is_even.bind())) # Prints 2 @@ -812,7 +828,9 @@ Returns the first element of the array. If the array is empty, fails and returns :ref:`Variant` **get**\ (\ index\: :ref:`int`\ ) |const| :ref:`🔗` -Returns the element at the given ``index`` in the array. This is the same as using the ``[]`` operator (``array[index]``). +Returns the element at the given ``index`` in the array. If ``index`` out-of-bounds or negative, this method fails and returns ``null``. + +This method is similar (but not identical) to the ``[]`` operator. Most notably, when this method fails, it doesn't pause project execution if run from the editor. .. rst-class:: classref-item-separator @@ -916,7 +934,7 @@ Returns a hashed 32-bit integer value representing the array and its contents. :ref:`int` **insert**\ (\ position\: :ref:`int`, value\: :ref:`Variant`\ ) :ref:`🔗` -Inserts a new element (``value``) at a given index (``position``) in the array. ``position`` should be between ``0`` and the array's :ref:`size()`. +Inserts a new element (``value``) at a given index (``position``) in the array. ``position`` should be between ``0`` and the array's :ref:`size()`. If negative, ``position`` is considered relative to the end of the array. Returns :ref:`@GlobalScope.OK` on success, or one of the other :ref:`Error` constants if this method fails. @@ -1011,10 +1029,10 @@ The ``method`` should take one :ref:`Variant` parameter (the curr func double(number): return number * 2 - + func _ready(): print([1, 2, 3].map(double)) # Prints [2, 4, 6] - + # Same as above, but using a lambda function. print([1, 2, 3].map(func(element): return element * 2)) @@ -1159,11 +1177,11 @@ The ``method`` takes two arguments: the current value of ``accum`` and the curre func sum(accum, number): return accum + number - + func _ready(): print([1, 2, 3].reduce(sum, 0)) # Prints 6 print([1, 2, 3].reduce(sum, 10)) # Prints 16 - + # Same as above, but using a lambda function. print([1, 2, 3].reduce(func(accum, number): return accum + number, 10)) @@ -1173,10 +1191,10 @@ If :ref:`max()` is not desirable, this method may also b func _ready(): var arr = [Vector2i(5, 0), Vector2i(3, 4), Vector2i(1, 2)] - + var longest_vec = arr.reduce(func(max, vec): return vec if is_length_greater(vec, max) else max) print(longest_vec) # Prints (3, 4) - + func is_length_greater(a, b): return a.length() > b.length() @@ -1186,7 +1204,7 @@ This method can also be used to count how many elements in an array satisfy a ce func is_even(number): return number % 2 == 0 - + func _ready(): var arr = [1, 2, 3, 4, 5] # If the current element is even, increment count, otherwise leave count the same. @@ -1205,7 +1223,7 @@ See also :ref:`map()`, :ref:`filter()`\ ) :ref:`🔗` -Removes the element from the array at the given index (``position``). If the index is out of bounds, this method fails. +Removes the element from the array at the given index (``position``). If the index is out of bounds, this method fails. If the index is negative, ``position`` is considered relative to the end of the array. If you need to return the removed element, use :ref:`pop_at()`. To remove an element by value, use :ref:`erase()` instead. @@ -1225,7 +1243,7 @@ If you need to return the removed element, use :ref:`pop_at()` on success, or one of the other :ref:`Error` constants if this method fails. +Returns :ref:`@GlobalScope.OK` on success, or one of the following :ref:`Error` constants if this method fails: :ref:`@GlobalScope.ERR_LOCKED` if the array is read-only, :ref:`@GlobalScope.ERR_INVALID_PARAMETER` if the size is negative, or :ref:`@GlobalScope.ERR_OUT_OF_MEMORY` if allocations fail. Use :ref:`size()` to find the actual size of the array after resize. \ **Note:** Calling this method once and assigning the new values is faster than calling :ref:`append()` for every new element. @@ -1319,16 +1337,16 @@ If either ``begin`` or ``end`` are negative, their value is relative to the end If ``step`` is negative, this method iterates through the array in reverse, returning a slice ordered backwards. For this to work, ``begin`` must be greater than ``end``. -If ``deep`` is ``true``, all nested **Array** and :ref:`Dictionary` elements in the slice are duplicated from the original, recursively. See also :ref:`duplicate()`). +If ``deep`` is ``true``, all nested **Array** and :ref:`Dictionary` elements in the slice are duplicated from the original, recursively. See also :ref:`duplicate()`. :: var letters = ["A", "B", "C", "D", "E", "F"] - + print(letters.slice(0, 2)) # Prints ["A", "B"] print(letters.slice(2, -2)) # Prints ["C", "D"] print(letters.slice(-2, 6)) # Prints ["E", "F"] - + print(letters.slice(0, 6, 2)) # Prints ["A", "C", "E"] print(letters.slice(4, 1, -1)) # Prints ["E", "D", "C"] @@ -1383,12 +1401,12 @@ Sorts the array using a custom :ref:`Callable`. if a[1] < b[1]: return true return false - + func _ready(): var my_items = [["Tomato", 5], ["Apple", 9], ["Rice", 4]] my_items.sort_custom(sort_ascending) print(my_items) # Prints [["Rice", 4], ["Tomato", 5], ["Apple", 9]] - + # Sort descending, using a lambda function. my_items.sort_custom(func(a, b): return a[1] > b[1]) print(my_items) # Prints [["Apple", 9], ["Tomato", 5], ["Rice", 4]] @@ -1537,6 +1555,7 @@ If all searched elements are equal, returns ``true`` if this array's size is gre Returns the :ref:`Variant` element at the specified ``index``. Arrays start at index 0. If ``index`` is greater or equal to ``0``, the element is fetched starting from the beginning of the array. If ``index`` is a negative value, the element is fetched starting from the end. Accessing an array out-of-bounds will cause a run-time error, pausing the project execution if run from the editor. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_arraymesh.rst b/classes/class_arraymesh.rst index 933c78db6..afbadf708 100644 --- a/classes/class_arraymesh.rst +++ b/classes/class_arraymesh.rst @@ -32,13 +32,13 @@ The most basic example is the creation of a single triangle: vertices.push_back(Vector3(0, 1, 0)) vertices.push_back(Vector3(1, 0, 0)) vertices.push_back(Vector3(0, 0, 1)) - + # Initialize the ArrayMesh. var arr_mesh = ArrayMesh.new() var arrays = [] arrays.resize(Mesh.ARRAY_MAX) arrays[Mesh.ARRAY_VERTEX] = vertices - + # Create the Mesh. arr_mesh.add_surface_from_arrays(Mesh.PRIMITIVE_TRIANGLES, arrays) var m = MeshInstance3D.new() @@ -52,13 +52,13 @@ The most basic example is the creation of a single triangle: new Vector3(1, 0, 0), new Vector3(0, 0, 1), ]; - + // Initialize the ArrayMesh. var arrMesh = new ArrayMesh(); Godot.Collections.Array arrays = []; arrays.Resize((int)Mesh.ArrayType.Max); arrays[(int)Mesh.ArrayType.Vertex] = vertices; - + // Create the Mesh. arrMesh.AddSurfaceFromArrays(Mesh.PrimitiveType.Triangles, arrays); var m = new MeshInstance3D(); @@ -165,7 +165,7 @@ Property Descriptions - |void| **set_blend_shape_mode**\ (\ value\: :ref:`BlendShapeMode`\ ) - :ref:`BlendShapeMode` **get_blend_shape_mode**\ (\ ) -Sets the blend shape mode to one of :ref:`BlendShapeMode`. +The blend shape mode. .. rst-class:: classref-item-separator @@ -436,7 +436,7 @@ Sets a name for a given surface. .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -450,7 +450,7 @@ Sets a name for a given surface. .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -464,9 +464,10 @@ Sets a name for a given surface. .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_arrayoccluder3d.rst b/classes/class_arrayoccluder3d.rst index dc12f90d6..24daff738 100644 --- a/classes/class_arrayoccluder3d.rst +++ b/classes/class_arrayoccluder3d.rst @@ -121,6 +121,7 @@ Method Descriptions Sets :ref:`indices` and :ref:`vertices`, while updating the final occluder only once after both values are set. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_aspectratiocontainer.rst b/classes/class_aspectratiocontainer.rst index c9e5b02c1..d606f09ad 100644 --- a/classes/class_aspectratiocontainer.rst +++ b/classes/class_aspectratiocontainer.rst @@ -203,6 +203,7 @@ The aspect ratio to enforce on child controls. This is the width divided by the The stretch mode used to align child controls. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_astar2d.rst b/classes/class_astar2d.rst index 0163a1909..ecbe19af6 100644 --- a/classes/class_astar2d.rst +++ b/classes/class_astar2d.rst @@ -23,6 +23,25 @@ An implementation of the A\* algorithm, used to find the shortest path between t See :ref:`AStar3D` for a more thorough explanation on how to use this class. **AStar2D** is a wrapper for :ref:`AStar3D` that enforces 2D coordinates. +.. rst-class:: classref-introduction-group + +Tutorials +--------- + +- `Grid-based Navigation with AStarGrid2D Demo `__ + +.. rst-class:: classref-reftable-group + +Properties +---------- + +.. table:: + :widths: auto + + +-------------------------+--------------------------------------------------------------------------------+-----------+ + | :ref:`bool` | :ref:`neighbor_filter_enabled` | ``false`` | + +-------------------------+--------------------------------------------------------------------------------+-----------+ + .. rst-class:: classref-reftable-group Methods @@ -36,6 +55,8 @@ Methods +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`float` | :ref:`_estimate_cost`\ (\ from_id\: :ref:`int`, end_id\: :ref:`int`\ ) |virtual| |const| | +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`_filter_neighbor`\ (\ from_id\: :ref:`int`, neighbor_id\: :ref:`int`\ ) |virtual| |const| | + +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`add_point`\ (\ id\: :ref:`int`, position\: :ref:`Vector2`, weight_scale\: :ref:`float` = 1.0\ ) | +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`are_points_connected`\ (\ id\: :ref:`int`, to_id\: :ref:`int`, bidirectional\: :ref:`bool` = true\ ) |const| | @@ -89,6 +110,28 @@ Methods .. rst-class:: classref-descriptions-group +Property Descriptions +--------------------- + +.. _class_AStar2D_property_neighbor_filter_enabled: + +.. rst-class:: classref-property + +:ref:`bool` **neighbor_filter_enabled** = ``false`` :ref:`🔗` + +.. rst-class:: classref-property-setget + +- |void| **set_neighbor_filter_enabled**\ (\ value\: :ref:`bool`\ ) +- :ref:`bool` **is_neighbor_filter_enabled**\ (\ ) + +If ``true`` enables the filtering of neighbors via :ref:`_filter_neighbor()`. + +.. rst-class:: classref-section-separator + +---- + +.. rst-class:: classref-descriptions-group + Method Descriptions ------------------- @@ -120,6 +163,20 @@ Note that this function is hidden in the default **AStar2D** class. ---- +.. _class_AStar2D_private_method__filter_neighbor: + +.. rst-class:: classref-method + +:ref:`bool` **_filter_neighbor**\ (\ from_id\: :ref:`int`, neighbor_id\: :ref:`int`\ ) |virtual| |const| :ref:`🔗` + +Called when neighboring enters processing and if :ref:`neighbor_filter_enabled` is ``true``. If ``true`` is returned the point will not be processed. + +Note that this function is hidden in the default **AStar2D** class. + +.. rst-class:: classref-item-separator + +---- + .. _class_AStar2D_method_add_point: .. rst-class:: classref-method @@ -301,12 +358,12 @@ If there is no valid path to the target, and ``allow_partial_path`` is ``true``, astar.add_point(2, Vector2(0, 1), 1) # Default weight is 1 astar.add_point(3, Vector2(1, 1)) astar.add_point(4, Vector2(2, 0)) - + astar.connect_points(1, 2, false) astar.connect_points(2, 3, false) astar.connect_points(4, 3, false) astar.connect_points(1, 4, false) - + var res = astar.get_id_path(1, 3) # Returns [1, 2, 3] .. code-tab:: csharp @@ -316,7 +373,7 @@ If there is no valid path to the target, and ``allow_partial_path`` is ``true``, astar.AddPoint(2, new Vector2(0, 1), 1); // Default weight is 1 astar.AddPoint(3, new Vector2(1, 1)); astar.AddPoint(4, new Vector2(2, 0)); - + astar.ConnectPoints(1, 2, false); astar.ConnectPoints(2, 3, false); astar.ConnectPoints(4, 3, false); @@ -361,10 +418,10 @@ Returns an array with the IDs of the points that form the connection with the gi astar.add_point(2, Vector2(0, 1)) astar.add_point(3, Vector2(1, 1)) astar.add_point(4, Vector2(2, 0)) - + astar.connect_points(1, 2, true) astar.connect_points(1, 3, true) - + var neighbors = astar.get_point_connections(1) # Returns [2, 3] .. code-tab:: csharp @@ -374,10 +431,10 @@ Returns an array with the IDs of the points that form the connection with the gi astar.AddPoint(2, new Vector2(0, 1)); astar.AddPoint(3, new Vector2(1, 1)); astar.AddPoint(4, new Vector2(2, 0)); - + astar.ConnectPoints(1, 2, true); astar.ConnectPoints(1, 3, true); - + long[] neighbors = astar.GetPointConnections(1); // Returns [2, 3] @@ -420,7 +477,7 @@ Returns an array with the points that are in the path found by AStar2D between t If there is no valid path to the target, and ``allow_partial_path`` is ``true``, returns a path to the point closest to the target that can be reached. -\ **Note:** This method is not thread-safe. If called from a :ref:`Thread`, it will return an empty array and will print an error message. +\ **Note:** This method is not thread-safe; it can only be used from a single :ref:`Thread` at a given time. Consider using :ref:`Mutex` to ensure exclusive access to one thread to avoid race conditions. Additionally, when ``allow_partial_path`` is ``true`` and ``to_id`` is disabled the search may take an unusually long time to finish. @@ -494,7 +551,7 @@ Removes the point associated with the given ``id`` from the points pool. |void| **reserve_space**\ (\ num_nodes\: :ref:`int`\ ) :ref:`🔗` -Reserves space internally for ``num_nodes`` points. Useful if you're adding a known large number of points at once, such as points on a grid. The new capacity must be greater or equal to the old capacity. +Reserves space internally for ``num_nodes`` points. Useful if you're adding a known large number of points at once, such as points on a grid. .. rst-class:: classref-item-separator @@ -533,6 +590,7 @@ Sets the ``position`` for the point with the given ``id``. Sets the ``weight_scale`` for the point with the given ``id``. The ``weight_scale`` is multiplied by the result of :ref:`_compute_cost()` when determining the overall cost of traveling across a segment from a neighboring point to this point. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_astar3d.rst b/classes/class_astar3d.rst index 27cc83369..e2d486e0a 100644 --- a/classes/class_astar3d.rst +++ b/classes/class_astar3d.rst @@ -34,12 +34,12 @@ It is also possible to use non-Euclidean distances. To do so, create a script th class_name MyAStar3D extends AStar3D - + func _compute_cost(u, v): var u_pos = get_point_position(u) var v_pos = get_point_position(v) return abs(u_pos.x - v_pos.x) + abs(u_pos.y - v_pos.y) + abs(u_pos.z - v_pos.z) - + func _estimate_cost(u, v): var u_pos = get_point_position(u) var v_pos = get_point_position(v) @@ -48,7 +48,7 @@ It is also possible to use non-Euclidean distances. To do so, create a script th .. code-tab:: csharp using Godot; - + [GlobalClass] public partial class MyAStar3D : AStar3D { @@ -56,10 +56,10 @@ It is also possible to use non-Euclidean distances. To do so, create a script th { Vector3 fromPoint = GetPointPosition(fromId); Vector3 toPoint = GetPointPosition(toId); - + return Mathf.Abs(fromPoint.X - toPoint.X) + Mathf.Abs(fromPoint.Y - toPoint.Y) + Mathf.Abs(fromPoint.Z - toPoint.Z); } - + public override float _EstimateCost(long fromId, long toId) { Vector3 fromPoint = GetPointPosition(fromId); @@ -76,6 +76,18 @@ If the default :ref:`_estimate_cost()` | :ref:`neighbor_filter_enabled` | ``false`` | + +-------------------------+--------------------------------------------------------------------------------+-----------+ + +.. rst-class:: classref-reftable-group + Methods ------- @@ -87,6 +99,8 @@ Methods +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`float` | :ref:`_estimate_cost`\ (\ from_id\: :ref:`int`, end_id\: :ref:`int`\ ) |virtual| |const| | +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`_filter_neighbor`\ (\ from_id\: :ref:`int`, neighbor_id\: :ref:`int`\ ) |virtual| |const| | + +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`add_point`\ (\ id\: :ref:`int`, position\: :ref:`Vector3`, weight_scale\: :ref:`float` = 1.0\ ) | +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`are_points_connected`\ (\ id\: :ref:`int`, to_id\: :ref:`int`, bidirectional\: :ref:`bool` = true\ ) |const| | @@ -140,6 +154,28 @@ Methods .. rst-class:: classref-descriptions-group +Property Descriptions +--------------------- + +.. _class_AStar3D_property_neighbor_filter_enabled: + +.. rst-class:: classref-property + +:ref:`bool` **neighbor_filter_enabled** = ``false`` :ref:`🔗` + +.. rst-class:: classref-property-setget + +- |void| **set_neighbor_filter_enabled**\ (\ value\: :ref:`bool`\ ) +- :ref:`bool` **is_neighbor_filter_enabled**\ (\ ) + +If ``true`` enables the filtering of neighbors via :ref:`_filter_neighbor()`. + +.. rst-class:: classref-section-separator + +---- + +.. rst-class:: classref-descriptions-group + Method Descriptions ------------------- @@ -171,6 +207,20 @@ Note that this function is hidden in the default **AStar3D** class. ---- +.. _class_AStar3D_private_method__filter_neighbor: + +.. rst-class:: classref-method + +:ref:`bool` **_filter_neighbor**\ (\ from_id\: :ref:`int`, neighbor_id\: :ref:`int`\ ) |virtual| |const| :ref:`🔗` + +Called when neighboring point enters processing and if :ref:`neighbor_filter_enabled` is ``true``. If ``true`` is returned the point will not be processed. + +Note that this function is hidden in the default **AStar3D** class. + +.. rst-class:: classref-item-separator + +---- + .. _class_AStar3D_method_add_point: .. rst-class:: classref-method @@ -352,12 +402,12 @@ If there is no valid path to the target, and ``allow_partial_path`` is ``true``, astar.add_point(2, Vector3(0, 1, 0), 1) # Default weight is 1 astar.add_point(3, Vector3(1, 1, 0)) astar.add_point(4, Vector3(2, 0, 0)) - + astar.connect_points(1, 2, false) astar.connect_points(2, 3, false) astar.connect_points(4, 3, false) astar.connect_points(1, 4, false) - + var res = astar.get_id_path(1, 3) # Returns [1, 2, 3] .. code-tab:: csharp @@ -411,10 +461,10 @@ Returns an array with the IDs of the points that form the connection with the gi astar.add_point(2, Vector3(0, 1, 0)) astar.add_point(3, Vector3(1, 1, 0)) astar.add_point(4, Vector3(2, 0, 0)) - + astar.connect_points(1, 2, true) astar.connect_points(1, 3, true) - + var neighbors = astar.get_point_connections(1) # Returns [2, 3] .. code-tab:: csharp @@ -426,7 +476,7 @@ Returns an array with the IDs of the points that form the connection with the gi astar.AddPoint(4, new Vector3(2, 0, 0)); astar.ConnectPoints(1, 2, true); astar.ConnectPoints(1, 3, true); - + long[] neighbors = astar.GetPointConnections(1); // Returns [2, 3] @@ -469,7 +519,7 @@ Returns an array with the points that are in the path found by AStar3D between t If there is no valid path to the target, and ``allow_partial_path`` is ``true``, returns a path to the point closest to the target that can be reached. -\ **Note:** This method is not thread-safe. If called from a :ref:`Thread`, it will return an empty array and will print an error message. +\ **Note:** This method is not thread-safe; it can only be used from a single :ref:`Thread` at a given time. Consider using :ref:`Mutex` to ensure exclusive access to one thread to avoid race conditions. Additionally, when ``allow_partial_path`` is ``true`` and ``to_id`` is disabled the search may take an unusually long time to finish. @@ -543,7 +593,7 @@ Removes the point associated with the given ``id`` from the points pool. |void| **reserve_space**\ (\ num_nodes\: :ref:`int`\ ) :ref:`🔗` -Reserves space internally for ``num_nodes`` points. Useful if you're adding a known large number of points at once, such as points on a grid. New capacity must be greater or equals to old capacity. +Reserves space internally for ``num_nodes`` points. Useful if you're adding a known large number of points at once, such as points on a grid. .. rst-class:: classref-item-separator @@ -582,6 +632,7 @@ Sets the ``position`` for the point with the given ``id``. Sets the ``weight_scale`` for the point with the given ``id``. The ``weight_scale`` is multiplied by the result of :ref:`_compute_cost()` when determining the overall cost of traveling across a segment from a neighboring point to this point. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_astargrid2d.rst b/classes/class_astargrid2d.rst index 1f39894da..9c74a63e6 100644 --- a/classes/class_astargrid2d.rst +++ b/classes/class_astargrid2d.rst @@ -48,6 +48,13 @@ To use **AStarGrid2D**, you only need to set the :ref:`region`. +.. rst-class:: classref-introduction-group + +Tutorials +--------- + +- `Grid-based Navigation with AStarGrid2D Demo `__ + .. rst-class:: classref-reftable-group Properties @@ -573,7 +580,7 @@ Returns an array with the points that are in the path found by **AStarGrid2D** b If there is no valid path to the target, and ``allow_partial_path`` is ``true``, returns a path to the point closest to the target that can be reached. -\ **Note:** This method is not thread-safe. If called from a :ref:`Thread`, it will return an empty array and will print an error message. +\ **Note:** This method is not thread-safe; it can only be used from a single :ref:`Thread` at a given time. Consider using :ref:`Mutex` to ensure exclusive access to one thread to avoid race conditions. Additionally, when ``allow_partial_path`` is ``true`` and ``to_id`` is solid the search may take an unusually long time to finish. @@ -692,6 +699,7 @@ Updates the internal state of the grid according to the parameters to prepare it \ **Note:** All point data (solidity and weight scale) will be cleared. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_atlastexture.rst b/classes/class_atlastexture.rst index ff3384aa7..9dc025ebf 100644 --- a/classes/class_atlastexture.rst +++ b/classes/class_atlastexture.rst @@ -119,6 +119,7 @@ The margin around the :ref:`region`. Useful The region used to draw the :ref:`atlas`. If either dimension of the region's size is ``0``, the value from :ref:`atlas` size will be used for that axis instead. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_audiobuslayout.rst b/classes/class_audiobuslayout.rst index 80fe120f2..9ad3ccbf1 100644 --- a/classes/class_audiobuslayout.rst +++ b/classes/class_audiobuslayout.rst @@ -22,6 +22,7 @@ Description Stores position, muting, solo, bypass, effects, effect position, volume, and the connections between buses. See :ref:`AudioServer` for usage. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_audioeffect.rst b/classes/class_audioeffect.rst index 37e650c80..fc5631d53 100644 --- a/classes/class_audioeffect.rst +++ b/classes/class_audioeffect.rst @@ -42,9 +42,9 @@ Methods .. table:: :widths: auto - +-------------------------------------------------------+------------------------------------------------------------------------------------+ - | :ref:`AudioEffectInstance` | :ref:`_instantiate`\ (\ ) |virtual| | - +-------------------------------------------------------+------------------------------------------------------------------------------------+ + +-------------------------------------------------------+-----------------------------------------------------------------------------------------------+ + | :ref:`AudioEffectInstance` | :ref:`_instantiate`\ (\ ) |virtual| |required| | + +-------------------------------------------------------+-----------------------------------------------------------------------------------------------+ .. rst-class:: classref-section-separator @@ -59,25 +59,26 @@ Method Descriptions .. rst-class:: classref-method -:ref:`AudioEffectInstance` **_instantiate**\ (\ ) |virtual| :ref:`🔗` +:ref:`AudioEffectInstance` **_instantiate**\ (\ ) |virtual| |required| :ref:`🔗` Override this method to customize the :ref:`AudioEffectInstance` created when this effect is applied on a bus in the editor's Audio panel, or through :ref:`AudioServer.add_bus_effect()`. :: extends AudioEffect - + @export var strength = 4.0 - + func _instantiate(): var effect = CustomAudioEffectInstance.new() effect.base = self - + return effect \ **Note:** It is recommended to keep a reference to the original **AudioEffect** in the new instance. Depending on the implementation this allows the effect instance to listen for changes at run-time and be modified accordingly. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_audioeffectamplify.rst b/classes/class_audioeffectamplify.rst index d34dc304d..764c65e23 100644 --- a/classes/class_audioeffectamplify.rst +++ b/classes/class_audioeffectamplify.rst @@ -84,6 +84,7 @@ Amount of amplification as a linear value. \ **Note:** This member modifies :ref:`volume_db` for convenience. The returned value is equivalent to the result of :ref:`@GlobalScope.db_to_linear()` on :ref:`volume_db`. Setting this member is equivalent to setting :ref:`volume_db` to the result of :ref:`@GlobalScope.linear_to_db()` on a value. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_audioeffectbandlimitfilter.rst b/classes/class_audioeffectbandlimitfilter.rst index 031ef9750..1fdfe5753 100644 --- a/classes/class_audioeffectbandlimitfilter.rst +++ b/classes/class_audioeffectbandlimitfilter.rst @@ -29,6 +29,7 @@ Tutorials - :doc:`Audio buses <../tutorials/audio/audio_buses>` .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_audioeffectbandpassfilter.rst b/classes/class_audioeffectbandpassfilter.rst index 186024ed7..1647ea0cd 100644 --- a/classes/class_audioeffectbandpassfilter.rst +++ b/classes/class_audioeffectbandpassfilter.rst @@ -29,6 +29,7 @@ Tutorials - :doc:`Audio buses <../tutorials/audio/audio_buses>` .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_audioeffectcapture.rst b/classes/class_audioeffectcapture.rst index 0bf82ded8..e4ce9269a 100644 --- a/classes/class_audioeffectcapture.rst +++ b/classes/class_audioeffectcapture.rst @@ -186,6 +186,7 @@ Returns the number of frames available to read using :ref:`get_buffer()`! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -621,7 +621,7 @@ Method Descriptions .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -635,7 +635,7 @@ Method Descriptions .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -649,7 +649,7 @@ Method Descriptions .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -663,7 +663,7 @@ Method Descriptions .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -677,7 +677,7 @@ Method Descriptions .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -691,7 +691,7 @@ Method Descriptions .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -705,7 +705,7 @@ Method Descriptions .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -719,7 +719,7 @@ Method Descriptions .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -733,7 +733,7 @@ Method Descriptions .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -747,7 +747,7 @@ Method Descriptions .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -761,9 +761,10 @@ Method Descriptions .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_audioeffectcompressor.rst b/classes/class_audioeffectcompressor.rst index 9df4dc5cb..77abbe9c6 100644 --- a/classes/class_audioeffectcompressor.rst +++ b/classes/class_audioeffectcompressor.rst @@ -25,7 +25,7 @@ Dynamic range compressor reduces the level of the sound when the amplitude goes Compressor has many uses in the mix: -- In the Master bus to compress the whole output (although an :ref:`AudioEffectLimiter` is probably better). +- In the Master bus to compress the whole output (although an :ref:`AudioEffectHardLimiter` is probably better). - In voice channels to ensure they sound as balanced as possible. @@ -189,6 +189,7 @@ Reduce the sound level using another audio bus for threshold detection. The level above which compression is applied to the audio. Value can range from -60 to 0. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_audioeffectdelay.rst b/classes/class_audioeffectdelay.rst index 3356f6032..3bdebd7b4 100644 --- a/classes/class_audioeffectdelay.rst +++ b/classes/class_audioeffectdelay.rst @@ -293,6 +293,7 @@ Sound level for the second tap. Pan position for the second tap. Value can range from -1 (fully left) to 1 (fully right). .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_audioeffectdistortion.rst b/classes/class_audioeffectdistortion.rst index ef3dd1235..f5fffb1af 100644 --- a/classes/class_audioeffectdistortion.rst +++ b/classes/class_audioeffectdistortion.rst @@ -83,7 +83,7 @@ Digital distortion effect which cuts off peaks at the top and bottom of the wave .. container:: contribute - There is currently no description for this enum. Please help us by :ref:`contributing one `! + There is currently no description for this enum. Please help us by `contributing one `__! @@ -202,6 +202,7 @@ Increases or decreases the volume after the effect, in decibels. Value can range Increases or decreases the volume before the effect, in decibels. Value can range from -60 to 60. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_audioeffecteq.rst b/classes/class_audioeffecteq.rst index 1200927b7..b2d3eb110 100644 --- a/classes/class_audioeffecteq.rst +++ b/classes/class_audioeffecteq.rst @@ -90,6 +90,7 @@ Returns the band's gain at the specified index, in dB. Sets band's gain at the specified index, in dB. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_audioeffecteq10.rst b/classes/class_audioeffecteq10.rst index fe6ec7273..fab663d26 100644 --- a/classes/class_audioeffecteq10.rst +++ b/classes/class_audioeffecteq10.rst @@ -53,6 +53,7 @@ Tutorials - :doc:`Audio buses <../tutorials/audio/audio_buses>` .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_audioeffecteq21.rst b/classes/class_audioeffecteq21.rst index d7dcd58ee..403e88699 100644 --- a/classes/class_audioeffecteq21.rst +++ b/classes/class_audioeffecteq21.rst @@ -75,6 +75,7 @@ Tutorials - :doc:`Audio buses <../tutorials/audio/audio_buses>` .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_audioeffecteq6.rst b/classes/class_audioeffecteq6.rst index 139c4c25c..a0c8de1cc 100644 --- a/classes/class_audioeffecteq6.rst +++ b/classes/class_audioeffecteq6.rst @@ -45,6 +45,7 @@ Tutorials - :doc:`Audio buses <../tutorials/audio/audio_buses>` .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_audioeffectfilter.rst b/classes/class_audioeffectfilter.rst index 11e939b66..0f1773358 100644 --- a/classes/class_audioeffectfilter.rst +++ b/classes/class_audioeffectfilter.rst @@ -169,6 +169,7 @@ Gain amount of the frequencies after the filter. Amount of boost in the frequency range near the cutoff frequency. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_audioeffecthardlimiter.rst b/classes/class_audioeffecthardlimiter.rst index d576bce82..3620fdd79 100644 --- a/classes/class_audioeffecthardlimiter.rst +++ b/classes/class_audioeffecthardlimiter.rst @@ -103,6 +103,7 @@ Gain to apply before limiting, in decibels. Time it takes in seconds for the gain reduction to fully release. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_audioeffecthighpassfilter.rst b/classes/class_audioeffecthighpassfilter.rst index 3d5763b3d..8c480cb82 100644 --- a/classes/class_audioeffecthighpassfilter.rst +++ b/classes/class_audioeffecthighpassfilter.rst @@ -29,6 +29,7 @@ Tutorials - :doc:`Audio buses <../tutorials/audio/audio_buses>` .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_audioeffecthighshelffilter.rst b/classes/class_audioeffecthighshelffilter.rst index 11dc41768..7c7e01d55 100644 --- a/classes/class_audioeffecthighshelffilter.rst +++ b/classes/class_audioeffecthighshelffilter.rst @@ -29,6 +29,7 @@ Tutorials - :doc:`Audio buses <../tutorials/audio/audio_buses>` .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_audioeffectinstance.rst b/classes/class_audioeffectinstance.rst index 663b8cfdf..6d55bf362 100644 --- a/classes/class_audioeffectinstance.rst +++ b/classes/class_audioeffectinstance.rst @@ -38,11 +38,11 @@ Methods .. table:: :widths: auto - +-------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_process`\ (\ src_buffer\: ``const void*``, dst_buffer\: ``AudioFrame*``, frame_count\: :ref:`int`\ ) |virtual| | - +-------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`_process_silence`\ (\ ) |virtual| |const| | - +-------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + +-------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_process`\ (\ src_buffer\: ``const void*``, dst_buffer\: ``AudioFrame*``, frame_count\: :ref:`int`\ ) |virtual| |required| | + +-------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`_process_silence`\ (\ ) |virtual| |const| | + +-------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ .. rst-class:: classref-section-separator @@ -57,7 +57,7 @@ Method Descriptions .. rst-class:: classref-method -|void| **_process**\ (\ src_buffer\: ``const void*``, dst_buffer\: ``AudioFrame*``, frame_count\: :ref:`int`\ ) |virtual| :ref:`🔗` +|void| **_process**\ (\ src_buffer\: ``const void*``, dst_buffer\: ``AudioFrame*``, frame_count\: :ref:`int`\ ) |virtual| |required| :ref:`🔗` Called by the :ref:`AudioServer` to process this effect. When :ref:`_process_silence()` is not overridden or it returns ``false``, this method is called only when the bus is active. @@ -78,6 +78,7 @@ Override this method to customize the processing behavior of this effect instanc Should return ``true`` to force the :ref:`AudioServer` to always call :ref:`_process()`, even if the bus has been muted or cannot otherwise be heard. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_audioeffectlimiter.rst b/classes/class_audioeffectlimiter.rst index 5eeae4ec3..652e2dd42 100644 --- a/classes/class_audioeffectlimiter.rst +++ b/classes/class_audioeffectlimiter.rst @@ -106,7 +106,7 @@ Applies a gain to the limited waves, in decibels. Value can range from 0 to 6. .. container:: contribute - There is currently no description for this property. Please help us by :ref:`contributing one `! + There is currently no description for this property. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -126,6 +126,7 @@ Applies a gain to the limited waves, in decibels. Value can range from 0 to 6. Threshold from which the limiter begins to be active, in decibels. Value can range from -30 to 0. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_audioeffectlowpassfilter.rst b/classes/class_audioeffectlowpassfilter.rst index bcf0160b8..6975557b2 100644 --- a/classes/class_audioeffectlowpassfilter.rst +++ b/classes/class_audioeffectlowpassfilter.rst @@ -29,6 +29,7 @@ Tutorials - :doc:`Audio buses <../tutorials/audio/audio_buses>` .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_audioeffectlowshelffilter.rst b/classes/class_audioeffectlowshelffilter.rst index f42fcbdf4..33e2b5653 100644 --- a/classes/class_audioeffectlowshelffilter.rst +++ b/classes/class_audioeffectlowshelffilter.rst @@ -29,6 +29,7 @@ Tutorials - :doc:`Audio buses <../tutorials/audio/audio_buses>` .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_audioeffectnotchfilter.rst b/classes/class_audioeffectnotchfilter.rst index d7d6847e5..d701c1b46 100644 --- a/classes/class_audioeffectnotchfilter.rst +++ b/classes/class_audioeffectnotchfilter.rst @@ -29,6 +29,7 @@ Tutorials - :doc:`Audio buses <../tutorials/audio/audio_buses>` .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_audioeffectpanner.rst b/classes/class_audioeffectpanner.rst index 7638e38ab..6927fb5b8 100644 --- a/classes/class_audioeffectpanner.rst +++ b/classes/class_audioeffectpanner.rst @@ -63,6 +63,7 @@ Property Descriptions Pan position. Value can range from -1 (fully left) to 1 (fully right). .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_audioeffectphaser.rst b/classes/class_audioeffectphaser.rst index 015a6faa3..9f696b69b 100644 --- a/classes/class_audioeffectphaser.rst +++ b/classes/class_audioeffectphaser.rst @@ -70,7 +70,7 @@ Property Descriptions - |void| **set_depth**\ (\ value\: :ref:`float`\ ) - :ref:`float` **get_depth**\ (\ ) -Governs how high the filter frequencies sweep. Low value will primarily affect bass frequencies. High value can sweep high into the treble. Value can range from 0.1 to 4. +Determines how high the filter frequencies sweep. Low value will primarily affect bass frequencies. High value can sweep high into the treble. Value can range from ``0.1`` to ``4.0``. .. rst-class:: classref-item-separator @@ -141,6 +141,7 @@ Determines the minimum frequency affected by the LFO modulations, in Hz. Value c Adjusts the rate in Hz at which the effect sweeps up and down across the frequency range. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_audioeffectpitchshift.rst b/classes/class_audioeffectpitchshift.rst index 9ba21b4ae..bde396a61 100644 --- a/classes/class_audioeffectpitchshift.rst +++ b/classes/class_audioeffectpitchshift.rst @@ -166,6 +166,7 @@ The oversampling factor to use. Higher values result in better quality, but are The pitch scale to use. ``1.0`` is the default pitch and plays sounds unaffected. :ref:`pitch_scale` can range from ``0.0`` (infinitely low pitch, inaudible) to ``16`` (16 times higher than the initial pitch). .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_audioeffectrecord.rst b/classes/class_audioeffectrecord.rst index c1e2646fd..cb5eccc69 100644 --- a/classes/class_audioeffectrecord.rst +++ b/classes/class_audioeffectrecord.rst @@ -84,7 +84,7 @@ Property Descriptions - |void| **set_format**\ (\ value\: :ref:`Format`\ ) - :ref:`Format` **get_format**\ (\ ) -Specifies the format in which the sample will be recorded. See :ref:`Format` for available formats. +Specifies the format in which the sample will be recorded. .. rst-class:: classref-section-separator @@ -128,6 +128,7 @@ Returns whether the recording is active or not. If ``true``, the sound will be recorded. Note that restarting the recording will remove the previously recorded sample. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_audioeffectreverb.rst b/classes/class_audioeffectreverb.rst index 86c999fd9..7b82e1f92 100644 --- a/classes/class_audioeffectreverb.rst +++ b/classes/class_audioeffectreverb.rst @@ -198,6 +198,7 @@ Widens or narrows the stereo image of the reverb tail. 1 means fully widens. Val Output percent of modified sound. At 0, only original sound is outputted. Value can range from 0 to 1. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_audioeffectspectrumanalyzer.rst b/classes/class_audioeffectspectrumanalyzer.rst index c2a69ce0e..b769cec6f 100644 --- a/classes/class_audioeffectspectrumanalyzer.rst +++ b/classes/class_audioeffectspectrumanalyzer.rst @@ -167,9 +167,10 @@ The size of the `Fast Fourier transform `! + There is currently no description for this property. Please help us by `contributing one `__! .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_audioeffectspectrumanalyzerinstance.rst b/classes/class_audioeffectspectrumanalyzerinstance.rst index 2fd45adc7..bcabc2220 100644 --- a/classes/class_audioeffectspectrumanalyzerinstance.rst +++ b/classes/class_audioeffectspectrumanalyzerinstance.rst @@ -90,9 +90,10 @@ Method Descriptions Returns the magnitude of the frequencies from ``from_hz`` to ``to_hz`` in linear energy as a Vector2. The ``x`` component of the return value represents the left stereo channel, and ``y`` represents the right channel. -\ ``mode`` determines how the frequency range will be processed. See :ref:`MagnitudeMode`. +\ ``mode`` determines how the frequency range will be processed. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_audioeffectstereoenhance.rst b/classes/class_audioeffectstereoenhance.rst index 2b4b2015e..7d492e9ca 100644 --- a/classes/class_audioeffectstereoenhance.rst +++ b/classes/class_audioeffectstereoenhance.rst @@ -101,6 +101,7 @@ Widens sound stage through phase shifting in conjunction with :ref:`time_pullout Widens sound stage through phase shifting in conjunction with :ref:`surround`. Just delays the right channel if :ref:`surround` is 0. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_audiolistener2d.rst b/classes/class_audiolistener2d.rst index 4f058e447..1d9d0da1d 100644 --- a/classes/class_audiolistener2d.rst +++ b/classes/class_audiolistener2d.rst @@ -86,6 +86,7 @@ Makes the **AudioListener2D** active, setting it as the hearing point for the so This method will have no effect if the **AudioListener2D** is not added to :ref:`SceneTree`. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_audiolistener3d.rst b/classes/class_audiolistener3d.rst index c38a44640..5bc0d1f88 100644 --- a/classes/class_audiolistener3d.rst +++ b/classes/class_audiolistener3d.rst @@ -26,6 +26,18 @@ Once added to the scene tree and enabled using :ref:`make_current()` | :ref:`doppler_tracking` | ``0`` | + +--------------------------------------------------------------+--------------------------------------------------------------------------+-------+ + +.. rst-class:: classref-reftable-group + Methods ------- @@ -48,6 +60,69 @@ Methods .. rst-class:: classref-descriptions-group +Enumerations +------------ + +.. _enum_AudioListener3D_DopplerTracking: + +.. rst-class:: classref-enumeration + +enum **DopplerTracking**: :ref:`🔗` + +.. _class_AudioListener3D_constant_DOPPLER_TRACKING_DISABLED: + +.. rst-class:: classref-enumeration-constant + +:ref:`DopplerTracking` **DOPPLER_TRACKING_DISABLED** = ``0`` + +Disables `Doppler effect `__ simulation (default). + +.. _class_AudioListener3D_constant_DOPPLER_TRACKING_IDLE_STEP: + +.. rst-class:: classref-enumeration-constant + +:ref:`DopplerTracking` **DOPPLER_TRACKING_IDLE_STEP** = ``1`` + +Simulate `Doppler effect `__ by tracking positions of objects that are changed in ``_process``. Changes in the relative velocity of this listener compared to those objects affect how audio is perceived (changing the audio's :ref:`AudioStreamPlayer3D.pitch_scale`). + +.. _class_AudioListener3D_constant_DOPPLER_TRACKING_PHYSICS_STEP: + +.. rst-class:: classref-enumeration-constant + +:ref:`DopplerTracking` **DOPPLER_TRACKING_PHYSICS_STEP** = ``2`` + +Simulate `Doppler effect `__ by tracking positions of objects that are changed in ``_physics_process``. Changes in the relative velocity of this listener compared to those objects affect how audio is perceived (changing the audio's :ref:`AudioStreamPlayer3D.pitch_scale`). + +.. rst-class:: classref-section-separator + +---- + +.. rst-class:: classref-descriptions-group + +Property Descriptions +--------------------- + +.. _class_AudioListener3D_property_doppler_tracking: + +.. rst-class:: classref-property + +:ref:`DopplerTracking` **doppler_tracking** = ``0`` :ref:`🔗` + +.. rst-class:: classref-property-setget + +- |void| **set_doppler_tracking**\ (\ value\: :ref:`DopplerTracking`\ ) +- :ref:`DopplerTracking` **get_doppler_tracking**\ (\ ) + +If not :ref:`DOPPLER_TRACKING_DISABLED`, this listener will simulate the `Doppler effect `__ for objects changed in particular ``_process`` methods. + +\ **Note:** The Doppler effect will only be heard on :ref:`AudioStreamPlayer3D`\ s if :ref:`AudioStreamPlayer3D.doppler_tracking` is not set to :ref:`AudioStreamPlayer3D.DOPPLER_TRACKING_DISABLED`. + +.. rst-class:: classref-section-separator + +---- + +.. rst-class:: classref-descriptions-group + Method Descriptions ------------------- @@ -98,6 +173,7 @@ Returns ``true`` if the listener was made current using :ref:`make_current()` | :ref:`_get_stream_name`\ (\ ) |virtual| |const| | +------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------+ + | :ref:`Dictionary` | :ref:`_get_tags`\ (\ ) |virtual| |const| | + +------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`_has_loop`\ (\ ) |virtual| |const| | +------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------+ | :ref:`AudioStreamPlayback` | :ref:`_instantiate_playback`\ (\ ) |virtual| |const| | @@ -178,6 +180,20 @@ Override this method to customize the name assigned to this audio stream. Unused ---- +.. _class_AudioStream_private_method__get_tags: + +.. rst-class:: classref-method + +:ref:`Dictionary` **_get_tags**\ (\ ) |virtual| |const| :ref:`🔗` + +Override this method to customize the tags for this audio stream. Should return a :ref:`Dictionary` of strings with the tag as the key and its content as the value. + +Commonly used tags include ``title``, ``artist``, ``album``, ``tracknumber``, and ``date``. + +.. rst-class:: classref-item-separator + +---- + .. _class_AudioStream_private_method__has_loop: .. rst-class:: classref-method @@ -248,7 +264,7 @@ Generates an :ref:`AudioSample` based on the current stream. :ref:`float` **get_length**\ (\ ) |const| :ref:`🔗` -Returns the length of the audio stream in seconds. +Returns the length of the audio stream in seconds. If this stream is an :ref:`AudioStreamRandomizer`, returns the length of the last played stream. If this stream has an indefinite length (such as for :ref:`AudioStreamGenerator` and :ref:`AudioStreamMicrophone`), returns ``0.0``. .. rst-class:: classref-item-separator @@ -287,6 +303,7 @@ Returns ``true`` if the stream is a collection of other streams, ``false`` other Returns ``true`` if this audio stream only supports one channel (*monophony*), or ``false`` if the audio stream supports two or more channels (*polyphony*). .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_audiostreamgenerator.rst b/classes/class_audiostreamgenerator.rst index 06fb9b4f3..6cd9e6adc 100644 --- a/classes/class_audiostreamgenerator.rst +++ b/classes/class_audiostreamgenerator.rst @@ -32,16 +32,16 @@ Here's a sample on how to use it to generate a sine wave: @onready var sample_hz = $AudioStreamPlayer.stream.mix_rate var pulse_hz = 440.0 # The frequency of the sound wave. var phase = 0.0 - + func _ready(): $AudioStreamPlayer.play() playback = $AudioStreamPlayer.get_stream_playback() fill_buffer() - + func fill_buffer(): var increment = pulse_hz / sample_hz var frames_available = playback.get_frames_available() - + for i in range(frames_available): playback.push_frame(Vector2.ONE * sin(phase * TAU)) phase = fmod(phase + increment, 1.0) @@ -49,12 +49,12 @@ Here's a sample on how to use it to generate a sine wave: .. code-tab:: csharp [Export] public AudioStreamPlayer Player { get; set; } - + private AudioStreamGeneratorPlayback _playback; // Will hold the AudioStreamGeneratorPlayback. private float _sampleHz; private float _pulseHz = 440.0f; // The frequency of the sound wave. private double phase = 0.0; - + public override void _Ready() { if (Player.Stream is AudioStreamGenerator generator) // Type as a generator to access MixRate. @@ -65,12 +65,12 @@ Here's a sample on how to use it to generate a sine wave: FillBuffer(); } } - + public void FillBuffer() { float increment = _pulseHz / _sampleHz; int framesAvailable = _playback.GetFramesAvailable(); - + for (int i = 0; i < framesAvailable; i++) { _playback.PushFrame(Vector2.One * (float)Mathf.Sin(phase * Mathf.Tau)); @@ -221,6 +221,7 @@ According to the `Nyquist-Shannon sampling theorem `, :ref:`mix_rate` is used, otherwise current :ref:`AudioServer` mixing rate is used. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |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.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_audiostreamgeneratorplayback.rst b/classes/class_audiostreamgeneratorplayback.rst index 872605bb1..17314378a 100644 --- a/classes/class_audiostreamgeneratorplayback.rst +++ b/classes/class_audiostreamgeneratorplayback.rst @@ -130,6 +130,7 @@ Pushes several audio data frames to the buffer. This is usually more efficient t Pushes a single audio data frame to the buffer. This is usually less efficient than :ref:`push_buffer()` in C# and compiled languages via GDExtension, but :ref:`push_frame()` may be *more* efficient in GDScript. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_audiostreaminteractive.rst b/classes/class_audiostreaminteractive.rst index 0c4d5248b..371782ef6 100644 --- a/classes/class_audiostreaminteractive.rst +++ b/classes/class_audiostreaminteractive.rst @@ -546,6 +546,7 @@ Set the name of the current clip (for easier identification). Set the :ref:`AudioStream` associated with the current clip. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_audiostreammicrophone.rst b/classes/class_audiostreammicrophone.rst index c90316ec6..8c6a4c040 100644 --- a/classes/class_audiostreammicrophone.rst +++ b/classes/class_audiostreammicrophone.rst @@ -33,6 +33,7 @@ Tutorials - `Audio Mic Record Demo `__ .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_audiostreammp3.rst b/classes/class_audiostreammp3.rst index cb9fb5f9f..699e061f5 100644 --- a/classes/class_audiostreammp3.rst +++ b/classes/class_audiostreammp3.rst @@ -81,7 +81,7 @@ Property Descriptions .. container:: contribute - There is currently no description for this property. Please help us by :ref:`contributing one `! + There is currently no description for this property. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -100,7 +100,7 @@ Property Descriptions .. container:: contribute - There is currently no description for this property. Please help us by :ref:`contributing one `! + There is currently no description for this property. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -119,7 +119,7 @@ Property Descriptions .. container:: contribute - There is currently no description for this property. Please help us by :ref:`contributing one `! + There is currently no description for this property. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -229,6 +229,7 @@ Creates a new **AudioStreamMP3** instance from the given buffer. The buffer must Creates a new **AudioStreamMP3** instance from the given file path. The file must be in MP3 format. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_audiostreamoggvorbis.rst b/classes/class_audiostreamoggvorbis.rst index 9d4bc19a7..e78ffb550 100644 --- a/classes/class_audiostreamoggvorbis.rst +++ b/classes/class_audiostreamoggvorbis.rst @@ -49,6 +49,8 @@ Properties +---------------------------------------------------+-----------------------------------------------------------------------------+-----------+ | :ref:`OggPacketSequence` | :ref:`packet_sequence` | | +---------------------------------------------------+-----------------------------------------------------------------------------+-----------+ + | :ref:`Dictionary` | :ref:`tags` | ``{}`` | + +---------------------------------------------------+-----------------------------------------------------------------------------+-----------+ .. rst-class:: classref-reftable-group @@ -86,7 +88,7 @@ Property Descriptions .. container:: contribute - There is currently no description for this property. Please help us by :ref:`contributing one `! + There is currently no description for this property. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -105,7 +107,7 @@ Property Descriptions .. container:: contribute - There is currently no description for this property. Please help us by :ref:`contributing one `! + There is currently no description for this property. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -124,7 +126,7 @@ Property Descriptions .. container:: contribute - There is currently no description for this property. Please help us by :ref:`contributing one `! + There is currently no description for this property. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -177,6 +179,27 @@ Time in seconds at which the stream starts after being looped. Contains the raw Ogg data for this stream. +.. rst-class:: classref-item-separator + +---- + +.. _class_AudioStreamOggVorbis_property_tags: + +.. rst-class:: classref-property + +:ref:`Dictionary` **tags** = ``{}`` :ref:`🔗` + +.. rst-class:: classref-property-setget + +- |void| **set_tags**\ (\ value\: :ref:`Dictionary`\ ) +- :ref:`Dictionary` **get_tags**\ (\ ) + +Contains user-defined tags if found in the Ogg Vorbis data. + +Commonly used tags include ``title``, ``artist``, ``album``, ``tracknumber``, and ``date`` (``date`` does not have a standard date format). + +\ **Note:** No tag is *guaranteed* to be present in every file, so make sure to account for the keys not always existing. + .. rst-class:: classref-section-separator ---- @@ -207,6 +230,7 @@ Creates a new **AudioStreamOggVorbis** instance from the given buffer. The buffe Creates a new **AudioStreamOggVorbis** instance from the given file path. The file must be in Ogg Vorbis format. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_audiostreamplayback.rst b/classes/class_audiostreamplayback.rst index 3c2d25c59..c368a9629 100644 --- a/classes/class_audiostreamplayback.rst +++ b/classes/class_audiostreamplayback.rst @@ -38,45 +38,45 @@ Methods .. table:: :widths: auto - +-------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`_get_loop_count`\ (\ ) |virtual| |const| | - +-------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Variant` | :ref:`_get_parameter`\ (\ name\: :ref:`StringName`\ ) |virtual| |const| | - +-------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`float` | :ref:`_get_playback_position`\ (\ ) |virtual| |const| | - +-------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`_is_playing`\ (\ ) |virtual| |const| | - +-------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`_mix`\ (\ buffer\: ``AudioFrame*``, rate_scale\: :ref:`float`, frames\: :ref:`int`\ ) |virtual| | - +-------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_seek`\ (\ position\: :ref:`float`\ ) |virtual| | - +-------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_set_parameter`\ (\ name\: :ref:`StringName`, value\: :ref:`Variant`\ ) |virtual| | - +-------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_start`\ (\ from_pos\: :ref:`float`\ ) |virtual| | - +-------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_stop`\ (\ ) |virtual| | - +-------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_tag_used_streams`\ (\ ) |virtual| | - +-------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`get_loop_count`\ (\ ) |const| | - +-------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`float` | :ref:`get_playback_position`\ (\ ) |const| | - +-------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`AudioSamplePlayback` | :ref:`get_sample_playback`\ (\ ) |const| | - +-------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`is_playing`\ (\ ) |const| | - +-------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`PackedVector2Array` | :ref:`mix_audio`\ (\ rate_scale\: :ref:`float`, frames\: :ref:`int`\ ) | - +-------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`seek`\ (\ time\: :ref:`float` = 0.0\ ) | - +-------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`set_sample_playback`\ (\ playback_sample\: :ref:`AudioSamplePlayback`\ ) | - +-------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`start`\ (\ from_pos\: :ref:`float` = 0.0\ ) | - +-------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`stop`\ (\ ) | - +-------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + +-------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`_get_loop_count`\ (\ ) |virtual| |const| | + +-------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Variant` | :ref:`_get_parameter`\ (\ name\: :ref:`StringName`\ ) |virtual| |const| | + +-------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`_get_playback_position`\ (\ ) |virtual| |const| | + +-------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`_is_playing`\ (\ ) |virtual| |const| | + +-------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`_mix`\ (\ buffer\: ``AudioFrame*``, rate_scale\: :ref:`float`, frames\: :ref:`int`\ ) |virtual| |required| | + +-------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_seek`\ (\ position\: :ref:`float`\ ) |virtual| | + +-------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_set_parameter`\ (\ name\: :ref:`StringName`, value\: :ref:`Variant`\ ) |virtual| | + +-------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_start`\ (\ from_pos\: :ref:`float`\ ) |virtual| | + +-------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_stop`\ (\ ) |virtual| | + +-------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_tag_used_streams`\ (\ ) |virtual| | + +-------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`get_loop_count`\ (\ ) |const| | + +-------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`get_playback_position`\ (\ ) |const| | + +-------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`AudioSamplePlayback` | :ref:`get_sample_playback`\ (\ ) |const| | + +-------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`is_playing`\ (\ ) |const| | + +-------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`PackedVector2Array` | :ref:`mix_audio`\ (\ rate_scale\: :ref:`float`, frames\: :ref:`int`\ ) | + +-------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`seek`\ (\ time\: :ref:`float` = 0.0\ ) | + +-------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_sample_playback`\ (\ playback_sample\: :ref:`AudioSamplePlayback`\ ) | + +-------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`start`\ (\ from_pos\: :ref:`float` = 0.0\ ) | + +-------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`stop`\ (\ ) | + +-------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ .. rst-class:: classref-section-separator @@ -139,7 +139,7 @@ Overridable method. Should return ``true`` if this playback is active and playin .. rst-class:: classref-method -:ref:`int` **_mix**\ (\ buffer\: ``AudioFrame*``, rate_scale\: :ref:`float`, frames\: :ref:`int`\ ) |virtual| :ref:`🔗` +:ref:`int` **_mix**\ (\ buffer\: ``AudioFrame*``, rate_scale\: :ref:`float`, frames\: :ref:`int`\ ) |virtual| |required| :ref:`🔗` Override this method to customize how the audio stream is mixed. This method is called even if the playback is not active. @@ -322,6 +322,7 @@ Starts the stream from the given ``from_pos``, in seconds. Stops the stream. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_audiostreamplaybackinteractive.rst b/classes/class_audiostreamplaybackinteractive.rst index 31d606266..c80a3e690 100644 --- a/classes/class_audiostreamplaybackinteractive.rst +++ b/classes/class_audiostreamplaybackinteractive.rst @@ -90,6 +90,7 @@ Switch to a clip (by index). Switch to a clip (by name). .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_audiostreamplaybackoggvorbis.rst b/classes/class_audiostreamplaybackoggvorbis.rst index dc0f2c757..3990b7339 100644 --- a/classes/class_audiostreamplaybackoggvorbis.rst +++ b/classes/class_audiostreamplaybackoggvorbis.rst @@ -14,9 +14,10 @@ AudioStreamPlaybackOggVorbis .. container:: contribute - There is currently no description for this class. Please help us by :ref:`contributing one `! + There is currently no description for this class. Please help us by `contributing one `__! .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_audiostreamplaybackplaylist.rst b/classes/class_audiostreamplaybackplaylist.rst index 6c5a3c836..dbc521cd2 100644 --- a/classes/class_audiostreamplaybackplaylist.rst +++ b/classes/class_audiostreamplaybackplaylist.rst @@ -15,6 +15,7 @@ AudioStreamPlaybackPlaylist Playback class used for :ref:`AudioStreamPlaylist`. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_audiostreamplaybackpolyphonic.rst b/classes/class_audiostreamplaybackpolyphonic.rst index 0bdeaf1d7..6575a1a77 100644 --- a/classes/class_audiostreamplaybackpolyphonic.rst +++ b/classes/class_audiostreamplaybackpolyphonic.rst @@ -130,6 +130,7 @@ Change the stream volume (in db). The ``stream`` argument is an integer ID retur Stop a stream. The ``stream`` argument is an integer ID returned by :ref:`play_stream()`, which becomes invalid after calling this function. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_audiostreamplaybackresampled.rst b/classes/class_audiostreamplaybackresampled.rst index 6577e73be..985117987 100644 --- a/classes/class_audiostreamplaybackresampled.rst +++ b/classes/class_audiostreamplaybackresampled.rst @@ -16,7 +16,7 @@ AudioStreamPlaybackResampled .. container:: contribute - There is currently no description for this class. Please help us by :ref:`contributing one `! + There is currently no description for this class. Please help us by `contributing one `__! .. rst-class:: classref-reftable-group @@ -26,13 +26,13 @@ Methods .. table:: :widths: auto - +---------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`float` | :ref:`_get_stream_sampling_rate`\ (\ ) |virtual| |const| | - +---------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`_mix_resampled`\ (\ dst_buffer\: ``AudioFrame*``, frame_count\: :ref:`int`\ ) |virtual| | - +---------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`begin_resample`\ (\ ) | - +---------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + +---------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`_get_stream_sampling_rate`\ (\ ) |virtual| |required| |const| | + +---------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`_mix_resampled`\ (\ dst_buffer\: ``AudioFrame*``, frame_count\: :ref:`int`\ ) |virtual| |required| | + +---------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`begin_resample`\ (\ ) | + +---------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ .. rst-class:: classref-section-separator @@ -47,11 +47,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`float` **_get_stream_sampling_rate**\ (\ ) |virtual| |const| :ref:`🔗` +:ref:`float` **_get_stream_sampling_rate**\ (\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -61,11 +61,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`int` **_mix_resampled**\ (\ dst_buffer\: ``AudioFrame*``, frame_count\: :ref:`int`\ ) |virtual| :ref:`🔗` +:ref:`int` **_mix_resampled**\ (\ dst_buffer\: ``AudioFrame*``, frame_count\: :ref:`int`\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -79,9 +79,10 @@ Method Descriptions .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_audiostreamplaybacksynchronized.rst b/classes/class_audiostreamplaybacksynchronized.rst index d0703335a..fe251137d 100644 --- a/classes/class_audiostreamplaybacksynchronized.rst +++ b/classes/class_audiostreamplaybacksynchronized.rst @@ -14,9 +14,10 @@ AudioStreamPlaybackSynchronized .. container:: contribute - There is currently no description for this class. Please help us by :ref:`contributing one `! + There is currently no description for this class. Please help us by `contributing one `__! .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_audiostreamplayer.rst b/classes/class_audiostreamplayer.rst index 8cd8f769f..ed301a532 100644 --- a/classes/class_audiostreamplayer.rst +++ b/classes/class_audiostreamplayer.rst @@ -228,7 +228,7 @@ The maximum number of sounds this node can play at the same time. Calling :ref:` - |void| **set_mix_target**\ (\ value\: :ref:`MixTarget`\ ) - :ref:`MixTarget` **get_mix_target**\ (\ ) -The mix target channels, as one of the :ref:`MixTarget` constants. Has no effect when two speakers or less are detected (see :ref:`SpeakerMode`). +The mix target channels. Has no effect when two speakers or less are detected (see :ref:`SpeakerMode`). .. rst-class:: classref-item-separator @@ -439,6 +439,7 @@ Restarts all sounds to be played from the given ``to_position``, in seconds. Doe Stops all sounds from this node. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_audiostreamplayer2d.rst b/classes/class_audiostreamplayer2d.rst index 49a8cbd79..08b9b80e5 100644 --- a/classes/class_audiostreamplayer2d.rst +++ b/classes/class_audiostreamplayer2d.rst @@ -441,6 +441,7 @@ Sets the position from which audio will be played, in seconds. Stops the audio. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_audiostreamplayer3d.rst b/classes/class_audiostreamplayer3d.rst index 66cf3ebb2..eef1a42c4 100644 --- a/classes/class_audiostreamplayer3d.rst +++ b/classes/class_audiostreamplayer3d.rst @@ -337,6 +337,8 @@ The bus on which this audio is playing. Decides in which step the Doppler effect should be calculated. +\ **Note:** If :ref:`doppler_tracking` is not :ref:`DOPPLER_TRACKING_DISABLED` but the current :ref:`Camera3D`/:ref:`AudioListener3D` has doppler tracking disabled, the Doppler effect will be heard but will not take the movement of the current listener into account. If accurate Doppler effect is desired, doppler tracking should be enabled on both the **AudioStreamPlayer3D** and the current :ref:`Camera3D`/:ref:`AudioListener3D`. + .. rst-class:: classref-item-separator ---- @@ -454,7 +456,11 @@ The maximum number of sounds this node can play at the same time. Playing additi - |void| **set_panning_strength**\ (\ value\: :ref:`float`\ ) - :ref:`float` **get_panning_strength**\ (\ ) -Scales the panning strength for this node by multiplying the base :ref:`ProjectSettings.audio/general/3d_panning_strength` with this factor. Higher values will pan audio from left to right more dramatically than lower values. +Scales the panning strength for this node by multiplying the base :ref:`ProjectSettings.audio/general/3d_panning_strength` by this factor. If the product is ``0.0`` then stereo panning is disabled and the volume is the same for all channels. If the product is ``1.0`` then one of the channels will be muted when the sound is located exactly to the left (or right) of the listener. + +Two speaker stereo arrangements implement the `WebAudio standard for StereoPannerNode Panning `__ where the volume is cosine of half the azimuth angle to the ear. + +For other speaker arrangements such as the 5.1 and 7.1 the SPCAP (Speaker-Placement Correction Amplitude) algorithm is implemented. .. rst-class:: classref-item-separator @@ -674,6 +680,7 @@ Sets the position from which audio will be played, in seconds. Stops the audio. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_audiostreamplaylist.rst b/classes/class_audiostreamplaylist.rst index 9eb37b087..35766913c 100644 --- a/classes/class_audiostreamplaylist.rst +++ b/classes/class_audiostreamplaylist.rst @@ -180,6 +180,7 @@ Returns the stream at playback position index. Sets the stream at playback position index. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_audiostreampolyphonic.rst b/classes/class_audiostreampolyphonic.rst index e71345027..47ff2136a 100644 --- a/classes/class_audiostreampolyphonic.rst +++ b/classes/class_audiostreampolyphonic.rst @@ -58,6 +58,7 @@ Property Descriptions Maximum amount of simultaneous streams that can be played. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_audiostreamrandomizer.rst b/classes/class_audiostreamrandomizer.rst index afa65b751..f5237f730 100644 --- a/classes/class_audiostreamrandomizer.rst +++ b/classes/class_audiostreamrandomizer.rst @@ -265,6 +265,7 @@ Set the AudioStream at the specified index. Set the probability weight of the stream at the specified index. The higher this value, the more likely that the randomizer will choose this stream during random playback modes. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_audiostreamsynchronized.rst b/classes/class_audiostreamsynchronized.rst index 6b6a9cd5c..f23f12b95 100644 --- a/classes/class_audiostreamsynchronized.rst +++ b/classes/class_audiostreamsynchronized.rst @@ -144,6 +144,7 @@ Set one of the synchronized streams, by index. Set the volume of one of the synchronized streams, by index. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_audiostreamwav.rst b/classes/class_audiostreamwav.rst index dacce63ef..ee54b00a1 100644 --- a/classes/class_audiostreamwav.rst +++ b/classes/class_audiostreamwav.rst @@ -53,6 +53,8 @@ Properties +-----------------------------------------------+-------------------------------------------------------------+-----------------------+ | :ref:`bool` | :ref:`stereo` | ``false`` | +-----------------------------------------------+-------------------------------------------------------------+-----------------------+ + | :ref:`Dictionary` | :ref:`tags` | ``{}`` | + +-----------------------------------------------+-------------------------------------------------------------+-----------------------+ .. rst-class:: classref-reftable-group @@ -202,7 +204,7 @@ Contains the audio data in bytes. - |void| **set_format**\ (\ value\: :ref:`Format`\ ) - :ref:`Format` **get_format**\ (\ ) -Audio format. See :ref:`Format` constants for values. +Audio format. .. rst-class:: classref-item-separator @@ -253,7 +255,7 @@ The loop end point (in number of samples, relative to the beginning of the strea - |void| **set_loop_mode**\ (\ value\: :ref:`LoopMode`\ ) - :ref:`LoopMode` **get_loop_mode**\ (\ ) -The loop mode. See :ref:`LoopMode` constants for values. +The loop mode. .. rst-class:: classref-item-separator @@ -293,6 +295,29 @@ According to the `Nyquist-Shannon sampling theorem ` **tags** = ``{}`` :ref:`🔗` + +.. rst-class:: classref-property-setget + +- |void| **set_tags**\ (\ value\: :ref:`Dictionary`\ ) +- :ref:`Dictionary` **get_tags**\ (\ ) + +Contains user-defined tags if found in the WAV data. + +Commonly used tags include ``title``, ``artist``, ``album``, ``tracknumber``, and ``date`` (``date`` does not have a standard date format). + +\ **Note:** No tag is *guaranteed* to be present in every file, so make sure to account for the keys not always existing. + +\ **Note:** Only WAV files using a ``LIST`` chunk with an identifier of ``INFO`` to encode the tags are currently supported. + .. rst-class:: classref-section-separator ---- @@ -331,10 +356,10 @@ The keys and values of ``options`` match the properties of :ref:`ResourceImporte :: @onready var audio_player = $AudioStreamPlayer - + func _ready(): get_window().files_dropped.connect(_on_files_dropped) - + func _on_files_dropped(files): if files[0].get_extension() == "wav": audio_player.stream = AudioStreamWAV.load_from_file(files[0], { @@ -358,6 +383,7 @@ Saves the AudioStreamWAV as a WAV file to ``path``. Samples with IMA ADPCM or Qu \ **Note:** A ``.wav`` extension is automatically appended to ``path`` if it is missing. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_backbuffercopy.rst b/classes/class_backbuffercopy.rst index 2e5e43249..79a9ef70a 100644 --- a/classes/class_backbuffercopy.rst +++ b/classes/class_backbuffercopy.rst @@ -103,7 +103,7 @@ Property Descriptions - |void| **set_copy_mode**\ (\ value\: :ref:`CopyMode`\ ) - :ref:`CopyMode` **get_copy_mode**\ (\ ) -Buffer mode. See :ref:`CopyMode` constants. +Buffer mode. .. rst-class:: classref-item-separator @@ -123,6 +123,7 @@ Buffer mode. See :ref:`CopyMode` constants. The area covered by the **BackBufferCopy**. Only used if :ref:`copy_mode` is :ref:`COPY_MODE_RECT`. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_basebutton.rst b/classes/class_basebutton.rst index f7bd067ae..d9e40d63a 100644 --- a/classes/class_basebutton.rst +++ b/classes/class_basebutton.rst @@ -231,7 +231,7 @@ Property Descriptions - |void| **set_action_mode**\ (\ value\: :ref:`ActionMode`\ ) - :ref:`ActionMode` **get_action_mode**\ (\ ) -Determines when the button is considered clicked, one of the :ref:`ActionMode` constants. +Determines when the button is considered clicked. .. rst-class:: classref-item-separator @@ -307,6 +307,8 @@ If ``true``, the button's state is pressed. Means the button is pressed down or If ``true``, the button is in disabled state and can't be clicked or toggled. +\ **Note:** If the button is disabled while held down, :ref:`button_up` will be emitted. + .. rst-class:: classref-item-separator ---- @@ -464,6 +466,7 @@ Changes the :ref:`button_pressed` stat \ **Note:** This method doesn't unpress other buttons in :ref:`button_group`. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_basematerial3d.rst b/classes/class_basematerial3d.rst index 859d9b665..3e96976fe 100644 --- a/classes/class_basematerial3d.rst +++ b/classes/class_basematerial3d.rst @@ -77,6 +77,10 @@ Properties +-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+ | :ref:`Texture2D` | :ref:`backlight_texture` | | +-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+ + | :ref:`bool` | :ref:`bent_normal_enabled` | ``false`` | + +-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+ + | :ref:`Texture2D` | :ref:`bent_normal_texture` | | + +-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+ | :ref:`bool` | :ref:`billboard_keep_scale` | ``false`` | +-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+ | :ref:`BillboardMode` | :ref:`billboard_mode` | ``0`` | @@ -95,6 +99,8 @@ Properties +-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+ | :ref:`DepthDrawMode` | :ref:`depth_draw_mode` | ``0`` | +-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+ + | :ref:`DepthTest` | :ref:`depth_test` | ``0`` | + +-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+ | :ref:`Texture2D` | :ref:`detail_albedo` | | +-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+ | :ref:`BlendMode` | :ref:`detail_blend_mode` | ``0`` | @@ -115,6 +121,8 @@ Properties +-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+ | :ref:`bool` | :ref:`disable_receive_shadows` | ``false`` | +-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+ + | :ref:`bool` | :ref:`disable_specular_occlusion` | ``false`` | + +-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+ | :ref:`float` | :ref:`distance_fade_max_distance` | ``10.0`` | +-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+ | :ref:`float` | :ref:`distance_fade_min_distance` | ``0.0`` | @@ -137,6 +145,8 @@ Properties +-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+ | :ref:`bool` | :ref:`fixed_size` | ``false`` | +-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+ + | :ref:`float` | :ref:`fov_override` | ``75.0`` | + +-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+ | :ref:`bool` | :ref:`grow` | ``false`` | +-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+ | :ref:`float` | :ref:`grow_amount` | ``0.0`` | @@ -221,6 +231,18 @@ Properties +-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+ | :ref:`SpecularMode` | :ref:`specular_mode` | ``0`` | +-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+ + | :ref:`Color` | :ref:`stencil_color` | ``Color(0, 0, 0, 1)`` | + +-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+ + | :ref:`StencilCompare` | :ref:`stencil_compare` | ``0`` | + +-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+ + | :ref:`int` | :ref:`stencil_flags` | ``0`` | + +-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+ + | :ref:`StencilMode` | :ref:`stencil_mode` | ``0`` | + +-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+ + | :ref:`float` | :ref:`stencil_outline_thickness` | ``0.01`` | + +-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+ + | :ref:`int` | :ref:`stencil_reference` | ``1`` | + +-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+ | :ref:`bool` | :ref:`subsurf_scatter_enabled` | ``false`` | +-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+ | :ref:`bool` | :ref:`subsurf_scatter_skin_mode` | ``false`` | @@ -245,10 +267,14 @@ Properties +-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+ | :ref:`Transparency` | :ref:`transparency` | ``0`` | +-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+ + | :ref:`bool` | :ref:`use_fov_override` | ``false`` | + +-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+ | :ref:`bool` | :ref:`use_particle_trails` | ``false`` | +-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+ | :ref:`bool` | :ref:`use_point_size` | ``false`` | +-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+ + | :ref:`bool` | :ref:`use_z_clip_scale` | ``false`` | + +-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+ | :ref:`Vector3` | :ref:`uv1_offset` | ``Vector3(0, 0, 0)`` | +-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+ | :ref:`Vector3` | :ref:`uv1_scale` | ``Vector3(1, 1, 1)`` | @@ -273,6 +299,8 @@ Properties +-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+ | :ref:`bool` | :ref:`vertex_color_use_as_albedo` | ``false`` | +-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+ + | :ref:`float` | :ref:`z_clip_scale` | ``1.0`` | + +-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+ .. rst-class:: classref-reftable-group @@ -351,6 +379,14 @@ Texture specifying per-pixel emission color. Texture specifying per-pixel normal vector. +.. _class_BaseMaterial3D_constant_TEXTURE_BENT_NORMAL: + +.. rst-class:: classref-enumeration-constant + +:ref:`TextureParam` **TEXTURE_BENT_NORMAL** = ``18`` + +Texture specifying per-pixel bent normal vector. + .. _class_BaseMaterial3D_constant_TEXTURE_RIM: .. rst-class:: classref-enumeration-constant @@ -459,7 +495,7 @@ Texture holding ambient occlusion, roughness, and metallic. .. rst-class:: classref-enumeration-constant -:ref:`TextureParam` **TEXTURE_MAX** = ``18`` +:ref:`TextureParam` **TEXTURE_MAX** = ``19`` Represents the size of the :ref:`TextureParam` enum. @@ -761,11 +797,19 @@ Constant for setting :ref:`refraction_enabled`. +.. _class_BaseMaterial3D_constant_FEATURE_BENT_NORMAL_MAPPING: + +.. rst-class:: classref-enumeration-constant + +:ref:`Feature` **FEATURE_BENT_NORMAL_MAPPING** = ``12`` + +Constant for setting :ref:`bent_normal_enabled`. + .. _class_BaseMaterial3D_constant_FEATURE_MAX: .. rst-class:: classref-enumeration-constant -:ref:`Feature` **FEATURE_MAX** = ``12`` +:ref:`Feature` **FEATURE_MAX** = ``13`` Represents the size of the :ref:`Feature` enum. @@ -893,6 +937,32 @@ Objects will not write their depth to the depth buffer, even during the depth pr ---- +.. _enum_BaseMaterial3D_DepthTest: + +.. rst-class:: classref-enumeration + +enum **DepthTest**: :ref:`🔗` + +.. _class_BaseMaterial3D_constant_DEPTH_TEST_DEFAULT: + +.. rst-class:: classref-enumeration-constant + +:ref:`DepthTest` **DEPTH_TEST_DEFAULT** = ``0`` + +Depth test will discard the pixel if it is behind other pixels. + +.. _class_BaseMaterial3D_constant_DEPTH_TEST_INVERTED: + +.. rst-class:: classref-enumeration-constant + +:ref:`DepthTest` **DEPTH_TEST_INVERTED** = ``1`` + +Depth test will discard the pixel if it is in front of other pixels. Useful for stencil effects. + +.. rst-class:: classref-item-separator + +---- + .. _enum_BaseMaterial3D_CullMode: .. rst-class:: classref-enumeration @@ -1111,11 +1181,35 @@ Enables multichannel signed distance field rendering shader. Disables receiving depth-based or volumetric fog. +.. _class_BaseMaterial3D_constant_FLAG_DISABLE_SPECULAR_OCCLUSION: + +.. rst-class:: classref-enumeration-constant + +:ref:`Flags` **FLAG_DISABLE_SPECULAR_OCCLUSION** = ``22`` + +Disables specular occlusion. + +.. _class_BaseMaterial3D_constant_FLAG_USE_Z_CLIP_SCALE: + +.. rst-class:: classref-enumeration-constant + +:ref:`Flags` **FLAG_USE_Z_CLIP_SCALE** = ``23`` + +Enables using :ref:`z_clip_scale`. + +.. _class_BaseMaterial3D_constant_FLAG_USE_FOV_OVERRIDE: + +.. rst-class:: classref-enumeration-constant + +:ref:`Flags` **FLAG_USE_FOV_OVERRIDE** = ``24`` + +Enables using :ref:`fov_override`. + .. _class_BaseMaterial3D_constant_FLAG_MAX: .. rst-class:: classref-enumeration-constant -:ref:`Flags` **FLAG_MAX** = ``22`` +:ref:`Flags` **FLAG_MAX** = ``25`` Represents the size of the :ref:`Flags` enum. @@ -1179,6 +1273,10 @@ enum **SpecularMode**: :ref:`🔗` Default specular blob. +\ **Note:** Forward+ uses multiscattering for more accurate reflections, although the impact of multiscattering is more noticeable on rough metallic surfaces than on smooth, non-metallic surfaces. + +\ **Note:** Mobile and Compatibility don't perform multiscattering for performance reasons. Instead, they perform single scattering, which means rough metallic surfaces may look slightly darker than intended. + .. _class_BaseMaterial3D_constant_SPECULAR_TOON: .. rst-class:: classref-enumeration-constant @@ -1357,6 +1455,152 @@ Smoothly fades the object out based on each pixel's distance from the camera usi Smoothly fades the object out based on the object's distance from the camera using a dithering approach. Dithering discards pixels based on a set pattern to smoothly fade without enabling transparency. On certain hardware, this can be faster than :ref:`DISTANCE_FADE_PIXEL_ALPHA` and :ref:`DISTANCE_FADE_PIXEL_DITHER`. +.. rst-class:: classref-item-separator + +---- + +.. _enum_BaseMaterial3D_StencilMode: + +.. rst-class:: classref-enumeration + +enum **StencilMode**: :ref:`🔗` + +.. _class_BaseMaterial3D_constant_STENCIL_MODE_DISABLED: + +.. rst-class:: classref-enumeration-constant + +:ref:`StencilMode` **STENCIL_MODE_DISABLED** = ``0`` + +Disables stencil operations. + +.. _class_BaseMaterial3D_constant_STENCIL_MODE_OUTLINE: + +.. rst-class:: classref-enumeration-constant + +:ref:`StencilMode` **STENCIL_MODE_OUTLINE** = ``1`` + +Stencil preset which applies an outline to the object. + +\ **Note:** Requires a :ref:`Material.next_pass` material which will be automatically applied. Any manual changes made to :ref:`Material.next_pass` will be lost when the stencil properties are modified or the scene is reloaded. To safely apply a :ref:`Material.next_pass` material on a material that uses stencil presets, use :ref:`GeometryInstance3D.material_overlay` instead. + +.. _class_BaseMaterial3D_constant_STENCIL_MODE_XRAY: + +.. rst-class:: classref-enumeration-constant + +:ref:`StencilMode` **STENCIL_MODE_XRAY** = ``2`` + +Stencil preset which shows a silhouette of the object behind walls. + +\ **Note:** Requires a :ref:`Material.next_pass` material which will be automatically applied. Any manual changes made to :ref:`Material.next_pass` will be lost when the stencil properties are modified or the scene is reloaded. To safely apply a :ref:`Material.next_pass` material on a material that uses stencil presets, use :ref:`GeometryInstance3D.material_overlay` instead. + +.. _class_BaseMaterial3D_constant_STENCIL_MODE_CUSTOM: + +.. rst-class:: classref-enumeration-constant + +:ref:`StencilMode` **STENCIL_MODE_CUSTOM** = ``3`` + +Enables stencil operations without a preset. + +.. rst-class:: classref-item-separator + +---- + +.. _enum_BaseMaterial3D_StencilFlags: + +.. rst-class:: classref-enumeration + +enum **StencilFlags**: :ref:`🔗` + +.. _class_BaseMaterial3D_constant_STENCIL_FLAG_READ: + +.. rst-class:: classref-enumeration-constant + +:ref:`StencilFlags` **STENCIL_FLAG_READ** = ``1`` + +The material will only be rendered where it passes a stencil comparison with existing stencil buffer values. See :ref:`StencilCompare`. + +.. _class_BaseMaterial3D_constant_STENCIL_FLAG_WRITE: + +.. rst-class:: classref-enumeration-constant + +:ref:`StencilFlags` **STENCIL_FLAG_WRITE** = ``2`` + +The material will write the reference value to the stencil buffer where it passes the depth test. + +.. _class_BaseMaterial3D_constant_STENCIL_FLAG_WRITE_DEPTH_FAIL: + +.. rst-class:: classref-enumeration-constant + +:ref:`StencilFlags` **STENCIL_FLAG_WRITE_DEPTH_FAIL** = ``4`` + +The material will write the reference value to the stencil buffer where it fails the depth test. + +.. rst-class:: classref-item-separator + +---- + +.. _enum_BaseMaterial3D_StencilCompare: + +.. rst-class:: classref-enumeration + +enum **StencilCompare**: :ref:`🔗` + +.. _class_BaseMaterial3D_constant_STENCIL_COMPARE_ALWAYS: + +.. rst-class:: classref-enumeration-constant + +:ref:`StencilCompare` **STENCIL_COMPARE_ALWAYS** = ``0`` + +Always passes the stencil test. + +.. _class_BaseMaterial3D_constant_STENCIL_COMPARE_LESS: + +.. rst-class:: classref-enumeration-constant + +:ref:`StencilCompare` **STENCIL_COMPARE_LESS** = ``1`` + +Passes the stencil test when the reference value is less than the existing stencil value. + +.. _class_BaseMaterial3D_constant_STENCIL_COMPARE_EQUAL: + +.. rst-class:: classref-enumeration-constant + +:ref:`StencilCompare` **STENCIL_COMPARE_EQUAL** = ``2`` + +Passes the stencil test when the reference value is equal to the existing stencil value. + +.. _class_BaseMaterial3D_constant_STENCIL_COMPARE_LESS_OR_EQUAL: + +.. rst-class:: classref-enumeration-constant + +:ref:`StencilCompare` **STENCIL_COMPARE_LESS_OR_EQUAL** = ``3`` + +Passes the stencil test when the reference value is less than or equal to the existing stencil value. + +.. _class_BaseMaterial3D_constant_STENCIL_COMPARE_GREATER: + +.. rst-class:: classref-enumeration-constant + +:ref:`StencilCompare` **STENCIL_COMPARE_GREATER** = ``4`` + +Passes the stencil test when the reference value is greater than the existing stencil value. + +.. _class_BaseMaterial3D_constant_STENCIL_COMPARE_NOT_EQUAL: + +.. rst-class:: classref-enumeration-constant + +:ref:`StencilCompare` **STENCIL_COMPARE_NOT_EQUAL** = ``5`` + +Passes the stencil test when the reference value is not equal to the existing stencil value. + +.. _class_BaseMaterial3D_constant_STENCIL_COMPARE_GREATER_OR_EQUAL: + +.. rst-class:: classref-enumeration-constant + +:ref:`StencilCompare` **STENCIL_COMPARE_GREATER_OR_EQUAL** = ``6`` + +Passes the stencil test when the reference value is greater than or equal to the existing stencil value. + .. rst-class:: classref-section-separator ---- @@ -1468,7 +1712,7 @@ Threshold at which antialiasing will be applied on the alpha channel. - |void| **set_alpha_antialiasing**\ (\ value\: :ref:`AlphaAntiAliasing`\ ) - :ref:`AlphaAntiAliasing` **get_alpha_antialiasing**\ (\ ) -The type of alpha antialiasing to apply. See :ref:`AlphaAntiAliasing`. +The type of alpha antialiasing to apply. .. rst-class:: classref-item-separator @@ -1701,6 +1945,46 @@ Texture used to control the backlight effect per-pixel. Added to :ref:`backlight ---- +.. _class_BaseMaterial3D_property_bent_normal_enabled: + +.. rst-class:: classref-property + +:ref:`bool` **bent_normal_enabled** = ``false`` :ref:`🔗` + +.. rst-class:: classref-property-setget + +- |void| **set_feature**\ (\ feature\: :ref:`Feature`, enable\: :ref:`bool`\ ) +- :ref:`bool` **get_feature**\ (\ feature\: :ref:`Feature`\ ) |const| + +If ``true``, the bent normal map is enabled. This allows for more accurate indirect lighting and specular occlusion. + +.. rst-class:: classref-item-separator + +---- + +.. _class_BaseMaterial3D_property_bent_normal_texture: + +.. rst-class:: classref-property + +:ref:`Texture2D` **bent_normal_texture** :ref:`🔗` + +.. rst-class:: classref-property-setget + +- |void| **set_texture**\ (\ param\: :ref:`TextureParam`, texture\: :ref:`Texture2D`\ ) +- :ref:`Texture2D` **get_texture**\ (\ param\: :ref:`TextureParam`\ ) |const| + +Texture that specifies the average direction of incoming ambient light at a given pixel. The :ref:`bent_normal_texture` only uses the red and green channels; the blue and alpha channels are ignored. The normal read from :ref:`bent_normal_texture` is oriented around the surface normal provided by the :ref:`Mesh`. + +\ **Note:** A bent normal map is different from a regular normal map. When baking a bent normal map make sure to use **a cosine distribution** for the bent normal map to work correctly. + +\ **Note:** The mesh must have both normals and tangents defined in its vertex data. Otherwise, the shading produced by the bent normal map will not look correct. If creating geometry with :ref:`SurfaceTool`, you can use :ref:`SurfaceTool.generate_normals()` and :ref:`SurfaceTool.generate_tangents()` to automatically generate normals and tangents respectively. + +\ **Note:** Godot expects the bent normal map to use X+, Y+, and Z+ coordinates. See `this page `__ for a comparison of normal map coordinates expected by popular engines. + +.. rst-class:: classref-item-separator + +---- + .. _class_BaseMaterial3D_property_billboard_keep_scale: .. rst-class:: classref-property @@ -1729,7 +2013,7 @@ If ``true``, the shader will keep the scale set for the mesh. Otherwise, the sca - |void| **set_billboard_mode**\ (\ value\: :ref:`BillboardMode`\ ) - :ref:`BillboardMode` **get_billboard_mode**\ (\ ) -Controls how the object faces the camera. See :ref:`BillboardMode`. +Controls how the object faces the camera. \ **Note:** Billboard mode is not suitable for VR because the left-right vector of the camera is not horizontal when the screen is attached to your head instead of on the table. See `GitHub issue #41567 `__ for details. @@ -1750,7 +2034,7 @@ Controls how the object faces the camera. See :ref:`BillboardMode`. +\ **Note:** Values other than ``Mix`` force the object into the transparent pipeline. .. rst-class:: classref-item-separator @@ -1837,7 +2121,7 @@ Texture that defines the strength of the clearcoat effect and the glossiness of - |void| **set_cull_mode**\ (\ value\: :ref:`CullMode`\ ) - :ref:`CullMode` **get_cull_mode**\ (\ ) -Determines which side of the triangle to cull depending on whether the triangle faces towards or away from the camera. See :ref:`CullMode`. +Determines which side of the triangle to cull depending on whether the triangle faces towards or away from the camera. .. rst-class:: classref-item-separator @@ -1854,7 +2138,28 @@ Determines which side of the triangle to cull depending on whether the triangle - |void| **set_depth_draw_mode**\ (\ value\: :ref:`DepthDrawMode`\ ) - :ref:`DepthDrawMode` **get_depth_draw_mode**\ (\ ) -Determines when depth rendering takes place. See :ref:`DepthDrawMode`. See also :ref:`transparency`. +Determines when depth rendering takes place. See also :ref:`transparency`. + +.. rst-class:: classref-item-separator + +---- + +.. _class_BaseMaterial3D_property_depth_test: + +.. rst-class:: classref-property + +:ref:`DepthTest` **depth_test** = ``0`` :ref:`🔗` + +.. rst-class:: classref-property-setget + +- |void| **set_depth_test**\ (\ value\: :ref:`DepthTest`\ ) +- :ref:`DepthTest` **get_depth_test**\ (\ ) + +**Experimental:** May be affected by future rendering pipeline changes. + +Determines which comparison operator is used when testing depth. See :ref:`DepthTest`. + +\ **Note:** Changing :ref:`depth_test` to a non-default value only has a visible effect when used on a transparent material, or a material that has :ref:`depth_draw_mode` set to :ref:`DEPTH_DRAW_DISABLED`. .. rst-class:: classref-item-separator @@ -1890,7 +2195,7 @@ Texture that specifies the color of the detail overlay. :ref:`detail_albedo`\ ) - :ref:`BlendMode` **get_detail_blend_mode**\ (\ ) -Specifies how the :ref:`detail_albedo` should blend with the current ``ALBEDO``. See :ref:`BlendMode` for options. +Specifies how the :ref:`detail_albedo` should blend with the current ``ALBEDO``. .. rst-class:: classref-item-separator @@ -1960,7 +2265,7 @@ Texture that specifies the per-pixel normal of the detail overlay. The :ref:`det - |void| **set_detail_uv**\ (\ value\: :ref:`DetailUV`\ ) - :ref:`DetailUV` **get_detail_uv**\ (\ ) -Specifies whether to use ``UV`` or ``UV2`` for the detail layer. See :ref:`DetailUV` for options. +Specifies whether to use ``UV`` or ``UV2`` for the detail layer. .. rst-class:: classref-item-separator @@ -1977,7 +2282,7 @@ Specifies whether to use ``UV`` or ``UV2`` for the detail layer. See :ref:`Detai - |void| **set_diffuse_mode**\ (\ value\: :ref:`DiffuseMode`\ ) - :ref:`DiffuseMode` **get_diffuse_mode**\ (\ ) -The algorithm used for diffuse light scattering. See :ref:`DiffuseMode`. +The algorithm used for diffuse light scattering. .. rst-class:: classref-item-separator @@ -2034,6 +2339,23 @@ If ``true``, the object receives no shadow that would otherwise be cast onto it. ---- +.. _class_BaseMaterial3D_property_disable_specular_occlusion: + +.. rst-class:: classref-property + +:ref:`bool` **disable_specular_occlusion** = ``false`` :ref:`🔗` + +.. rst-class:: classref-property-setget + +- |void| **set_flag**\ (\ flag\: :ref:`Flags`, enable\: :ref:`bool`\ ) +- :ref:`bool` **get_flag**\ (\ flag\: :ref:`Flags`\ ) |const| + +If ``true``, disables specular occlusion even if :ref:`ProjectSettings.rendering/reflections/specular_occlusion/enabled` is ``false``. + +.. rst-class:: classref-item-separator + +---- + .. _class_BaseMaterial3D_property_distance_fade_max_distance: .. rst-class:: classref-property @@ -2185,7 +2507,7 @@ Use ``UV2`` to read from the :ref:`emission_texture`\ ) - :ref:`EmissionOperator` **get_emission_operator**\ (\ ) -Sets how :ref:`emission` interacts with :ref:`emission_texture`. Can either add or multiply. See :ref:`EmissionOperator` for options. +Sets how :ref:`emission` interacts with :ref:`emission_texture`. Can either add or multiply. .. rst-class:: classref-item-separator @@ -2219,7 +2541,26 @@ Texture that specifies how much surface emits light at a given point. - |void| **set_flag**\ (\ flag\: :ref:`Flags`, enable\: :ref:`bool`\ ) - :ref:`bool` **get_flag**\ (\ flag\: :ref:`Flags`\ ) |const| -If ``true``, the object is rendered at the same size regardless of distance. +If ``true``, the object is rendered at the same size regardless of distance. The object's size on screen is the same as if the camera was ``1.0`` units away from the object's origin, regardless of the actual distance from the camera. The :ref:`Camera3D`'s field of view (or :ref:`Camera3D.size` when in orthogonal/frustum mode) still affects the size the object is drawn at. + +.. rst-class:: classref-item-separator + +---- + +.. _class_BaseMaterial3D_property_fov_override: + +.. rst-class:: classref-property + +:ref:`float` **fov_override** = ``75.0`` :ref:`🔗` + +.. rst-class:: classref-property-setget + +- |void| **set_fov_override**\ (\ value\: :ref:`float`\ ) +- :ref:`float` **get_fov_override**\ (\ ) + +Overrides the :ref:`Camera3D`'s field of view angle (in degrees). + +\ **Note:** This behaves as if the field of view is set on a :ref:`Camera3D` with :ref:`Camera3D.keep_aspect` set to :ref:`Camera3D.KEEP_HEIGHT`. Additionally, it may not look correct on a non-perspective camera where the field of view setting is ignored. .. rst-class:: classref-item-separator @@ -2961,7 +3302,7 @@ If ``true``, enables the "shadow to opacity" render mode where lighting modifies - |void| **set_specular_mode**\ (\ value\: :ref:`SpecularMode`\ ) - :ref:`SpecularMode` **get_specular_mode**\ (\ ) -The method for rendering the specular blob. See :ref:`SpecularMode`. +The method for rendering the specular blob. \ **Note:** :ref:`specular_mode` only applies to the specular blob. It does not affect specular reflections from the sky, screen-space reflections, :ref:`VoxelGI`, SDFGI or :ref:`ReflectionProbe`\ s. To disable reflections from these sources as well, set :ref:`metallic_specular` to ``0.0`` instead. @@ -2969,6 +3310,120 @@ The method for rendering the specular blob. See :ref:`SpecularMode` **stencil_color** = ``Color(0, 0, 0, 1)`` :ref:`🔗` + +.. rst-class:: classref-property-setget + +- |void| **set_stencil_effect_color**\ (\ value\: :ref:`Color`\ ) +- :ref:`Color` **get_stencil_effect_color**\ (\ ) + +**Experimental:** May be affected by future rendering pipeline changes. + +The primary color of the stencil effect. + +.. rst-class:: classref-item-separator + +---- + +.. _class_BaseMaterial3D_property_stencil_compare: + +.. rst-class:: classref-property + +:ref:`StencilCompare` **stencil_compare** = ``0`` :ref:`🔗` + +.. rst-class:: classref-property-setget + +- |void| **set_stencil_compare**\ (\ value\: :ref:`StencilCompare`\ ) +- :ref:`StencilCompare` **get_stencil_compare**\ (\ ) + +**Experimental:** May be affected by future rendering pipeline changes. + +The comparison operator to use for stencil masking operations. See :ref:`StencilCompare`. + +.. rst-class:: classref-item-separator + +---- + +.. _class_BaseMaterial3D_property_stencil_flags: + +.. rst-class:: classref-property + +:ref:`int` **stencil_flags** = ``0`` :ref:`🔗` + +.. rst-class:: classref-property-setget + +- |void| **set_stencil_flags**\ (\ value\: :ref:`int`\ ) +- :ref:`int` **get_stencil_flags**\ (\ ) + +**Experimental:** May be affected by future rendering pipeline changes. + +The flags dictating how the stencil operation behaves. See :ref:`StencilFlags`. + +.. rst-class:: classref-item-separator + +---- + +.. _class_BaseMaterial3D_property_stencil_mode: + +.. rst-class:: classref-property + +:ref:`StencilMode` **stencil_mode** = ``0`` :ref:`🔗` + +.. rst-class:: classref-property-setget + +- |void| **set_stencil_mode**\ (\ value\: :ref:`StencilMode`\ ) +- :ref:`StencilMode` **get_stencil_mode**\ (\ ) + +**Experimental:** May be affected by future rendering pipeline changes. + +The stencil effect mode. See :ref:`StencilMode`. + +.. rst-class:: classref-item-separator + +---- + +.. _class_BaseMaterial3D_property_stencil_outline_thickness: + +.. rst-class:: classref-property + +:ref:`float` **stencil_outline_thickness** = ``0.01`` :ref:`🔗` + +.. rst-class:: classref-property-setget + +- |void| **set_stencil_effect_outline_thickness**\ (\ value\: :ref:`float`\ ) +- :ref:`float` **get_stencil_effect_outline_thickness**\ (\ ) + +**Experimental:** May be affected by future rendering pipeline changes. + +The outline thickness for :ref:`STENCIL_MODE_OUTLINE`. + +.. rst-class:: classref-item-separator + +---- + +.. _class_BaseMaterial3D_property_stencil_reference: + +.. rst-class:: classref-property + +:ref:`int` **stencil_reference** = ``1`` :ref:`🔗` + +.. rst-class:: classref-property-setget + +- |void| **set_stencil_reference**\ (\ value\: :ref:`int`\ ) +- :ref:`int` **get_stencil_reference**\ (\ ) + +**Experimental:** May be affected by future rendering pipeline changes. + +The stencil reference value (0-255). Typically a power of 2. + +.. rst-class:: classref-item-separator + +---- + .. _class_BaseMaterial3D_property_subsurf_scatter_enabled: .. rst-class:: classref-property @@ -3133,7 +3588,7 @@ The texture to use for multiplying the intensity of the subsurface scattering tr - |void| **set_texture_filter**\ (\ value\: :ref:`TextureFilter`\ ) - :ref:`TextureFilter` **get_texture_filter**\ (\ ) -Filter flags for the texture. See :ref:`TextureFilter` for options. +Filter flags for the texture. \ **Note:** :ref:`heightmap_texture` is always sampled with linear filtering, even if nearest-neighbor filtering is selected here. This is to ensure the heightmap effect looks as intended. If you need sharper height transitions between pixels, resize the heightmap texture in an image editor with nearest-neighbor filtering. @@ -3152,7 +3607,7 @@ Filter flags for the texture. See :ref:`TextureFilter`, enable\: :ref:`bool`\ ) - :ref:`bool` **get_flag**\ (\ flag\: :ref:`Flags`\ ) |const| -Repeat flags for the texture. See :ref:`TextureFilter` for options. +If ``true``, the texture repeats when exceeding the texture's size. See :ref:`FLAG_USE_TEXTURE_REPEAT`. .. rst-class:: classref-item-separator @@ -3175,6 +3630,23 @@ The material's transparency mode. Some transparency modes will disable shadow ca ---- +.. _class_BaseMaterial3D_property_use_fov_override: + +.. rst-class:: classref-property + +:ref:`bool` **use_fov_override** = ``false`` :ref:`🔗` + +.. rst-class:: classref-property-setget + +- |void| **set_flag**\ (\ flag\: :ref:`Flags`, enable\: :ref:`bool`\ ) +- :ref:`bool` **get_flag**\ (\ flag\: :ref:`Flags`\ ) |const| + +If ``true`` use :ref:`fov_override` to override the :ref:`Camera3D`'s field of view angle. + +.. rst-class:: classref-item-separator + +---- + .. _class_BaseMaterial3D_property_use_particle_trails: .. rst-class:: classref-property @@ -3211,6 +3683,23 @@ If ``true``, render point size can be changed. ---- +.. _class_BaseMaterial3D_property_use_z_clip_scale: + +.. rst-class:: classref-property + +:ref:`bool` **use_z_clip_scale** = ``false`` :ref:`🔗` + +.. rst-class:: classref-property-setget + +- |void| **set_flag**\ (\ flag\: :ref:`Flags`, enable\: :ref:`bool`\ ) +- :ref:`bool` **get_flag**\ (\ flag\: :ref:`Flags`\ ) |const| + +If ``true`` use :ref:`z_clip_scale` to scale the object being rendered towards the camera to avoid clipping into things like walls. + +.. rst-class:: classref-item-separator + +---- + .. _class_BaseMaterial3D_property_uv1_offset: .. rst-class:: classref-property @@ -3417,6 +3906,23 @@ If ``true``, vertex colors are considered to be stored in sRGB color space and a If ``true``, the vertex color is used as albedo color. +.. rst-class:: classref-item-separator + +---- + +.. _class_BaseMaterial3D_property_z_clip_scale: + +.. rst-class:: classref-property + +:ref:`float` **z_clip_scale** = ``1.0`` :ref:`🔗` + +.. rst-class:: classref-property-setget + +- |void| **set_z_clip_scale**\ (\ value\: :ref:`float`\ ) +- :ref:`float` **get_z_clip_scale**\ (\ ) + +Scales the object being rendered towards the camera to avoid clipping into things like walls. This is intended to be used for objects that are fixed with respect to the camera like player arms, tools, etc. Lighting and shadows will continue to work correctly when this setting is adjusted, but screen-space effects like SSAO and SSR may break with lower scales. Therefore, try to keep this setting as close to ``1.0`` as possible. + .. rst-class:: classref-section-separator ---- @@ -3444,7 +3950,7 @@ Returns ``true``, if the specified :ref:`Feature` i :ref:`bool` **get_flag**\ (\ flag\: :ref:`Flags`\ ) |const| :ref:`🔗` -Returns ``true``, if the specified flag is enabled. See :ref:`Flags` enumerator for options. +Returns ``true`` if the specified flag is enabled. .. rst-class:: classref-item-separator @@ -3480,7 +3986,7 @@ If ``true``, enables the specified :ref:`Feature`. |void| **set_flag**\ (\ flag\: :ref:`Flags`, enable\: :ref:`bool`\ ) :ref:`🔗` -If ``true``, enables the specified flag. Flags are optional behavior that can be turned on and off. Only one flag can be enabled at a time with this function, the flag enumerators cannot be bit-masked together to enable or disable multiple flags at once. Flags can also be enabled by setting the corresponding member to ``true``. See :ref:`Flags` enumerator for options. +If ``true``, enables the specified flag. Flags are optional behavior that can be turned on and off. Only one flag can be enabled at a time with this function, the flag enumerators cannot be bit-masked together to enable or disable multiple flags at once. Flags can also be enabled by setting the corresponding member to ``true``. .. rst-class:: classref-item-separator @@ -3492,9 +3998,10 @@ If ``true``, enables the specified flag. Flags are optional behavior that can be |void| **set_texture**\ (\ param\: :ref:`TextureParam`, texture\: :ref:`Texture2D`\ ) :ref:`🔗` -Sets the texture for the slot specified by ``param``. See :ref:`TextureParam` for available slots. +Sets the texture for the slot specified by ``param``. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_basis.rst b/classes/class_basis.rst index 1ab97291e..120a74eba 100644 --- a/classes/class_basis.rst +++ b/classes/class_basis.rst @@ -135,6 +135,8 @@ Methods +-------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`Basis` | :ref:`scaled`\ (\ scale\: :ref:`Vector3`\ ) |const| | +-------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Basis` | :ref:`scaled_local`\ (\ scale\: :ref:`Vector3`\ ) |const| | + +-------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`Basis` | :ref:`slerp`\ (\ to\: :ref:`Basis`, weight\: :ref:`float`\ ) |const| | +-------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`float` | :ref:`tdotx`\ (\ with\: :ref:`Vector3`\ ) |const| | @@ -402,14 +404,14 @@ Constructs a new **Basis** that only represents rotation from the given :ref:`Ve # Creates a Basis whose z axis points down. var my_basis = Basis.from_euler(Vector3(TAU / 4, 0, 0)) - + print(my_basis.z) # Prints (0.0, -1.0, 0.0) .. code-tab:: csharp // Creates a Basis whose z axis points down. var myBasis = Basis.FromEuler(new Vector3(Mathf.Tau / 4.0f, 0.0f, 0.0f)); - + GD.Print(myBasis.Z); // Prints (0, -1, 0) @@ -434,7 +436,7 @@ Constructs a new **Basis** that only represents scale, with no rotation or shear .. code-tab:: gdscript var my_basis = Basis.from_scale(Vector3(2, 4, 8)) - + print(my_basis.x) # Prints (2.0, 0.0, 0.0) print(my_basis.y) # Prints (0.0, 4.0, 0.0) print(my_basis.z) # Prints (0.0, 0.0, 8.0) @@ -442,7 +444,7 @@ Constructs a new **Basis** that only represents scale, with no rotation or shear .. code-tab:: csharp var myBasis = Basis.FromScale(new Vector3(2.0f, 4.0f, 8.0f)); - + GD.Print(myBasis.X); // Prints (2, 0, 0) GD.Print(myBasis.Y); // Prints (0, 4, 0) GD.Print(myBasis.Z); // Prints (0, 0, 8) @@ -516,7 +518,7 @@ Returns the length of each axis of this basis, as a :ref:`Vector3 # Rotating the Basis in any way preserves its scale. my_basis = my_basis.rotated(Vector3.UP, TAU / 2) my_basis = my_basis.rotated(Vector3.RIGHT, TAU / 4) - + print(my_basis.get_scale()) # Prints (2.0, 4.0, 8.0) .. code-tab:: csharp @@ -529,7 +531,7 @@ Returns the length of each axis of this basis, as a :ref:`Vector3 // Rotating the Basis in any way preserves its scale. myBasis = myBasis.Rotated(Vector3.Up, Mathf.Tau / 2.0f); myBasis = myBasis.Rotated(Vector3.Right, Mathf.Tau / 4.0f); - + GD.Print(myBasis.Scale); // Prints (2, 4, 8) @@ -625,7 +627,6 @@ It is often useful to call this method to avoid rounding errors on a rotating ba func _process(delta): basis = basis.rotated(Vector3.UP, TAU * delta) basis = basis.rotated(Vector3.RIGHT, TAU * delta) - basis = basis.orthonormalized() .. code-tab:: csharp @@ -634,8 +635,8 @@ It is often useful to call this method to avoid rounding errors on a rotating ba public override void _Process(double delta) { Basis = Basis.Rotated(Vector3.Up, Mathf.Tau * (float)delta) - .Rotated(Vector3.Right, Mathf.Tau * (float)delta) - .Orthonormalized(); + .Rotated(Vector3.Right, Mathf.Tau * (float)delta) + .Orthonormalized(); } @@ -661,7 +662,7 @@ The ``axis`` must be a normalized vector (see :ref:`Vector3.normalized()` **scaled_local**\ (\ scale\: :ref:`Vector3`\ ) |const| :ref:`🔗` + +Returns this basis with each axis scaled by the corresponding component in the given ``scale``. + +The basis matrix's columns are multiplied by ``scale``'s components. This operation is a local scale (relative to self). + + +.. tabs:: + + .. code-tab:: gdscript + + var my_basis = Basis( + Vector3(1, 1, 1), + Vector3(2, 2, 2), + Vector3(3, 3, 3) + ) + my_basis = my_basis.scaled_local(Vector3(0, 2, -2)) + + print(my_basis.x) # Prints (0.0, 0.0, 0.0) + print(my_basis.y) # Prints (4.0, 4.0, 4.0) + print(my_basis.z) # Prints (-6.0, -6.0, -6.0) + + .. code-tab:: csharp + + var myBasis = new Basis( + new Vector3(1.0f, 1.0f, 1.0f), + new Vector3(2.0f, 2.0f, 2.0f), + new Vector3(3.0f, 3.0f, 3.0f) + ); + myBasis = myBasis.ScaledLocal(new Vector3(0.0f, 2.0f, -2.0f)); + + GD.Print(myBasis.X); // Prints (0, 0, 0) + GD.Print(myBasis.Y); // Prints (4, 4, 4) + GD.Print(myBasis.Z); // Prints (-6, -6, -6) + + + .. rst-class:: classref-item-separator ---- @@ -740,10 +786,10 @@ Performs a spherical-linear interpolation with the ``to`` basis, given a ``weigh var start_basis = Basis.IDENTITY var target_basis = Basis.IDENTITY.rotated(Vector3.UP, TAU / 2) - + func _ready(): create_tween().tween_method(interpolate, 0.0, 1.0, 5.0).set_trans(Tween.TRANS_EXPO) - + func interpolate(weight): basis = start_basis.slerp(target_basis, weight) @@ -812,7 +858,7 @@ Returns the transposed version of this basis. This turns the basis matrix's colu Vector3(7, 8, 9) ) my_basis = my_basis.transposed() - + print(my_basis.x) # Prints (1.0, 4.0, 7.0) print(my_basis.y) # Prints (2.0, 5.0, 8.0) print(my_basis.z) # Prints (3.0, 6.0, 9.0) @@ -825,7 +871,7 @@ Returns the transposed version of this basis. This turns the basis matrix's colu new Vector3(7.0f, 8.0f, 9.0f) ); myBasis = myBasis.Transposed(); - + GD.Print(myBasis.X); // Prints (1, 4, 7) GD.Print(myBasis.Y); // Prints (2, 5, 8) GD.Print(myBasis.Z); // Prints (3, 6, 9) @@ -971,6 +1017,7 @@ Accesses each axis (column) of this basis by their index. Index ``0`` is the sam \ **Note:** In C++, this operator accesses the rows of the basis matrix, *not* the columns. For the same behavior as scripting languages, use the ``set_column`` and ``get_column`` methods. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_bitmap.rst b/classes/class_bitmap.rst index 217f31b88..c03a2f92e 100644 --- a/classes/class_bitmap.rst +++ b/classes/class_bitmap.rst @@ -72,7 +72,7 @@ Method Descriptions :ref:`Image` **convert_to_image**\ (\ ) |const| :ref:`🔗` -Returns an image of the same size as the bitmap and with a :ref:`Format` of type :ref:`Image.FORMAT_L8`. ``true`` bits of the bitmap are being converted into white pixels, and ``false`` bits into black. +Returns an image of the same size as the bitmap and with an :ref:`Format` of type :ref:`Image.FORMAT_L8`. ``true`` bits of the bitmap are being converted into white pixels, and ``false`` bits into black. .. rst-class:: classref-item-separator @@ -227,6 +227,7 @@ Sets a rectangular portion of the bitmap to the specified value. Sets the bitmap's element at the specified position, to the specified value. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_bone2d.rst b/classes/class_bone2d.rst index eac814b82..3bb0ff901 100644 --- a/classes/class_bone2d.rst +++ b/classes/class_bone2d.rst @@ -207,6 +207,7 @@ Sets the bone angle for the **Bone2D**. This is typically set to the rotation fr Sets the length of the bone in the **Bone2D**. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_boneattachment3d.rst b/classes/class_boneattachment3d.rst index 7e2a1328a..6a85f3bf9 100644 --- a/classes/class_boneattachment3d.rst +++ b/classes/class_boneattachment3d.rst @@ -32,13 +32,19 @@ Properties .. table:: :widths: auto - +-----------------------------+---------------------------------------------------------------------+-----------+ - | :ref:`int` | :ref:`bone_idx` | ``-1`` | - +-----------------------------+---------------------------------------------------------------------+-----------+ - | :ref:`String` | :ref:`bone_name` | ``""`` | - +-----------------------------+---------------------------------------------------------------------+-----------+ - | :ref:`bool` | :ref:`override_pose` | ``false`` | - +-----------------------------+---------------------------------------------------------------------+-----------+ + +---------------------------------------------------------------------+-------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`bone_idx` | ``-1`` | + +---------------------------------------------------------------------+-------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`bone_name` | ``""`` | + +---------------------------------------------------------------------+-------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+ + | :ref:`NodePath` | :ref:`external_skeleton` | | + +---------------------------------------------------------------------+-------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`override_pose` | ``false`` | + +---------------------------------------------------------------------+-------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+ + | :ref:`PhysicsInterpolationMode` | physics_interpolation_mode | ``2`` (overrides :ref:`Node`) | + +---------------------------------------------------------------------+-------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`use_external_skeleton` | ``false`` | + +---------------------------------------------------------------------+-------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+ .. rst-class:: classref-reftable-group @@ -48,19 +54,11 @@ Methods .. table:: :widths: auto - +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`NodePath` | :ref:`get_external_skeleton`\ (\ ) |const| | - +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Skeleton3D` | :ref:`get_skeleton`\ (\ ) | - +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`get_use_external_skeleton`\ (\ ) |const| | - +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`on_skeleton_update`\ (\ ) | - +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`set_external_skeleton`\ (\ external_skeleton\: :ref:`NodePath`\ ) | - +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`set_use_external_skeleton`\ (\ use_external_skeleton\: :ref:`bool`\ ) | - +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------+ + +-------------------------------------+-----------------------------------------------------------------------------------+ + | :ref:`Skeleton3D` | :ref:`get_skeleton`\ (\ ) | + +-------------------------------------+-----------------------------------------------------------------------------------+ + | |void| | :ref:`on_skeleton_update`\ (\ ) | + +-------------------------------------+-----------------------------------------------------------------------------------+ .. rst-class:: classref-section-separator @@ -105,6 +103,23 @@ The name of the attached bone. ---- +.. _class_BoneAttachment3D_property_external_skeleton: + +.. rst-class:: classref-property + +:ref:`NodePath` **external_skeleton** :ref:`🔗` + +.. rst-class:: classref-property-setget + +- |void| **set_external_skeleton**\ (\ value\: :ref:`NodePath`\ ) +- :ref:`NodePath` **get_external_skeleton**\ (\ ) + +The :ref:`NodePath` to the external :ref:`Skeleton3D` node. + +.. rst-class:: classref-item-separator + +---- + .. _class_BoneAttachment3D_property_override_pose: .. rst-class:: classref-property @@ -116,10 +131,27 @@ The name of the attached bone. - |void| **set_override_pose**\ (\ value\: :ref:`bool`\ ) - :ref:`bool` **get_override_pose**\ (\ ) -Whether the BoneAttachment3D node will override the bone pose of the bone it is attached to. When set to ``true``, the BoneAttachment3D node can change the pose of the bone. When set to ``false``, the BoneAttachment3D will always be set to the bone's transform. +Whether the **BoneAttachment3D** node will override the bone pose of the bone it is attached to. When set to ``true``, the **BoneAttachment3D** node can change the pose of the bone. When set to ``false``, the **BoneAttachment3D** will always be set to the bone's transform. \ **Note:** This override performs interruptively in the skeleton update process using signals due to the old design. It may cause unintended behavior when used at the same time with :ref:`SkeletonModifier3D`. +.. rst-class:: classref-item-separator + +---- + +.. _class_BoneAttachment3D_property_use_external_skeleton: + +.. rst-class:: classref-property + +:ref:`bool` **use_external_skeleton** = ``false`` :ref:`🔗` + +.. rst-class:: classref-property-setget + +- |void| **set_use_external_skeleton**\ (\ value\: :ref:`bool`\ ) +- :ref:`bool` **get_use_external_skeleton**\ (\ ) + +Whether the **BoneAttachment3D** node will use an external :ref:`Skeleton3D` node rather than attempting to use its parent node as the :ref:`Skeleton3D`. When set to ``true``, the **BoneAttachment3D** node will use the external :ref:`Skeleton3D` node set in :ref:`external_skeleton`. + .. rst-class:: classref-section-separator ---- @@ -129,37 +161,13 @@ Whether the BoneAttachment3D node will override the bone pose of the bone it is Method Descriptions ------------------- -.. _class_BoneAttachment3D_method_get_external_skeleton: - -.. rst-class:: classref-method - -:ref:`NodePath` **get_external_skeleton**\ (\ ) |const| :ref:`🔗` - -Returns the :ref:`NodePath` to the external :ref:`Skeleton3D` node, if one has been set. - -.. rst-class:: classref-item-separator - ----- - .. _class_BoneAttachment3D_method_get_skeleton: .. rst-class:: classref-method :ref:`Skeleton3D` **get_skeleton**\ (\ ) :ref:`🔗` -Get parent or external :ref:`Skeleton3D` node if found. - -.. rst-class:: classref-item-separator - ----- - -.. _class_BoneAttachment3D_method_get_use_external_skeleton: - -.. rst-class:: classref-method - -:ref:`bool` **get_use_external_skeleton**\ (\ ) |const| :ref:`🔗` - -Returns whether the BoneAttachment3D node is using an external :ref:`Skeleton3D` rather than attempting to use its parent node as the :ref:`Skeleton3D`. +Returns the parent or external :ref:`Skeleton3D` node if it exists, otherwise returns ``null``. .. rst-class:: classref-item-separator @@ -173,31 +181,8 @@ Returns whether the BoneAttachment3D node is using an external :ref:`Skeleton3D< A function that is called automatically when the :ref:`Skeleton3D` is updated. This function is where the **BoneAttachment3D** node updates its position so it is correctly bound when it is *not* set to override the bone pose. -.. rst-class:: classref-item-separator - ----- - -.. _class_BoneAttachment3D_method_set_external_skeleton: - -.. rst-class:: classref-method - -|void| **set_external_skeleton**\ (\ external_skeleton\: :ref:`NodePath`\ ) :ref:`🔗` - -Sets the :ref:`NodePath` to the external skeleton that the BoneAttachment3D node should use. See :ref:`set_use_external_skeleton()` to enable the external :ref:`Skeleton3D` node. - -.. rst-class:: classref-item-separator - ----- - -.. _class_BoneAttachment3D_method_set_use_external_skeleton: - -.. rst-class:: classref-method - -|void| **set_use_external_skeleton**\ (\ use_external_skeleton\: :ref:`bool`\ ) :ref:`🔗` - -Sets whether the BoneAttachment3D node will use an external :ref:`Skeleton3D` node rather than attempting to use its parent node as the :ref:`Skeleton3D`. When set to ``true``, the BoneAttachment3D node will use the external :ref:`Skeleton3D` node set in :ref:`set_external_skeleton()`. - .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_boneconstraint3d.rst b/classes/class_boneconstraint3d.rst new file mode 100644 index 000000000..95c4d77ab --- /dev/null +++ b/classes/class_boneconstraint3d.rst @@ -0,0 +1,239 @@ +:github_url: hide + +.. DO NOT EDIT THIS FILE!!! +.. Generated automatically from Godot engine sources. +.. Generator: https://github.com/godotengine/godot/tree/master/doc/tools/make_rst.py. +.. XML source: https://github.com/godotengine/godot/tree/master/doc/classes/BoneConstraint3D.xml. + +.. _class_BoneConstraint3D: + +BoneConstraint3D +================ + +**Inherits:** :ref:`SkeletonModifier3D` **<** :ref:`Node3D` **<** :ref:`Node` **<** :ref:`Object` + +**Inherited By:** :ref:`AimModifier3D`, :ref:`ConvertTransformModifier3D`, :ref:`CopyTransformModifier3D` + +A node that may modify Skeleton3D's bone with associating the two bones. + +.. rst-class:: classref-introduction-group + +Description +----------- + +Base class of :ref:`SkeletonModifier3D` that modifies the bone set in :ref:`set_apply_bone()` based on the transform of the bone retrieved by :ref:`get_reference_bone()`. + +.. rst-class:: classref-reftable-group + +Methods +------- + +.. table:: + :widths: auto + + +-----------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`clear_setting`\ (\ ) | + +-----------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`get_amount`\ (\ index\: :ref:`int`\ ) |const| | + +-----------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`get_apply_bone`\ (\ index\: :ref:`int`\ ) |const| | + +-----------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`get_apply_bone_name`\ (\ index\: :ref:`int`\ ) |const| | + +-----------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`get_reference_bone`\ (\ index\: :ref:`int`\ ) |const| | + +-----------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`get_reference_bone_name`\ (\ index\: :ref:`int`\ ) |const| | + +-----------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`get_setting_count`\ (\ ) |const| | + +-----------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_amount`\ (\ index\: :ref:`int`, amount\: :ref:`float`\ ) | + +-----------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_apply_bone`\ (\ index\: :ref:`int`, bone\: :ref:`int`\ ) | + +-----------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_apply_bone_name`\ (\ index\: :ref:`int`, bone_name\: :ref:`String`\ ) | + +-----------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_reference_bone`\ (\ index\: :ref:`int`, bone\: :ref:`int`\ ) | + +-----------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_reference_bone_name`\ (\ index\: :ref:`int`, bone_name\: :ref:`String`\ ) | + +-----------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_setting_count`\ (\ count\: :ref:`int`\ ) | + +-----------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + +.. rst-class:: classref-section-separator + +---- + +.. rst-class:: classref-descriptions-group + +Method Descriptions +------------------- + +.. _class_BoneConstraint3D_method_clear_setting: + +.. rst-class:: classref-method + +|void| **clear_setting**\ (\ ) :ref:`🔗` + +Clear all settings. + +.. rst-class:: classref-item-separator + +---- + +.. _class_BoneConstraint3D_method_get_amount: + +.. rst-class:: classref-method + +:ref:`float` **get_amount**\ (\ index\: :ref:`int`\ ) |const| :ref:`🔗` + +Returns the apply amount of the setting at ``index``. + +.. rst-class:: classref-item-separator + +---- + +.. _class_BoneConstraint3D_method_get_apply_bone: + +.. rst-class:: classref-method + +:ref:`int` **get_apply_bone**\ (\ index\: :ref:`int`\ ) |const| :ref:`🔗` + +Returns the apply bone of the setting at ``index``. This bone will be modified. + +.. rst-class:: classref-item-separator + +---- + +.. _class_BoneConstraint3D_method_get_apply_bone_name: + +.. rst-class:: classref-method + +:ref:`String` **get_apply_bone_name**\ (\ index\: :ref:`int`\ ) |const| :ref:`🔗` + +Returns the apply bone name of the setting at ``index``. This bone will be modified. + +.. rst-class:: classref-item-separator + +---- + +.. _class_BoneConstraint3D_method_get_reference_bone: + +.. rst-class:: classref-method + +:ref:`int` **get_reference_bone**\ (\ index\: :ref:`int`\ ) |const| :ref:`🔗` + +Returns the reference bone of the setting at ``index``. + +This bone will be only referenced and not modified by this modifier. + +.. rst-class:: classref-item-separator + +---- + +.. _class_BoneConstraint3D_method_get_reference_bone_name: + +.. rst-class:: classref-method + +:ref:`String` **get_reference_bone_name**\ (\ index\: :ref:`int`\ ) |const| :ref:`🔗` + +Returns the reference bone name of the setting at ``index``. + +This bone will be only referenced and not modified by this modifier. + +.. rst-class:: classref-item-separator + +---- + +.. _class_BoneConstraint3D_method_get_setting_count: + +.. rst-class:: classref-method + +:ref:`int` **get_setting_count**\ (\ ) |const| :ref:`🔗` + +Returns the number of settings in the modifier. + +.. rst-class:: classref-item-separator + +---- + +.. _class_BoneConstraint3D_method_set_amount: + +.. rst-class:: classref-method + +|void| **set_amount**\ (\ index\: :ref:`int`, amount\: :ref:`float`\ ) :ref:`🔗` + +Sets the apply amount of the setting at ``index`` to ``amount``. + +.. rst-class:: classref-item-separator + +---- + +.. _class_BoneConstraint3D_method_set_apply_bone: + +.. rst-class:: classref-method + +|void| **set_apply_bone**\ (\ index\: :ref:`int`, bone\: :ref:`int`\ ) :ref:`🔗` + +Sets the apply bone of the setting at ``index`` to ``bone``. This bone will be modified. + +.. rst-class:: classref-item-separator + +---- + +.. _class_BoneConstraint3D_method_set_apply_bone_name: + +.. rst-class:: classref-method + +|void| **set_apply_bone_name**\ (\ index\: :ref:`int`, bone_name\: :ref:`String`\ ) :ref:`🔗` + +Sets the apply bone of the setting at ``index`` to ``bone_name``. This bone will be modified. + +.. rst-class:: classref-item-separator + +---- + +.. _class_BoneConstraint3D_method_set_reference_bone: + +.. rst-class:: classref-method + +|void| **set_reference_bone**\ (\ index\: :ref:`int`, bone\: :ref:`int`\ ) :ref:`🔗` + +Sets the reference bone of the setting at ``index`` to ``bone``. + +This bone will be only referenced and not modified by this modifier. + +.. rst-class:: classref-item-separator + +---- + +.. _class_BoneConstraint3D_method_set_reference_bone_name: + +.. rst-class:: classref-method + +|void| **set_reference_bone_name**\ (\ index\: :ref:`int`, bone_name\: :ref:`String`\ ) :ref:`🔗` + +Sets the reference bone of the setting at ``index`` to ``bone_name``. + +This bone will be only referenced and not modified by this modifier. + +.. rst-class:: classref-item-separator + +---- + +.. _class_BoneConstraint3D_method_set_setting_count: + +.. rst-class:: classref-method + +|void| **set_setting_count**\ (\ count\: :ref:`int`\ ) :ref:`🔗` + +Sets the number of settings in the modifier. + +.. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` +.. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` +.. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` +.. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` +.. |static| replace:: :abbr:`static (This method doesn't need an instance to be called, so it can be called directly using the class name.)` +.. |operator| replace:: :abbr:`operator (This method describes a valid operator to use with this type as left-hand operand.)` +.. |bitfield| replace:: :abbr:`BitField (This value is an integer composed as a bitmask of the following flags.)` +.. |void| replace:: :abbr:`void (No return value.)` diff --git a/classes/class_bonemap.rst b/classes/class_bonemap.rst index 800791503..c359e3aac 100644 --- a/classes/class_bonemap.rst +++ b/classes/class_bonemap.rst @@ -157,6 +157,7 @@ Maps a skeleton bone name to ``profile_bone_name``. In the retargeting process, the setting bone name is the bone name of the source skeleton. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_bool.rst b/classes/class_bool.rst index 1fc69b312..19d783fef 100644 --- a/classes/class_bool.rst +++ b/classes/class_bool.rst @@ -51,7 +51,7 @@ Booleans can be combined with the logical operators ``and``, ``or``, ``not`` to if bullets > 0 and not is_reloading(): launch_bullet() - + if bullets == 0 or is_reloading(): play_clack_sound() @@ -61,7 +61,7 @@ Booleans can be combined with the logical operators ``and``, ``or``, ``not`` to { LaunchBullet(); } - + if (bullets == 0 || IsReloading()) { PlayClackSound(); @@ -210,6 +210,7 @@ Returns ``true`` if the two booleans are equal. That is, both are ``true`` or bo Returns ``true`` if the left operand is ``true`` and the right operand is ``false``. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_boxcontainer.rst b/classes/class_boxcontainer.rst index fe99b7b74..99dac8ba9 100644 --- a/classes/class_boxcontainer.rst +++ b/classes/class_boxcontainer.rst @@ -183,6 +183,7 @@ Theme Property Descriptions The space between the **BoxContainer**'s elements, in pixels. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_boxmesh.rst b/classes/class_boxmesh.rst index 2e0f04fb3..7c9c8c44b 100644 --- a/classes/class_boxmesh.rst +++ b/classes/class_boxmesh.rst @@ -117,6 +117,7 @@ Number of extra edge loops inserted along the Y axis. Number of extra edge loops inserted along the X axis. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_boxoccluder3d.rst b/classes/class_boxoccluder3d.rst index bf941c41e..6bb59fc0b 100644 --- a/classes/class_boxoccluder3d.rst +++ b/classes/class_boxoccluder3d.rst @@ -65,6 +65,7 @@ Property Descriptions The box's size in 3D units. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_boxshape3d.rst b/classes/class_boxshape3d.rst index 07a369ddb..7e4eacc12 100644 --- a/classes/class_boxshape3d.rst +++ b/classes/class_boxshape3d.rst @@ -69,6 +69,7 @@ Property Descriptions The box's width, height and depth. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_button.rst b/classes/class_button.rst index cde750472..ac36fa9c3 100644 --- a/classes/class_button.rst +++ b/classes/class_button.rst @@ -35,7 +35,7 @@ Description button.text = "Click me" button.pressed.connect(_button_pressed) add_child(button) - + func _button_pressed(): print("Hello world!") @@ -48,7 +48,7 @@ Description button.Pressed += ButtonPressed; AddChild(button); } - + private void ButtonPressed() { GD.Print("Hello world!"); @@ -82,6 +82,8 @@ Properties +-------------------------------------------------------------------+-------------------------------------------------------------------------------+-----------+ | :ref:`AutowrapMode` | :ref:`autowrap_mode` | ``0`` | +-------------------------------------------------------------------+-------------------------------------------------------------------------------+-----------+ + | |bitfield|\[:ref:`LineBreakFlag`\] | :ref:`autowrap_trim_flags` | ``128`` | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------+-----------+ | :ref:`bool` | :ref:`clip_text` | ``false`` | +-------------------------------------------------------------------+-------------------------------------------------------------------------------+-----------+ | :ref:`bool` | :ref:`expand_icon` | ``false`` | @@ -197,7 +199,7 @@ Property Descriptions - |void| **set_text_alignment**\ (\ value\: :ref:`HorizontalAlignment`\ ) - :ref:`HorizontalAlignment` **get_text_alignment**\ (\ ) -Text alignment policy for the button's text, use one of the :ref:`HorizontalAlignment` constants. +Text alignment policy for the button's text. .. rst-class:: classref-item-separator @@ -220,6 +222,23 @@ If set to something other than :ref:`TextServer.AUTOWRAP_OFF`\] **autowrap_trim_flags** = ``128`` :ref:`🔗` + +.. rst-class:: classref-property-setget + +- |void| **set_autowrap_trim_flags**\ (\ value\: |bitfield|\[:ref:`LineBreakFlag`\]\ ) +- |bitfield|\[:ref:`LineBreakFlag`\] **get_autowrap_trim_flags**\ (\ ) + +Autowrap space trimming flags. See :ref:`TextServer.BREAK_TRIM_START_EDGE_SPACES` and :ref:`TextServer.BREAK_TRIM_END_EDGE_SPACES` for more info. + +.. rst-class:: classref-item-separator + +---- + .. _class_Button_property_clip_text: .. rst-class:: classref-property @@ -369,7 +388,7 @@ Base text writing direction. - |void| **set_text_overrun_behavior**\ (\ value\: :ref:`OverrunBehavior`\ ) - :ref:`OverrunBehavior` **get_text_overrun_behavior**\ (\ ) -Sets the clipping behavior when the text exceeds the node's bounding rectangle. See :ref:`OverrunBehavior` for a description of all modes. +Sets the clipping behavior when the text exceeds the node's bounding rectangle. .. rst-class:: classref-item-separator @@ -780,6 +799,7 @@ Default :ref:`StyleBox` for the **Button** (for right-to-left la :ref:`StyleBox` used when the **Button** is being pressed (for right-to-left layouts). .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_buttongroup.rst b/classes/class_buttongroup.rst index dee45a489..ab41d2710 100644 --- a/classes/class_buttongroup.rst +++ b/classes/class_buttongroup.rst @@ -1,5 +1,8 @@ :github_url: hide +.. meta:: + :keywords: radio + .. DO NOT EDIT THIS FILE!!! .. Generated automatically from Godot engine sources. .. Generator: https://github.com/godotengine/godot/tree/master/doc/tools/make_rst.py. @@ -120,6 +123,7 @@ Returns an :ref:`Array` of :ref:`Button`\ s who have Returns the current pressed button. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_callable.rst b/classes/class_callable.rst index 077d514ff..9ad65d199 100644 --- a/classes/class_callable.rst +++ b/classes/class_callable.rst @@ -26,7 +26,7 @@ Description func print_args(arg1, arg2, arg3 = ""): prints(arg1, arg2, arg3) - + func test(): var callable = Callable(self, "print_args") callable.call("hello", "world") # Prints "hello world ". @@ -40,7 +40,7 @@ Description { GD.PrintS(arg1, arg2, arg3); } - + public void Test() { // Invalid calls fail silently. @@ -59,10 +59,10 @@ In GDScript, it's possible to create lambda functions within a method. Lambda fu func _init(): var my_lambda = func (message): print(message) - + # Prints "Hello everyone!" my_lambda.call("Hello everyone!") - + # Prints "Attack!", when the button_pressed signal is emitted. button_pressed.connect(func(): print("Attack!")) @@ -78,11 +78,11 @@ In GDScript, you can access methods and global functions as **Callable**\ s: :: - var dictionary = {"hello": "world"} - + var dictionary = { "hello": "world" } + # This will not work, `clear` is treated as a key. tween.tween_callback(dictionary.clear) - + # This will work. tween.tween_callback(Callable.create(dictionary, "clear")) @@ -557,6 +557,7 @@ Returns ``true`` if both **Callable**\ s invoke different targets. Returns ``true`` if both **Callable**\ s invoke the same custom target. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_callbacktweener.rst b/classes/class_callbacktweener.rst index 78a138fb1..ce57848a5 100644 --- a/classes/class_callbacktweener.rst +++ b/classes/class_callbacktweener.rst @@ -62,6 +62,7 @@ Makes the callback call delayed by given time in seconds. tween.tween_callback(queue_free).set_delay(2) .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_camera2d.rst b/classes/class_camera2d.rst index 8db1e180a..ef8d99ed9 100644 --- a/classes/class_camera2d.rst +++ b/classes/class_camera2d.rst @@ -25,7 +25,7 @@ Cameras register themselves in the nearest :ref:`Viewport` node This node is intended to be a simple helper to get things going quickly, but more functionality may be desired to change how the camera works. To make your own custom camera node, inherit it from :ref:`Node2D` and change the transform of the canvas by setting :ref:`Viewport.canvas_transform` in :ref:`Viewport` (you can obtain the current :ref:`Viewport` by using :ref:`Node.get_viewport()`). -Note that the **Camera2D** node's ``position`` doesn't represent the actual position of the screen, which may differ due to applied smoothing or limits. You can use :ref:`get_screen_center_position()` to get the real position. +Note that the **Camera2D** node's :ref:`Node2D.global_position` doesn't represent the actual position of the screen, which may differ due to applied smoothing or limits. You can use :ref:`get_screen_center_position()` to get the real position. Same for the node's :ref:`Node2D.global_rotation` which may be different due to applied rotation smoothing. You can use :ref:`get_screen_rotation()` to get the current rotation of the screen. .. rst-class:: classref-introduction-group @@ -77,6 +77,8 @@ Properties +-----------------------------------------------------------------------+---------------------------------------------------------------------------------------+-------------------+ | :ref:`int` | :ref:`limit_bottom` | ``10000000`` | +-----------------------------------------------------------------------+---------------------------------------------------------------------------------------+-------------------+ + | :ref:`bool` | :ref:`limit_enabled` | ``true`` | + +-----------------------------------------------------------------------+---------------------------------------------------------------------------------------+-------------------+ | :ref:`int` | :ref:`limit_left` | ``-10000000`` | +-----------------------------------------------------------------------+---------------------------------------------------------------------------------------+-------------------+ | :ref:`int` | :ref:`limit_right` | ``10000000`` | @@ -119,6 +121,8 @@ Methods +-------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`Vector2` | :ref:`get_screen_center_position`\ (\ ) |const| | +-------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`get_screen_rotation`\ (\ ) |const| | + +-------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`Vector2` | :ref:`get_target_position`\ (\ ) |const| | +-------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`is_current`\ (\ ) |const| | @@ -209,7 +213,7 @@ Property Descriptions - |void| **set_anchor_mode**\ (\ value\: :ref:`AnchorMode`\ ) - :ref:`AnchorMode` **get_anchor_mode**\ (\ ) -The Camera2D's anchor point. See :ref:`AnchorMode` constants. +The Camera2D's anchor point. .. rst-class:: classref-item-separator @@ -476,6 +480,23 @@ Bottom scroll limit in pixels. The camera stops moving when reaching this value, ---- +.. _class_Camera2D_property_limit_enabled: + +.. rst-class:: classref-property + +:ref:`bool` **limit_enabled** = ``true`` :ref:`🔗` + +.. rst-class:: classref-property-setget + +- |void| **set_limit_enabled**\ (\ value\: :ref:`bool`\ ) +- :ref:`bool` **is_limit_enabled**\ (\ ) + +If ``true``, the limits will be enabled. Disabling this will allow the camera to focus anywhere, when the four ``limit_*`` properties will not work. + +.. rst-class:: classref-item-separator + +---- + .. _class_Camera2D_property_limit_left: .. rst-class:: classref-property @@ -610,7 +631,7 @@ Speed in pixels per second of the camera's smoothing effect when :ref:`position_ - |void| **set_process_callback**\ (\ value\: :ref:`Camera2DProcessCallback`\ ) - :ref:`Camera2DProcessCallback` **get_process_callback**\ (\ ) -The camera's process callback. See :ref:`Camera2DProcessCallback`. +The camera's process callback. .. rst-class:: classref-item-separator @@ -663,7 +684,7 @@ The angular, asymptotic speed of the camera's rotation smoothing effect when :re - |void| **set_zoom**\ (\ value\: :ref:`Vector2`\ ) - :ref:`Vector2` **get_zoom**\ (\ ) -The camera's zoom. A zoom of ``Vector(2, 2)`` doubles the size seen in the viewport. A zoom of ``Vector(0.5, 0.5)`` halves the size seen in the viewport. +The camera's zoom. Higher values are more zoomed in. For example, a zoom of ``Vector2(2.0, 2.0)`` will be twice as zoomed in on each axis (the view covers an area four times smaller). In contrast, a zoom of ``Vector2(0.5, 0.5)`` will be twice as zoomed out on each axis (the view covers an area four times larger). The X and Y components should generally always be set to the same value, unless you wish to stretch the camera view. \ **Note:** :ref:`FontFile.oversampling` does *not* take **Camera2D** zoom into account. This means that zooming in/out will cause bitmap fonts and rasterized (non-MSDF) dynamic fonts to appear blurry or pixelated unless the font is part of a :ref:`CanvasLayer` that makes it ignore camera zoom. To ensure text remains crisp regardless of zoom, you can enable MSDF font rendering by enabling :ref:`ProjectSettings.gui/theme/default_font_multichannel_signed_distance_field` (applies to the default project font only), or enabling **Multichannel Signed Distance Field** in the import options of a DynamicFont for custom fonts. On system fonts, :ref:`SystemFont.multichannel_signed_distance_field` can be enabled in the inspector. @@ -738,6 +759,20 @@ Returns the center of the screen from this camera's point of view, in global coo ---- +.. _class_Camera2D_method_get_screen_rotation: + +.. rst-class:: classref-method + +:ref:`float` **get_screen_rotation**\ (\ ) |const| :ref:`🔗` + +Returns the current screen rotation from this camera's point of view. + +\ **Note:** The screen rotation can be different from :ref:`Node2D.global_rotation` if the camera is rotating smoothly due to :ref:`rotation_smoothing_enabled`. + +.. rst-class:: classref-item-separator + +---- + .. _class_Camera2D_method_get_target_position: .. rst-class:: classref-method @@ -811,6 +846,7 @@ Sets the specified :ref:`Side`'s margin. See also :ref:` Sets the camera limit for the specified :ref:`Side`. See also :ref:`limit_bottom`, :ref:`limit_top`, :ref:`limit_left`, and :ref:`limit_right`. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_camera3d.rst b/classes/class_camera3d.rst index 011a4ff2f..a29482fd7 100644 --- a/classes/class_camera3d.rst +++ b/classes/class_camera3d.rst @@ -313,7 +313,9 @@ If multiple cameras are in the scene, one will always be made current. For examp - |void| **set_doppler_tracking**\ (\ value\: :ref:`DopplerTracking`\ ) - :ref:`DopplerTracking` **get_doppler_tracking**\ (\ ) -If not :ref:`DOPPLER_TRACKING_DISABLED`, this camera will simulate the `Doppler effect `__ for objects changed in particular ``_process`` methods. See :ref:`DopplerTracking` for possible values. +If not :ref:`DOPPLER_TRACKING_DISABLED`, this camera will simulate the `Doppler effect `__ for objects changed in particular ``_process`` methods. + +\ **Note:** The Doppler effect will only be heard on :ref:`AudioStreamPlayer3D`\ s if :ref:`AudioStreamPlayer3D.doppler_tracking` is not set to :ref:`AudioStreamPlayer3D.DOPPLER_TRACKING_DISABLED`. .. rst-class:: classref-item-separator @@ -706,7 +708,9 @@ Sets the camera projection to frustum mode (see :ref:`PROJECTION_FRUSTUM`, z_near\: :ref:`float`, z_far\: :ref:`float`\ ) :ref:`🔗` -Sets the camera projection to orthogonal mode (see :ref:`PROJECTION_ORTHOGONAL`), by specifying a ``size``, and the ``z_near`` and ``z_far`` clip planes in world space units. (As a hint, 2D games often use this projection, with values specified in pixels.) +Sets the camera projection to orthogonal mode (see :ref:`PROJECTION_ORTHOGONAL`), by specifying a ``size``, and the ``z_near`` and ``z_far`` clip planes in world space units. + +As a hint, 3D games that look 2D often use this projection, with ``size`` specified in pixels. .. rst-class:: classref-item-separator @@ -742,6 +746,7 @@ Returns the 2D coordinate in the :ref:`Viewport` rectangle that control.position = get_viewport().get_camera_3d().unproject_position(global_transform.origin) .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_cameraattributes.rst b/classes/class_cameraattributes.rst index 386753ab3..09f3c6dbf 100644 --- a/classes/class_cameraattributes.rst +++ b/classes/class_cameraattributes.rst @@ -144,6 +144,7 @@ If :ref:`auto_exposure_enabled` is enabled. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_cameraattributesphysical.rst b/classes/class_cameraattributesphysical.rst index 89be06443..9aee1d44a 100644 --- a/classes/class_cameraattributesphysical.rst +++ b/classes/class_cameraattributesphysical.rst @@ -235,6 +235,7 @@ Method Descriptions Returns the vertical field of view that corresponds to the :ref:`frustum_focal_length`. This value is calculated internally whenever :ref:`frustum_focal_length` is changed. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_cameraattributespractical.rst b/classes/class_cameraattributespractical.rst index 4165ce5fa..353445209 100644 --- a/classes/class_cameraattributespractical.rst +++ b/classes/class_cameraattributespractical.rst @@ -214,6 +214,7 @@ Enables depth of field blur for objects closer than :ref:`dof_blur_near_distance When positive, distance over which blur effect will scale from 0 to :ref:`dof_blur_amount`, ending at :ref:`dof_blur_near_distance`. When negative, uses physically-based scaling so depth of field effect will scale from 0 at :ref:`dof_blur_near_distance` and will increase in a physically accurate way as objects get closer to the :ref:`Camera3D`. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_camerafeed.rst b/classes/class_camerafeed.rst index 5d7119c70..f77a06936 100644 --- a/classes/class_camerafeed.rst +++ b/classes/class_camerafeed.rst @@ -23,7 +23,7 @@ A camera feed gives you access to a single physical camera attached to your devi \ **Note:** Many cameras will return YCbCr images which are split into two textures and need to be combined in a shader. Godot does this automatically for you if you set the environment to show the camera image in the background. -\ **Note:** This class is currently only implemented on Linux, macOS, and iOS. On other platforms no **CameraFeed**\ s will be available. To get a **CameraFeed** on iOS, the camera plugin from `godot-ios-plugins `__ is required. +\ **Note:** This class is currently only implemented on Linux, Android, macOS, and iOS. On other platforms no **CameraFeed**\ s will be available. To get a **CameraFeed** on iOS, the camera plugin from `godot-ios-plugins `__ is required. .. rst-class:: classref-reftable-group @@ -361,13 +361,13 @@ Sets the feed as external feed provided by another library. :ref:`bool` **set_format**\ (\ index\: :ref:`int`, parameters\: :ref:`Dictionary`\ ) :ref:`🔗` -Sets the feed format parameters for the given index in the :ref:`formats` array. Returns ``true`` on success. By default YUYV encoded stream is transformed to FEED_RGB. YUYV encoded stream output format can be changed with ``parameters``.output value: +Sets the feed format parameters for the given ``index`` in the :ref:`formats` array. Returns ``true`` on success. By default, the YUYV encoded stream is transformed to :ref:`FEED_RGB`. The YUYV encoded stream output format can be changed by setting ``parameters``'s ``output`` entry to one of the following: -\ ``separate`` will result in FEED_YCBCR_SEP +- ``"separate"`` will result in :ref:`FEED_YCBCR_SEP`; -\ ``grayscale`` will result in desaturated FEED_RGB +- ``"grayscale"`` will result in desaturated :ref:`FEED_RGB`; -\ ``copy`` will result in FEED_YCBCR +- ``"copy"`` will result in :ref:`FEED_YCBCR`. .. rst-class:: classref-item-separator @@ -418,6 +418,7 @@ Sets RGB image for this feed. Sets YCbCr image for this feed. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_cameraserver.rst b/classes/class_cameraserver.rst index 334b70064..8172be2d4 100644 --- a/classes/class_cameraserver.rst +++ b/classes/class_cameraserver.rst @@ -23,7 +23,19 @@ The **CameraServer** keeps track of different cameras accessible in Godot. These It is notably used to provide AR modules with a video feed from the camera. -\ **Note:** This class is currently only implemented on Linux, macOS, and iOS. On other platforms no :ref:`CameraFeed`\ s will be available. To get a :ref:`CameraFeed` on iOS, the camera plugin from `godot-ios-plugins `__ is required. +\ **Note:** This class is currently only implemented on Linux, Android, macOS, and iOS. On other platforms no :ref:`CameraFeed`\ s will be available. To get a :ref:`CameraFeed` on iOS, the camera plugin from `godot-ios-plugins `__ is required. + +.. rst-class:: classref-reftable-group + +Properties +---------- + +.. table:: + :widths: auto + + +-------------------------+-----------------------------------------------------------------------+-----------+ + | :ref:`bool` | :ref:`monitoring_feeds` | ``false`` | + +-------------------------+-----------------------------------------------------------------------+-----------+ .. rst-class:: classref-reftable-group @@ -74,6 +86,18 @@ Emitted when a :ref:`CameraFeed` is added (e.g. a webcam is pl Emitted when a :ref:`CameraFeed` is removed (e.g. a webcam is unplugged). +.. rst-class:: classref-item-separator + +---- + +.. _class_CameraServer_signal_camera_feeds_updated: + +.. rst-class:: classref-signal + +**camera_feeds_updated**\ (\ ) :ref:`🔗` + +Emitted when camera feeds are updated. + .. rst-class:: classref-section-separator ---- @@ -121,6 +145,59 @@ The Y component camera image. The CbCr component camera image. +.. rst-class:: classref-section-separator + +---- + +.. rst-class:: classref-descriptions-group + +Property Descriptions +--------------------- + +.. _class_CameraServer_property_monitoring_feeds: + +.. rst-class:: classref-property + +:ref:`bool` **monitoring_feeds** = ``false`` :ref:`🔗` + +.. rst-class:: classref-property-setget + +- |void| **set_monitoring_feeds**\ (\ value\: :ref:`bool`\ ) +- :ref:`bool` **is_monitoring_feeds**\ (\ ) + +If ``true``, the server is actively monitoring available camera feeds. + +This has a performance cost, so only set it to ``true`` when you're actively accessing the camera. + +\ **Note:** After setting it to ``true``, you can receive updated camera feeds through the :ref:`camera_feeds_updated` signal. + + +.. tabs:: + + .. code-tab:: gdscript + + func _ready(): + CameraServer.camera_feeds_updated.connect(_on_camera_feeds_updated) + CameraServer.monitoring_feeds = true + + func _on_camera_feeds_updated(): + var feeds = CameraServer.feeds() + + .. code-tab:: csharp + + public override void _Ready() + { + CameraServer.CameraFeedsUpdated += OnCameraFeedsUpdated; + CameraServer.MonitoringFeeds = true; + } + + void OnCameraFeedsUpdated() + { + var feeds = CameraServer.Feeds(); + } + + + .. rst-class:: classref-section-separator ---- @@ -187,6 +264,7 @@ Returns the number of :ref:`CameraFeed`\ s registered. Removes the specified camera ``feed``. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_cameratexture.rst b/classes/class_cameratexture.rst index 64fd3ee57..74291b04c 100644 --- a/classes/class_cameratexture.rst +++ b/classes/class_cameratexture.rst @@ -98,6 +98,7 @@ Convenience property that gives access to the active property of the :ref:`Camer Which image within the :ref:`CameraFeed` we want access to, important if the camera image is split in a Y and CbCr component. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_canvasgroup.rst b/classes/class_canvasgroup.rst index 54b8f53ba..950c94569 100644 --- a/classes/class_canvasgroup.rst +++ b/classes/class_canvasgroup.rst @@ -27,16 +27,16 @@ Child :ref:`CanvasItem` nodes of a **CanvasGroup** are drawn a shader_type canvas_item; render_mode unshaded; - + uniform sampler2D screen_texture : hint_screen_texture, repeat_disable, filter_nearest; - + void fragment() { vec4 c = textureLod(screen_texture, SCREEN_UV, 0.0); - + if (c.a > 0.0001) { c.rgb /= c.a; } - + COLOR *= c; } @@ -115,6 +115,7 @@ Sets the size of a margin used to expand the drawable rect of this **CanvasGroup If ``true``, calculates mipmaps for the backbuffer before drawing the **CanvasGroup** so that mipmaps can be used in a custom :ref:`ShaderMaterial` attached to the **CanvasGroup**. Generating mipmaps has a performance cost so this should not be enabled unless required. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_canvasitem.rst b/classes/class_canvasitem.rst index 68319c65f..2ad406e6b 100644 --- a/classes/class_canvasitem.rst +++ b/classes/class_canvasitem.rst @@ -90,127 +90,127 @@ Methods .. table:: :widths: auto - +---------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_draw`\ (\ ) |virtual| | - +---------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`draw_animation_slice`\ (\ animation_length\: :ref:`float`, slice_begin\: :ref:`float`, slice_end\: :ref:`float`, offset\: :ref:`float` = 0.0\ ) | - +---------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`draw_arc`\ (\ center\: :ref:`Vector2`, radius\: :ref:`float`, start_angle\: :ref:`float`, end_angle\: :ref:`float`, point_count\: :ref:`int`, color\: :ref:`Color`, width\: :ref:`float` = -1.0, antialiased\: :ref:`bool` = false\ ) | - +---------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`draw_char`\ (\ font\: :ref:`Font`, pos\: :ref:`Vector2`, char\: :ref:`String`, font_size\: :ref:`int` = 16, modulate\: :ref:`Color` = Color(1, 1, 1, 1)\ ) |const| | - +---------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`draw_char_outline`\ (\ font\: :ref:`Font`, pos\: :ref:`Vector2`, char\: :ref:`String`, font_size\: :ref:`int` = 16, size\: :ref:`int` = -1, modulate\: :ref:`Color` = Color(1, 1, 1, 1)\ ) |const| | - +---------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`draw_circle`\ (\ position\: :ref:`Vector2`, radius\: :ref:`float`, color\: :ref:`Color`, filled\: :ref:`bool` = true, width\: :ref:`float` = -1.0, antialiased\: :ref:`bool` = false\ ) | - +---------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`draw_colored_polygon`\ (\ points\: :ref:`PackedVector2Array`, color\: :ref:`Color`, uvs\: :ref:`PackedVector2Array` = PackedVector2Array(), texture\: :ref:`Texture2D` = null\ ) | - +---------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`draw_dashed_line`\ (\ from\: :ref:`Vector2`, to\: :ref:`Vector2`, color\: :ref:`Color`, width\: :ref:`float` = -1.0, dash\: :ref:`float` = 2.0, aligned\: :ref:`bool` = true, antialiased\: :ref:`bool` = false\ ) | - +---------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`draw_end_animation`\ (\ ) | - +---------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`draw_lcd_texture_rect_region`\ (\ texture\: :ref:`Texture2D`, rect\: :ref:`Rect2`, src_rect\: :ref:`Rect2`, modulate\: :ref:`Color` = Color(1, 1, 1, 1)\ ) | - +---------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`draw_line`\ (\ from\: :ref:`Vector2`, to\: :ref:`Vector2`, color\: :ref:`Color`, width\: :ref:`float` = -1.0, antialiased\: :ref:`bool` = false\ ) | - +---------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`draw_mesh`\ (\ mesh\: :ref:`Mesh`, texture\: :ref:`Texture2D`, transform\: :ref:`Transform2D` = Transform2D(1, 0, 0, 1, 0, 0), modulate\: :ref:`Color` = Color(1, 1, 1, 1)\ ) | - +---------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`draw_msdf_texture_rect_region`\ (\ texture\: :ref:`Texture2D`, rect\: :ref:`Rect2`, src_rect\: :ref:`Rect2`, modulate\: :ref:`Color` = Color(1, 1, 1, 1), outline\: :ref:`float` = 0.0, pixel_range\: :ref:`float` = 4.0, scale\: :ref:`float` = 1.0\ ) | - +---------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`draw_multiline`\ (\ points\: :ref:`PackedVector2Array`, color\: :ref:`Color`, width\: :ref:`float` = -1.0, antialiased\: :ref:`bool` = false\ ) | - +---------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`draw_multiline_colors`\ (\ points\: :ref:`PackedVector2Array`, colors\: :ref:`PackedColorArray`, width\: :ref:`float` = -1.0, antialiased\: :ref:`bool` = false\ ) | - +---------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`draw_multiline_string`\ (\ font\: :ref:`Font`, pos\: :ref:`Vector2`, text\: :ref:`String`, alignment\: :ref:`HorizontalAlignment` = 0, width\: :ref:`float` = -1, font_size\: :ref:`int` = 16, max_lines\: :ref:`int` = -1, modulate\: :ref:`Color` = Color(1, 1, 1, 1), brk_flags\: |bitfield|\[:ref:`LineBreakFlag`\] = 3, justification_flags\: |bitfield|\[:ref:`JustificationFlag`\] = 3, direction\: :ref:`Direction` = 0, orientation\: :ref:`Orientation` = 0\ ) |const| | - +---------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`draw_multiline_string_outline`\ (\ font\: :ref:`Font`, pos\: :ref:`Vector2`, text\: :ref:`String`, alignment\: :ref:`HorizontalAlignment` = 0, width\: :ref:`float` = -1, font_size\: :ref:`int` = 16, max_lines\: :ref:`int` = -1, size\: :ref:`int` = 1, modulate\: :ref:`Color` = Color(1, 1, 1, 1), brk_flags\: |bitfield|\[:ref:`LineBreakFlag`\] = 3, justification_flags\: |bitfield|\[:ref:`JustificationFlag`\] = 3, direction\: :ref:`Direction` = 0, orientation\: :ref:`Orientation` = 0\ ) |const| | - +---------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`draw_multimesh`\ (\ multimesh\: :ref:`MultiMesh`, texture\: :ref:`Texture2D`\ ) | - +---------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`draw_polygon`\ (\ points\: :ref:`PackedVector2Array`, colors\: :ref:`PackedColorArray`, uvs\: :ref:`PackedVector2Array` = PackedVector2Array(), texture\: :ref:`Texture2D` = null\ ) | - +---------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`draw_polyline`\ (\ points\: :ref:`PackedVector2Array`, color\: :ref:`Color`, width\: :ref:`float` = -1.0, antialiased\: :ref:`bool` = false\ ) | - +---------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`draw_polyline_colors`\ (\ points\: :ref:`PackedVector2Array`, colors\: :ref:`PackedColorArray`, width\: :ref:`float` = -1.0, antialiased\: :ref:`bool` = false\ ) | - +---------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`draw_primitive`\ (\ points\: :ref:`PackedVector2Array`, colors\: :ref:`PackedColorArray`, uvs\: :ref:`PackedVector2Array`, texture\: :ref:`Texture2D` = null\ ) | - +---------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`draw_rect`\ (\ rect\: :ref:`Rect2`, color\: :ref:`Color`, filled\: :ref:`bool` = true, width\: :ref:`float` = -1.0, antialiased\: :ref:`bool` = false\ ) | - +---------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`draw_set_transform`\ (\ position\: :ref:`Vector2`, rotation\: :ref:`float` = 0.0, scale\: :ref:`Vector2` = Vector2(1, 1)\ ) | - +---------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`draw_set_transform_matrix`\ (\ xform\: :ref:`Transform2D`\ ) | - +---------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`draw_string`\ (\ font\: :ref:`Font`, pos\: :ref:`Vector2`, text\: :ref:`String`, alignment\: :ref:`HorizontalAlignment` = 0, width\: :ref:`float` = -1, font_size\: :ref:`int` = 16, modulate\: :ref:`Color` = Color(1, 1, 1, 1), justification_flags\: |bitfield|\[:ref:`JustificationFlag`\] = 3, direction\: :ref:`Direction` = 0, orientation\: :ref:`Orientation` = 0\ ) |const| | - +---------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`draw_string_outline`\ (\ font\: :ref:`Font`, pos\: :ref:`Vector2`, text\: :ref:`String`, alignment\: :ref:`HorizontalAlignment` = 0, width\: :ref:`float` = -1, font_size\: :ref:`int` = 16, size\: :ref:`int` = 1, modulate\: :ref:`Color` = Color(1, 1, 1, 1), justification_flags\: |bitfield|\[:ref:`JustificationFlag`\] = 3, direction\: :ref:`Direction` = 0, orientation\: :ref:`Orientation` = 0\ ) |const| | - +---------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`draw_style_box`\ (\ style_box\: :ref:`StyleBox`, rect\: :ref:`Rect2`\ ) | - +---------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`draw_texture`\ (\ texture\: :ref:`Texture2D`, position\: :ref:`Vector2`, modulate\: :ref:`Color` = Color(1, 1, 1, 1)\ ) | - +---------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`draw_texture_rect`\ (\ texture\: :ref:`Texture2D`, rect\: :ref:`Rect2`, tile\: :ref:`bool`, modulate\: :ref:`Color` = Color(1, 1, 1, 1), transpose\: :ref:`bool` = false\ ) | - +---------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`draw_texture_rect_region`\ (\ texture\: :ref:`Texture2D`, rect\: :ref:`Rect2`, src_rect\: :ref:`Rect2`, modulate\: :ref:`Color` = Color(1, 1, 1, 1), transpose\: :ref:`bool` = false, clip_uv\: :ref:`bool` = true\ ) | - +---------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`force_update_transform`\ (\ ) | - +---------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`RID` | :ref:`get_canvas`\ (\ ) |const| | - +---------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`RID` | :ref:`get_canvas_item`\ (\ ) |const| | - +---------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`CanvasLayer` | :ref:`get_canvas_layer_node`\ (\ ) |const| | - +---------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Transform2D` | :ref:`get_canvas_transform`\ (\ ) |const| | - +---------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Vector2` | :ref:`get_global_mouse_position`\ (\ ) |const| | - +---------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Transform2D` | :ref:`get_global_transform`\ (\ ) |const| | - +---------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Transform2D` | :ref:`get_global_transform_with_canvas`\ (\ ) |const| | - +---------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Variant` | :ref:`get_instance_shader_parameter`\ (\ name\: :ref:`StringName`\ ) |const| | - +---------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Vector2` | :ref:`get_local_mouse_position`\ (\ ) |const| | - +---------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Transform2D` | :ref:`get_screen_transform`\ (\ ) |const| | - +---------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Transform2D` | :ref:`get_transform`\ (\ ) |const| | - +---------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Rect2` | :ref:`get_viewport_rect`\ (\ ) |const| | - +---------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Transform2D` | :ref:`get_viewport_transform`\ (\ ) |const| | - +---------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`get_visibility_layer_bit`\ (\ layer\: :ref:`int`\ ) |const| | - +---------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`World2D` | :ref:`get_world_2d`\ (\ ) |const| | - +---------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`hide`\ (\ ) | - +---------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`is_local_transform_notification_enabled`\ (\ ) |const| | - +---------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`is_transform_notification_enabled`\ (\ ) |const| | - +---------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`is_visible_in_tree`\ (\ ) |const| | - +---------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Vector2` | :ref:`make_canvas_position_local`\ (\ viewport_point\: :ref:`Vector2`\ ) |const| | - +---------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`InputEvent` | :ref:`make_input_local`\ (\ event\: :ref:`InputEvent`\ ) |const| | - +---------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`move_to_front`\ (\ ) | - +---------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`queue_redraw`\ (\ ) | - +---------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`set_instance_shader_parameter`\ (\ name\: :ref:`StringName`, value\: :ref:`Variant`\ ) | - +---------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`set_notify_local_transform`\ (\ enable\: :ref:`bool`\ ) | - +---------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`set_notify_transform`\ (\ enable\: :ref:`bool`\ ) | - +---------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`set_visibility_layer_bit`\ (\ layer\: :ref:`int`, enabled\: :ref:`bool`\ ) | - +---------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`show`\ (\ ) | - +---------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + +---------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_draw`\ (\ ) |virtual| | + +---------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`draw_animation_slice`\ (\ animation_length\: :ref:`float`, slice_begin\: :ref:`float`, slice_end\: :ref:`float`, offset\: :ref:`float` = 0.0\ ) | + +---------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`draw_arc`\ (\ center\: :ref:`Vector2`, radius\: :ref:`float`, start_angle\: :ref:`float`, end_angle\: :ref:`float`, point_count\: :ref:`int`, color\: :ref:`Color`, width\: :ref:`float` = -1.0, antialiased\: :ref:`bool` = false\ ) | + +---------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`draw_char`\ (\ font\: :ref:`Font`, pos\: :ref:`Vector2`, char\: :ref:`String`, font_size\: :ref:`int` = 16, modulate\: :ref:`Color` = Color(1, 1, 1, 1), oversampling\: :ref:`float` = 0.0\ ) |const| | + +---------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`draw_char_outline`\ (\ font\: :ref:`Font`, pos\: :ref:`Vector2`, char\: :ref:`String`, font_size\: :ref:`int` = 16, size\: :ref:`int` = -1, modulate\: :ref:`Color` = Color(1, 1, 1, 1), oversampling\: :ref:`float` = 0.0\ ) |const| | + +---------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`draw_circle`\ (\ position\: :ref:`Vector2`, radius\: :ref:`float`, color\: :ref:`Color`, filled\: :ref:`bool` = true, width\: :ref:`float` = -1.0, antialiased\: :ref:`bool` = false\ ) | + +---------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`draw_colored_polygon`\ (\ points\: :ref:`PackedVector2Array`, color\: :ref:`Color`, uvs\: :ref:`PackedVector2Array` = PackedVector2Array(), texture\: :ref:`Texture2D` = null\ ) | + +---------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`draw_dashed_line`\ (\ from\: :ref:`Vector2`, to\: :ref:`Vector2`, color\: :ref:`Color`, width\: :ref:`float` = -1.0, dash\: :ref:`float` = 2.0, aligned\: :ref:`bool` = true, antialiased\: :ref:`bool` = false\ ) | + +---------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`draw_end_animation`\ (\ ) | + +---------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`draw_lcd_texture_rect_region`\ (\ texture\: :ref:`Texture2D`, rect\: :ref:`Rect2`, src_rect\: :ref:`Rect2`, modulate\: :ref:`Color` = Color(1, 1, 1, 1)\ ) | + +---------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`draw_line`\ (\ from\: :ref:`Vector2`, to\: :ref:`Vector2`, color\: :ref:`Color`, width\: :ref:`float` = -1.0, antialiased\: :ref:`bool` = false\ ) | + +---------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`draw_mesh`\ (\ mesh\: :ref:`Mesh`, texture\: :ref:`Texture2D`, transform\: :ref:`Transform2D` = Transform2D(1, 0, 0, 1, 0, 0), modulate\: :ref:`Color` = Color(1, 1, 1, 1)\ ) | + +---------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`draw_msdf_texture_rect_region`\ (\ texture\: :ref:`Texture2D`, rect\: :ref:`Rect2`, src_rect\: :ref:`Rect2`, modulate\: :ref:`Color` = Color(1, 1, 1, 1), outline\: :ref:`float` = 0.0, pixel_range\: :ref:`float` = 4.0, scale\: :ref:`float` = 1.0\ ) | + +---------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`draw_multiline`\ (\ points\: :ref:`PackedVector2Array`, color\: :ref:`Color`, width\: :ref:`float` = -1.0, antialiased\: :ref:`bool` = false\ ) | + +---------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`draw_multiline_colors`\ (\ points\: :ref:`PackedVector2Array`, colors\: :ref:`PackedColorArray`, width\: :ref:`float` = -1.0, antialiased\: :ref:`bool` = false\ ) | + +---------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`draw_multiline_string`\ (\ font\: :ref:`Font`, pos\: :ref:`Vector2`, text\: :ref:`String`, alignment\: :ref:`HorizontalAlignment` = 0, width\: :ref:`float` = -1, font_size\: :ref:`int` = 16, max_lines\: :ref:`int` = -1, modulate\: :ref:`Color` = Color(1, 1, 1, 1), brk_flags\: |bitfield|\[:ref:`LineBreakFlag`\] = 3, justification_flags\: |bitfield|\[:ref:`JustificationFlag`\] = 3, direction\: :ref:`Direction` = 0, orientation\: :ref:`Orientation` = 0, oversampling\: :ref:`float` = 0.0\ ) |const| | + +---------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`draw_multiline_string_outline`\ (\ font\: :ref:`Font`, pos\: :ref:`Vector2`, text\: :ref:`String`, alignment\: :ref:`HorizontalAlignment` = 0, width\: :ref:`float` = -1, font_size\: :ref:`int` = 16, max_lines\: :ref:`int` = -1, size\: :ref:`int` = 1, modulate\: :ref:`Color` = Color(1, 1, 1, 1), brk_flags\: |bitfield|\[:ref:`LineBreakFlag`\] = 3, justification_flags\: |bitfield|\[:ref:`JustificationFlag`\] = 3, direction\: :ref:`Direction` = 0, orientation\: :ref:`Orientation` = 0, oversampling\: :ref:`float` = 0.0\ ) |const| | + +---------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`draw_multimesh`\ (\ multimesh\: :ref:`MultiMesh`, texture\: :ref:`Texture2D`\ ) | + +---------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`draw_polygon`\ (\ points\: :ref:`PackedVector2Array`, colors\: :ref:`PackedColorArray`, uvs\: :ref:`PackedVector2Array` = PackedVector2Array(), texture\: :ref:`Texture2D` = null\ ) | + +---------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`draw_polyline`\ (\ points\: :ref:`PackedVector2Array`, color\: :ref:`Color`, width\: :ref:`float` = -1.0, antialiased\: :ref:`bool` = false\ ) | + +---------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`draw_polyline_colors`\ (\ points\: :ref:`PackedVector2Array`, colors\: :ref:`PackedColorArray`, width\: :ref:`float` = -1.0, antialiased\: :ref:`bool` = false\ ) | + +---------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`draw_primitive`\ (\ points\: :ref:`PackedVector2Array`, colors\: :ref:`PackedColorArray`, uvs\: :ref:`PackedVector2Array`, texture\: :ref:`Texture2D` = null\ ) | + +---------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`draw_rect`\ (\ rect\: :ref:`Rect2`, color\: :ref:`Color`, filled\: :ref:`bool` = true, width\: :ref:`float` = -1.0, antialiased\: :ref:`bool` = false\ ) | + +---------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`draw_set_transform`\ (\ position\: :ref:`Vector2`, rotation\: :ref:`float` = 0.0, scale\: :ref:`Vector2` = Vector2(1, 1)\ ) | + +---------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`draw_set_transform_matrix`\ (\ xform\: :ref:`Transform2D`\ ) | + +---------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`draw_string`\ (\ font\: :ref:`Font`, pos\: :ref:`Vector2`, text\: :ref:`String`, alignment\: :ref:`HorizontalAlignment` = 0, width\: :ref:`float` = -1, font_size\: :ref:`int` = 16, modulate\: :ref:`Color` = Color(1, 1, 1, 1), justification_flags\: |bitfield|\[:ref:`JustificationFlag`\] = 3, direction\: :ref:`Direction` = 0, orientation\: :ref:`Orientation` = 0, oversampling\: :ref:`float` = 0.0\ ) |const| | + +---------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`draw_string_outline`\ (\ font\: :ref:`Font`, pos\: :ref:`Vector2`, text\: :ref:`String`, alignment\: :ref:`HorizontalAlignment` = 0, width\: :ref:`float` = -1, font_size\: :ref:`int` = 16, size\: :ref:`int` = 1, modulate\: :ref:`Color` = Color(1, 1, 1, 1), justification_flags\: |bitfield|\[:ref:`JustificationFlag`\] = 3, direction\: :ref:`Direction` = 0, orientation\: :ref:`Orientation` = 0, oversampling\: :ref:`float` = 0.0\ ) |const| | + +---------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`draw_style_box`\ (\ style_box\: :ref:`StyleBox`, rect\: :ref:`Rect2`\ ) | + +---------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`draw_texture`\ (\ texture\: :ref:`Texture2D`, position\: :ref:`Vector2`, modulate\: :ref:`Color` = Color(1, 1, 1, 1)\ ) | + +---------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`draw_texture_rect`\ (\ texture\: :ref:`Texture2D`, rect\: :ref:`Rect2`, tile\: :ref:`bool`, modulate\: :ref:`Color` = Color(1, 1, 1, 1), transpose\: :ref:`bool` = false\ ) | + +---------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`draw_texture_rect_region`\ (\ texture\: :ref:`Texture2D`, rect\: :ref:`Rect2`, src_rect\: :ref:`Rect2`, modulate\: :ref:`Color` = Color(1, 1, 1, 1), transpose\: :ref:`bool` = false, clip_uv\: :ref:`bool` = true\ ) | + +---------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`force_update_transform`\ (\ ) | + +---------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`RID` | :ref:`get_canvas`\ (\ ) |const| | + +---------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`RID` | :ref:`get_canvas_item`\ (\ ) |const| | + +---------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`CanvasLayer` | :ref:`get_canvas_layer_node`\ (\ ) |const| | + +---------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Transform2D` | :ref:`get_canvas_transform`\ (\ ) |const| | + +---------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Vector2` | :ref:`get_global_mouse_position`\ (\ ) |const| | + +---------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Transform2D` | :ref:`get_global_transform`\ (\ ) |const| | + +---------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Transform2D` | :ref:`get_global_transform_with_canvas`\ (\ ) |const| | + +---------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Variant` | :ref:`get_instance_shader_parameter`\ (\ name\: :ref:`StringName`\ ) |const| | + +---------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Vector2` | :ref:`get_local_mouse_position`\ (\ ) |const| | + +---------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Transform2D` | :ref:`get_screen_transform`\ (\ ) |const| | + +---------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Transform2D` | :ref:`get_transform`\ (\ ) |const| | + +---------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Rect2` | :ref:`get_viewport_rect`\ (\ ) |const| | + +---------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Transform2D` | :ref:`get_viewport_transform`\ (\ ) |const| | + +---------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`get_visibility_layer_bit`\ (\ layer\: :ref:`int`\ ) |const| | + +---------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`World2D` | :ref:`get_world_2d`\ (\ ) |const| | + +---------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`hide`\ (\ ) | + +---------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`is_local_transform_notification_enabled`\ (\ ) |const| | + +---------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`is_transform_notification_enabled`\ (\ ) |const| | + +---------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`is_visible_in_tree`\ (\ ) |const| | + +---------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Vector2` | :ref:`make_canvas_position_local`\ (\ viewport_point\: :ref:`Vector2`\ ) |const| | + +---------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`InputEvent` | :ref:`make_input_local`\ (\ event\: :ref:`InputEvent`\ ) |const| | + +---------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`move_to_front`\ (\ ) | + +---------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`queue_redraw`\ (\ ) | + +---------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_instance_shader_parameter`\ (\ name\: :ref:`StringName`, value\: :ref:`Variant`\ ) | + +---------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_notify_local_transform`\ (\ enable\: :ref:`bool`\ ) | + +---------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_notify_transform`\ (\ enable\: :ref:`bool`\ ) | + +---------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_visibility_layer_bit`\ (\ layer\: :ref:`int`, enabled\: :ref:`bool`\ ) | + +---------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`show`\ (\ ) | + +---------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ .. rst-class:: classref-section-separator @@ -241,7 +241,7 @@ Emitted when the **CanvasItem** must redraw, *after* the related :ref:`NOTIFICAT **hidden**\ (\ ) :ref:`🔗` -Emitted when the **CanvasItem** is hidden, i.e. it's no longer visible in the tree (see :ref:`is_visible_in_tree()`). +Emitted when this node becomes hidden, i.e. it's no longer visible in the tree (see :ref:`is_visible_in_tree()`). .. rst-class:: classref-item-separator @@ -267,6 +267,8 @@ Emitted when the **CanvasItem**'s boundaries (position or size) change, or when Emitted when the **CanvasItem**'s visibility changes, either because its own :ref:`visible` property changed or because its visibility in the tree changed (see :ref:`is_visible_in_tree()`). +This signal is emitted *after* the related :ref:`NOTIFICATION_VISIBILITY_CHANGED` notification. + .. rst-class:: classref-section-separator ---- @@ -378,7 +380,7 @@ The **CanvasItem** will inherit the filter from its parent. :ref:`TextureRepeat` **TEXTURE_REPEAT_DISABLED** = ``1`` -Texture will not repeat. +The texture does not repeat. Sampling the texture outside its extents will result in "stretching" of the edge pixels. You can avoid this by ensuring a 1-pixel fully transparent border on each side of the texture. .. _class_CanvasItem_constant_TEXTURE_REPEAT_ENABLED: @@ -386,7 +388,7 @@ Texture will not repeat. :ref:`TextureRepeat` **TEXTURE_REPEAT_ENABLED** = ``2`` -Texture will repeat normally. +The texture repeats when exceeding the texture's size. .. _class_CanvasItem_constant_TEXTURE_REPEAT_MIRROR: @@ -394,7 +396,7 @@ Texture will repeat normally. :ref:`TextureRepeat` **TEXTURE_REPEAT_MIRROR** = ``3`` -Texture will repeat in a 2×2 tiled mode, where elements at even positions are mirrored. +The texture repeats when the exceeding the texture's size in a "2×2 tiled mode". Repeated textures at even positions are mirrored. .. _class_CanvasItem_constant_TEXTURE_REPEAT_MAX: @@ -420,7 +422,7 @@ enum **ClipChildrenMode**: :ref:`🔗` :ref:`ClipChildrenMode` **CLIP_CHILDREN_DISABLED** = ``0`` -Child draws over parent and is not clipped. +Children are drawn over this node and are not clipped. .. _class_CanvasItem_constant_CLIP_CHILDREN_ONLY: @@ -428,7 +430,7 @@ Child draws over parent and is not clipped. :ref:`ClipChildrenMode` **CLIP_CHILDREN_ONLY** = ``1`` -Parent is used for the purposes of clipping only. Child is clipped to the parent's visible area, parent is not drawn. +This node is used as a mask and is **not** drawn. The mask is based on this node's alpha channel: Opaque pixels are kept, transparent pixels are discarded, and semi-transparent pixels are blended in according to their opacity. Children are clipped to this node's drawn area. .. _class_CanvasItem_constant_CLIP_CHILDREN_AND_DRAW: @@ -436,7 +438,7 @@ Parent is used for the purposes of clipping only. Child is clipped to the parent :ref:`ClipChildrenMode` **CLIP_CHILDREN_AND_DRAW** = ``2`` -Parent is used for clipping child, but parent is also drawn underneath child as normal before clipping child to its visible area. +This node is used as a mask and is also drawn. The mask is based on this node's alpha channel: Opaque pixels are kept, transparent pixels are discarded, and semi-transparent pixels are blended in according to their opacity. Children are clipped to the parent's drawn area. .. _class_CanvasItem_constant_CLIP_CHILDREN_MAX: @@ -461,7 +463,9 @@ Constants **NOTIFICATION_TRANSFORM_CHANGED** = ``2000`` :ref:`🔗` -The **CanvasItem**'s global transform has changed. This notification is only received if enabled by :ref:`set_notify_transform()`. +Notification received when this node's global transform changes, if :ref:`is_transform_notification_enabled()` is ``true``. See also :ref:`set_notify_transform()` and :ref:`get_transform()`. + +\ **Note:** Many canvas items such as :ref:`Camera2D` or :ref:`CollisionObject2D` automatically enable this in order to function correctly. .. _class_CanvasItem_constant_NOTIFICATION_LOCAL_TRANSFORM_CHANGED: @@ -469,7 +473,9 @@ The **CanvasItem**'s global transform has changed. This notification is only rec **NOTIFICATION_LOCAL_TRANSFORM_CHANGED** = ``35`` :ref:`🔗` -The **CanvasItem**'s local transform has changed. This notification is only received if enabled by :ref:`set_notify_local_transform()`. +Notification received when this node's transform changes, if :ref:`is_local_transform_notification_enabled()` is ``true``. This is not received when a parent :ref:`Node2D`'s transform changes. See also :ref:`set_notify_local_transform()`. + +\ **Note:** Many canvas items such as :ref:`Camera2D` or :ref:`CollisionShape2D` automatically enable this in order to function correctly. .. _class_CanvasItem_constant_NOTIFICATION_DRAW: @@ -485,7 +491,9 @@ The **CanvasItem** is requested to draw (see :ref:`_draw()` -The **CanvasItem**'s visibility has changed. +Notification received when this node's visibility changes (see :ref:`visible` and :ref:`is_visible_in_tree()`). + +This notification is received *before* the related :ref:`visibility_changed` signal. .. _class_CanvasItem_constant_NOTIFICATION_ENTER_CANVAS: @@ -509,7 +517,7 @@ The **CanvasItem** has exited the canvas. **NOTIFICATION_WORLD_2D_CHANGED** = ``36`` :ref:`🔗` -The **CanvasItem**'s active :ref:`World2D` changed. +Notification received when this **CanvasItem** is registered to a new :ref:`World2D` (see :ref:`get_world_2d()`). .. rst-class:: classref-section-separator @@ -531,9 +539,9 @@ Property Descriptions - |void| **set_clip_children_mode**\ (\ value\: :ref:`ClipChildrenMode`\ ) - :ref:`ClipChildrenMode` **get_clip_children_mode**\ (\ ) -Allows the current node to clip child nodes, essentially acting as a mask. +The mode in which this node clips its children, acting as a mask. -\ **Note:** Clipping nodes cannot be nested or placed within :ref:`CanvasGroup`\ s. If an ancestor of this node clips its children or is a :ref:`CanvasGroup`, then this node's clip mode should be set to :ref:`CLIP_CHILDREN_DISABLED` to avoid unexpected behavior. +\ **Note:** Clipping nodes cannot be nested or placed within a :ref:`CanvasGroup`. If an ancestor of this node clips its children or is a :ref:`CanvasGroup`, then this node's clip mode should be set to :ref:`CLIP_CHILDREN_DISABLED` to avoid unexpected behavior. .. rst-class:: classref-item-separator @@ -603,7 +611,7 @@ The color applied to this **CanvasItem**. This property does affect child **Canv The color applied to this **CanvasItem**. This property does **not** affect child **CanvasItem**\ s, unlike :ref:`modulate` which affects both the node itself and its children. -\ **Note:** Internal children (e.g. sliders in :ref:`ColorPicker` or tab bar in :ref:`TabContainer`) are also not affected by this property (see ``include_internal`` parameter of :ref:`Node.get_child()` and other similar methods). +\ **Note:** Internal children are also not affected by this property (see the ``include_internal`` parameter in :ref:`Node.add_child()`). For built-in nodes this includes sliders in :ref:`ColorPicker`, and the tab bar in :ref:`TabContainer`. .. rst-class:: classref-item-separator @@ -620,7 +628,7 @@ The color applied to this **CanvasItem**. This property does **not** affect chil - |void| **set_draw_behind_parent**\ (\ value\: :ref:`bool`\ ) - :ref:`bool` **is_draw_behind_parent_enabled**\ (\ ) -If ``true``, the object draws behind its parent. +If ``true``, this node draws behind its parent. .. rst-class:: classref-item-separator @@ -637,7 +645,7 @@ If ``true``, the object draws behind its parent. - |void| **set_texture_filter**\ (\ value\: :ref:`TextureFilter`\ ) - :ref:`TextureFilter` **get_texture_filter**\ (\ ) -The texture filtering mode to use on this **CanvasItem**. +The filtering mode used to render this **CanvasItem**'s texture(s). .. rst-class:: classref-item-separator @@ -654,7 +662,9 @@ The texture filtering mode to use on this **CanvasItem**. - |void| **set_texture_repeat**\ (\ value\: :ref:`TextureRepeat`\ ) - :ref:`TextureRepeat` **get_texture_repeat**\ (\ ) -The texture repeating mode to use on this **CanvasItem**. +The repeating mode used to render this **CanvasItem**'s texture(s). It affects what happens when the texture is sampled outside its extents, for example by setting a :ref:`Sprite2D.region_rect` that is larger than the texture or assigning :ref:`Polygon2D` UV points outside the texture. + +\ **Note:** :ref:`TextureRect` is not affected by :ref:`texture_repeat`, as it uses its own texture repeating implementation. .. rst-class:: classref-item-separator @@ -688,7 +698,7 @@ If ``true``, this **CanvasItem** will *not* inherit its transform from parent ** - |void| **set_use_parent_material**\ (\ value\: :ref:`bool`\ ) - :ref:`bool` **get_use_parent_material**\ (\ ) -If ``true``, the parent **CanvasItem**'s :ref:`material` property is used as this one's material. +If ``true``, the parent **CanvasItem**'s :ref:`material` is used as this node's material. .. rst-class:: classref-item-separator @@ -762,7 +772,9 @@ Nodes sort relative to each other only if they are on the same :ref:`z_index`\ ) - :ref:`bool` **is_z_relative**\ (\ ) -If ``true``, the node's Z index is relative to its parent's Z index. If this node's Z index is 2 and its parent's effective Z index is 3, then this node's effective Z index will be 2 + 3 = 5. +If ``true``, this node's final Z index is relative to its parent's Z index. + +For example, if :ref:`z_index` is ``2`` and its parent's final Z index is ``3``, then this node's final Z index will be ``5`` (``2 + 3``). .. rst-class:: classref-item-separator @@ -779,9 +791,9 @@ If ``true``, the node's Z index is relative to its parent's Z index. If this nod - |void| **set_z_index**\ (\ value\: :ref:`int`\ ) - :ref:`int` **get_z_index**\ (\ ) -Controls the order in which the nodes render. A node with a higher Z index will display in front of others. Must be between :ref:`RenderingServer.CANVAS_ITEM_Z_MIN` and :ref:`RenderingServer.CANVAS_ITEM_Z_MAX` (inclusive). +The order in which this node is drawn. A node with a higher Z index will display in front of others. Must be between :ref:`RenderingServer.CANVAS_ITEM_Z_MIN` and :ref:`RenderingServer.CANVAS_ITEM_Z_MAX` (inclusive). -\ **Note:** Changing the Z index of a :ref:`Control` only affects the drawing order, not the order in which input events are handled. This can be useful to implement certain UI animations, e.g. a menu where hovered items are scaled and should overlap others. +\ **Note:** The Z index does **not** affect the order in which **CanvasItem** nodes are processed or the way input events are handled. This is especially important to keep in mind for :ref:`Control` nodes. .. rst-class:: classref-section-separator @@ -824,7 +836,7 @@ Subsequent drawing commands will be ignored unless they fall within the specifie |void| **draw_arc**\ (\ center\: :ref:`Vector2`, radius\: :ref:`float`, start_angle\: :ref:`float`, end_angle\: :ref:`float`, point_count\: :ref:`int`, color\: :ref:`Color`, width\: :ref:`float` = -1.0, antialiased\: :ref:`bool` = false\ ) :ref:`🔗` -Draws an unfilled arc between the given angles with a uniform ``color`` and ``width`` and optional antialiasing (supported only for positive ``width``). The larger the value of ``point_count``, the smoother the curve. See also :ref:`draw_circle()`. +Draws an unfilled arc between the given angles with a uniform ``color`` and ``width`` and optional antialiasing (supported only for positive ``width``). The larger the value of ``point_count``, the smoother the curve. ``center`` is defined in local space. See also :ref:`draw_circle()`. If ``width`` is negative, it will be ignored and the arc will be drawn using :ref:`RenderingServer.PRIMITIVE_LINE_STRIP`. This means that when the CanvasItem is scaled, the arc will remain thin. If this behavior is not desired, then pass a positive ``width`` like ``1.0``. @@ -838,9 +850,9 @@ The arc is drawn from ``start_angle`` towards the value of ``end_angle`` so in c .. rst-class:: classref-method -|void| **draw_char**\ (\ font\: :ref:`Font`, pos\: :ref:`Vector2`, char\: :ref:`String`, font_size\: :ref:`int` = 16, modulate\: :ref:`Color` = Color(1, 1, 1, 1)\ ) |const| :ref:`🔗` +|void| **draw_char**\ (\ font\: :ref:`Font`, pos\: :ref:`Vector2`, char\: :ref:`String`, font_size\: :ref:`int` = 16, modulate\: :ref:`Color` = Color(1, 1, 1, 1), oversampling\: :ref:`float` = 0.0\ ) |const| :ref:`🔗` -Draws a string first character using a custom font. +Draws a string first character using a custom font. If ``oversampling`` is greater than zero, it is used as font oversampling factor, otherwise viewport oversampling settings are used. ``pos`` is defined in local space. .. rst-class:: classref-item-separator @@ -850,9 +862,9 @@ Draws a string first character using a custom font. .. rst-class:: classref-method -|void| **draw_char_outline**\ (\ font\: :ref:`Font`, pos\: :ref:`Vector2`, char\: :ref:`String`, font_size\: :ref:`int` = 16, size\: :ref:`int` = -1, modulate\: :ref:`Color` = Color(1, 1, 1, 1)\ ) |const| :ref:`🔗` +|void| **draw_char_outline**\ (\ font\: :ref:`Font`, pos\: :ref:`Vector2`, char\: :ref:`String`, font_size\: :ref:`int` = 16, size\: :ref:`int` = -1, modulate\: :ref:`Color` = Color(1, 1, 1, 1), oversampling\: :ref:`float` = 0.0\ ) |const| :ref:`🔗` -Draws a string first character outline using a custom font. +Draws a string first character outline using a custom font. If ``oversampling`` is greater than zero, it is used as font oversampling factor, otherwise viewport oversampling settings are used. ``pos`` is defined in local space. .. rst-class:: classref-item-separator @@ -864,7 +876,7 @@ Draws a string first character outline using a custom font. |void| **draw_circle**\ (\ position\: :ref:`Vector2`, radius\: :ref:`float`, color\: :ref:`Color`, filled\: :ref:`bool` = true, width\: :ref:`float` = -1.0, antialiased\: :ref:`bool` = false\ ) :ref:`🔗` -Draws a circle. See also :ref:`draw_arc()`, :ref:`draw_polyline()`, and :ref:`draw_polygon()`. +Draws a circle, with ``position`` defined in local space. See also :ref:`draw_arc()`, :ref:`draw_polyline()`, and :ref:`draw_polygon()`. If ``filled`` is ``true``, the circle will be filled with the ``color`` specified. If ``filled`` is ``false``, the circle will be drawn as a stroke with the ``color`` and ``width`` specified. @@ -884,7 +896,7 @@ If ``antialiased`` is ``true``, half transparent "feathers" will be attached to |void| **draw_colored_polygon**\ (\ points\: :ref:`PackedVector2Array`, color\: :ref:`Color`, uvs\: :ref:`PackedVector2Array` = PackedVector2Array(), texture\: :ref:`Texture2D` = null\ ) :ref:`🔗` -Draws a colored polygon of any number of points, convex or concave. Unlike :ref:`draw_polygon()`, a single color must be specified for the whole polygon. +Draws a colored polygon of any number of points, convex or concave. The points in the ``points`` array are defined in local space. Unlike :ref:`draw_polygon()`, a single color must be specified for the whole polygon. \ **Note:** If you frequently redraw the same polygon with a large number of vertices, consider pre-calculating the triangulation with :ref:`Geometry2D.triangulate_polygon()` and using :ref:`draw_mesh()`, :ref:`draw_multimesh()`, or :ref:`RenderingServer.canvas_item_add_triangle_array()`. @@ -898,7 +910,7 @@ Draws a colored polygon of any number of points, convex or concave. Unlike :ref: |void| **draw_dashed_line**\ (\ from\: :ref:`Vector2`, to\: :ref:`Vector2`, color\: :ref:`Color`, width\: :ref:`float` = -1.0, dash\: :ref:`float` = 2.0, aligned\: :ref:`bool` = true, antialiased\: :ref:`bool` = false\ ) :ref:`🔗` -Draws a dashed line from a 2D point to another, with a given color and width. See also :ref:`draw_line()`, :ref:`draw_multiline()`, and :ref:`draw_polyline()`. +Draws a dashed line from a 2D point to another, with a given color and width. The ``from`` and ``to`` positions are defined in local space. See also :ref:`draw_line()`, :ref:`draw_multiline()`, and :ref:`draw_polyline()`. If ``width`` is negative, then a two-point primitives will be drawn instead of a four-point ones. This means that when the CanvasItem is scaled, the line parts will remain thin. If this behavior is not desired, then pass a positive ``width`` like ``1.0``. @@ -930,7 +942,7 @@ After submitting all animations slices via :ref:`draw_animation_slice()`, rect\: :ref:`Rect2`, src_rect\: :ref:`Rect2`, modulate\: :ref:`Color` = Color(1, 1, 1, 1)\ ) :ref:`🔗` -Draws a textured rectangle region of the font texture with LCD subpixel anti-aliasing at a given position, optionally modulated by a color. +Draws a textured rectangle region of the font texture with LCD subpixel anti-aliasing at a given position, optionally modulated by a color. The ``rect`` is defined in local space. Texture is drawn using the following blend operation, blend mode of the :ref:`CanvasItemMaterial` is ignored: @@ -951,7 +963,7 @@ Texture is drawn using the following blend operation, blend mode of the :ref:`Ca |void| **draw_line**\ (\ from\: :ref:`Vector2`, to\: :ref:`Vector2`, color\: :ref:`Color`, width\: :ref:`float` = -1.0, antialiased\: :ref:`bool` = false\ ) :ref:`🔗` -Draws a line from a 2D point to another, with a given color and width. It can be optionally antialiased. See also :ref:`draw_dashed_line()`, :ref:`draw_multiline()`, and :ref:`draw_polyline()`. +Draws a line from a 2D point to another, with a given color and width. It can be optionally antialiased. The ``from`` and ``to`` positions are defined in local space. See also :ref:`draw_dashed_line()`, :ref:`draw_multiline()`, and :ref:`draw_polyline()`. If ``width`` is negative, then a two-point primitive will be drawn instead of a four-point one. This means that when the CanvasItem is scaled, the line will remain thin. If this behavior is not desired, then pass a positive ``width`` like ``1.0``. @@ -965,7 +977,7 @@ If ``width`` is negative, then a two-point primitive will be drawn instead of a |void| **draw_mesh**\ (\ mesh\: :ref:`Mesh`, texture\: :ref:`Texture2D`, transform\: :ref:`Transform2D` = Transform2D(1, 0, 0, 1, 0, 0), modulate\: :ref:`Color` = Color(1, 1, 1, 1)\ ) :ref:`🔗` -Draws a :ref:`Mesh` in 2D, using the provided texture. See :ref:`MeshInstance2D` for related documentation. +Draws a :ref:`Mesh` in 2D, using the provided texture. See :ref:`MeshInstance2D` for related documentation. The ``transform`` is defined in local space. .. rst-class:: classref-item-separator @@ -977,7 +989,7 @@ Draws a :ref:`Mesh` in 2D, using the provided texture. See :ref:`Mes |void| **draw_msdf_texture_rect_region**\ (\ texture\: :ref:`Texture2D`, rect\: :ref:`Rect2`, src_rect\: :ref:`Rect2`, modulate\: :ref:`Color` = Color(1, 1, 1, 1), outline\: :ref:`float` = 0.0, pixel_range\: :ref:`float` = 4.0, scale\: :ref:`float` = 1.0\ ) :ref:`🔗` -Draws a textured rectangle region of the multi-channel signed distance field texture at a given position, optionally modulated by a color. See :ref:`FontFile.multichannel_signed_distance_field` for more information and caveats about MSDF font rendering. +Draws a textured rectangle region of the multichannel signed distance field texture at a given position, optionally modulated by a color. The ``rect`` is defined in local space. See :ref:`FontFile.multichannel_signed_distance_field` for more information and caveats about MSDF font rendering. If ``outline`` is positive, each alpha channel value of pixel in region is set to maximum value of true distance in the ``outline`` radius. @@ -993,7 +1005,7 @@ Value of the ``pixel_range`` should the same that was used during distance field |void| **draw_multiline**\ (\ points\: :ref:`PackedVector2Array`, color\: :ref:`Color`, width\: :ref:`float` = -1.0, antialiased\: :ref:`bool` = false\ ) :ref:`🔗` -Draws multiple disconnected lines with a uniform ``width`` and ``color``. Each line is defined by two consecutive points from ``points`` array, i.e. i-th segment consists of ``points[2 * i]``, ``points[2 * i + 1]`` endpoints. When drawing large amounts of lines, this is faster than using individual :ref:`draw_line()` calls. To draw interconnected lines, use :ref:`draw_polyline()` instead. +Draws multiple disconnected lines with a uniform ``width`` and ``color``. Each line is defined by two consecutive points from ``points`` array in local space, i.e. i-th segment consists of ``points[2 * i]``, ``points[2 * i + 1]`` endpoints. When drawing large amounts of lines, this is faster than using individual :ref:`draw_line()` calls. To draw interconnected lines, use :ref:`draw_polyline()` instead. If ``width`` is negative, then two-point primitives will be drawn instead of a four-point ones. This means that when the CanvasItem is scaled, the lines will remain thin. If this behavior is not desired, then pass a positive ``width`` like ``1.0``. @@ -1009,7 +1021,7 @@ If ``width`` is negative, then two-point primitives will be drawn instead of a f |void| **draw_multiline_colors**\ (\ points\: :ref:`PackedVector2Array`, colors\: :ref:`PackedColorArray`, width\: :ref:`float` = -1.0, antialiased\: :ref:`bool` = false\ ) :ref:`🔗` -Draws multiple disconnected lines with a uniform ``width`` and segment-by-segment coloring. Each segment is defined by two consecutive points from ``points`` array and a corresponding color from ``colors`` array, i.e. i-th segment consists of ``points[2 * i]``, ``points[2 * i + 1]`` endpoints and has ``colors[i]`` color. When drawing large amounts of lines, this is faster than using individual :ref:`draw_line()` calls. To draw interconnected lines, use :ref:`draw_polyline_colors()` instead. +Draws multiple disconnected lines with a uniform ``width`` and segment-by-segment coloring. Each segment is defined by two consecutive points from ``points`` array in local space and a corresponding color from ``colors`` array, i.e. i-th segment consists of ``points[2 * i]``, ``points[2 * i + 1]`` endpoints and has ``colors[i]`` color. When drawing large amounts of lines, this is faster than using individual :ref:`draw_line()` calls. To draw interconnected lines, use :ref:`draw_polyline_colors()` instead. If ``width`` is negative, then two-point primitives will be drawn instead of a four-point ones. This means that when the CanvasItem is scaled, the lines will remain thin. If this behavior is not desired, then pass a positive ``width`` like ``1.0``. @@ -1023,9 +1035,9 @@ If ``width`` is negative, then two-point primitives will be drawn instead of a f .. rst-class:: classref-method -|void| **draw_multiline_string**\ (\ font\: :ref:`Font`, pos\: :ref:`Vector2`, text\: :ref:`String`, alignment\: :ref:`HorizontalAlignment` = 0, width\: :ref:`float` = -1, font_size\: :ref:`int` = 16, max_lines\: :ref:`int` = -1, modulate\: :ref:`Color` = Color(1, 1, 1, 1), brk_flags\: |bitfield|\[:ref:`LineBreakFlag`\] = 3, justification_flags\: |bitfield|\[:ref:`JustificationFlag`\] = 3, direction\: :ref:`Direction` = 0, orientation\: :ref:`Orientation` = 0\ ) |const| :ref:`🔗` +|void| **draw_multiline_string**\ (\ font\: :ref:`Font`, pos\: :ref:`Vector2`, text\: :ref:`String`, alignment\: :ref:`HorizontalAlignment` = 0, width\: :ref:`float` = -1, font_size\: :ref:`int` = 16, max_lines\: :ref:`int` = -1, modulate\: :ref:`Color` = Color(1, 1, 1, 1), brk_flags\: |bitfield|\[:ref:`LineBreakFlag`\] = 3, justification_flags\: |bitfield|\[:ref:`JustificationFlag`\] = 3, direction\: :ref:`Direction` = 0, orientation\: :ref:`Orientation` = 0, oversampling\: :ref:`float` = 0.0\ ) |const| :ref:`🔗` -Breaks ``text`` into lines and draws it using the specified ``font`` at the ``pos`` (top-left corner). The text will have its color multiplied by ``modulate``. If ``width`` is greater than or equal to 0, the text will be clipped if it exceeds the specified width. +Breaks ``text`` into lines and draws it using the specified ``font`` at the ``pos`` in local space (top-left corner). The text will have its color multiplied by ``modulate``. If ``width`` is greater than or equal to 0, the text will be clipped if it exceeds the specified width. If ``oversampling`` is greater than zero, it is used as font oversampling factor, otherwise viewport oversampling settings are used. .. rst-class:: classref-item-separator @@ -1035,9 +1047,9 @@ Breaks ``text`` into lines and draws it using the specified ``font`` at the ``po .. rst-class:: classref-method -|void| **draw_multiline_string_outline**\ (\ font\: :ref:`Font`, pos\: :ref:`Vector2`, text\: :ref:`String`, alignment\: :ref:`HorizontalAlignment` = 0, width\: :ref:`float` = -1, font_size\: :ref:`int` = 16, max_lines\: :ref:`int` = -1, size\: :ref:`int` = 1, modulate\: :ref:`Color` = Color(1, 1, 1, 1), brk_flags\: |bitfield|\[:ref:`LineBreakFlag`\] = 3, justification_flags\: |bitfield|\[:ref:`JustificationFlag`\] = 3, direction\: :ref:`Direction` = 0, orientation\: :ref:`Orientation` = 0\ ) |const| :ref:`🔗` +|void| **draw_multiline_string_outline**\ (\ font\: :ref:`Font`, pos\: :ref:`Vector2`, text\: :ref:`String`, alignment\: :ref:`HorizontalAlignment` = 0, width\: :ref:`float` = -1, font_size\: :ref:`int` = 16, max_lines\: :ref:`int` = -1, size\: :ref:`int` = 1, modulate\: :ref:`Color` = Color(1, 1, 1, 1), brk_flags\: |bitfield|\[:ref:`LineBreakFlag`\] = 3, justification_flags\: |bitfield|\[:ref:`JustificationFlag`\] = 3, direction\: :ref:`Direction` = 0, orientation\: :ref:`Orientation` = 0, oversampling\: :ref:`float` = 0.0\ ) |const| :ref:`🔗` -Breaks ``text`` to the lines and draws text outline using the specified ``font`` at the ``pos`` (top-left corner). The text will have its color multiplied by ``modulate``. If ``width`` is greater than or equal to 0, the text will be clipped if it exceeds the specified width. +Breaks ``text`` to the lines and draws text outline using the specified ``font`` at the ``pos`` in local space (top-left corner). The text will have its color multiplied by ``modulate``. If ``width`` is greater than or equal to 0, the text will be clipped if it exceeds the specified width. If ``oversampling`` is greater than zero, it is used as font oversampling factor, otherwise viewport oversampling settings are used. .. rst-class:: classref-item-separator @@ -1061,7 +1073,7 @@ Draws a :ref:`MultiMesh` in 2D with the provided texture. See : |void| **draw_polygon**\ (\ points\: :ref:`PackedVector2Array`, colors\: :ref:`PackedColorArray`, uvs\: :ref:`PackedVector2Array` = PackedVector2Array(), texture\: :ref:`Texture2D` = null\ ) :ref:`🔗` -Draws a solid polygon of any number of points, convex or concave. Unlike :ref:`draw_colored_polygon()`, each point's color can be changed individually. See also :ref:`draw_polyline()` and :ref:`draw_polyline_colors()`. If you need more flexibility (such as being able to use bones), use :ref:`RenderingServer.canvas_item_add_triangle_array()` instead. +Draws a solid polygon of any number of points, convex or concave. Unlike :ref:`draw_colored_polygon()`, each point's color can be changed individually. The ``points`` array is defined in local space. See also :ref:`draw_polyline()` and :ref:`draw_polyline_colors()`. If you need more flexibility (such as being able to use bones), use :ref:`RenderingServer.canvas_item_add_triangle_array()` instead. \ **Note:** If you frequently redraw the same polygon with a large number of vertices, consider pre-calculating the triangulation with :ref:`Geometry2D.triangulate_polygon()` and using :ref:`draw_mesh()`, :ref:`draw_multimesh()`, or :ref:`RenderingServer.canvas_item_add_triangle_array()`. @@ -1075,7 +1087,7 @@ Draws a solid polygon of any number of points, convex or concave. Unlike :ref:`d |void| **draw_polyline**\ (\ points\: :ref:`PackedVector2Array`, color\: :ref:`Color`, width\: :ref:`float` = -1.0, antialiased\: :ref:`bool` = false\ ) :ref:`🔗` -Draws interconnected line segments with a uniform ``color`` and ``width`` and optional antialiasing (supported only for positive ``width``). When drawing large amounts of lines, this is faster than using individual :ref:`draw_line()` calls. To draw disconnected lines, use :ref:`draw_multiline()` instead. See also :ref:`draw_polygon()`. +Draws interconnected line segments with a uniform ``color`` and ``width`` and optional antialiasing (supported only for positive ``width``). The ``points`` array is defined in local space. When drawing large amounts of lines, this is faster than using individual :ref:`draw_line()` calls. To draw disconnected lines, use :ref:`draw_multiline()` instead. See also :ref:`draw_polygon()`. If ``width`` is negative, it will be ignored and the polyline will be drawn using :ref:`RenderingServer.PRIMITIVE_LINE_STRIP`. This means that when the CanvasItem is scaled, the polyline will remain thin. If this behavior is not desired, then pass a positive ``width`` like ``1.0``. @@ -1089,7 +1101,7 @@ If ``width`` is negative, it will be ignored and the polyline will be drawn usin |void| **draw_polyline_colors**\ (\ points\: :ref:`PackedVector2Array`, colors\: :ref:`PackedColorArray`, width\: :ref:`float` = -1.0, antialiased\: :ref:`bool` = false\ ) :ref:`🔗` -Draws interconnected line segments with a uniform ``width``, point-by-point coloring, and optional antialiasing (supported only for positive ``width``). Colors assigned to line points match by index between ``points`` and ``colors``, i.e. each line segment is filled with a gradient between the colors of the endpoints. When drawing large amounts of lines, this is faster than using individual :ref:`draw_line()` calls. To draw disconnected lines, use :ref:`draw_multiline_colors()` instead. See also :ref:`draw_polygon()`. +Draws interconnected line segments with a uniform ``width``, point-by-point coloring, and optional antialiasing (supported only for positive ``width``). Colors assigned to line points match by index between ``points`` and ``colors``, i.e. each line segment is filled with a gradient between the colors of the endpoints. The ``points`` array is defined in local space. When drawing large amounts of lines, this is faster than using individual :ref:`draw_line()` calls. To draw disconnected lines, use :ref:`draw_multiline_colors()` instead. See also :ref:`draw_polygon()`. If ``width`` is negative, it will be ignored and the polyline will be drawn using :ref:`RenderingServer.PRIMITIVE_LINE_STRIP`. This means that when the CanvasItem is scaled, the polyline will remain thin. If this behavior is not desired, then pass a positive ``width`` like ``1.0``. @@ -1103,7 +1115,7 @@ If ``width`` is negative, it will be ignored and the polyline will be drawn usin |void| **draw_primitive**\ (\ points\: :ref:`PackedVector2Array`, colors\: :ref:`PackedColorArray`, uvs\: :ref:`PackedVector2Array`, texture\: :ref:`Texture2D` = null\ ) :ref:`🔗` -Draws a custom primitive. 1 point for a point, 2 points for a line, 3 points for a triangle, and 4 points for a quad. If 0 points or more than 4 points are specified, nothing will be drawn and an error message will be printed. See also :ref:`draw_line()`, :ref:`draw_polyline()`, :ref:`draw_polygon()`, and :ref:`draw_rect()`. +Draws a custom primitive. 1 point for a point, 2 points for a line, 3 points for a triangle, and 4 points for a quad. If 0 points or more than 4 points are specified, nothing will be drawn and an error message will be printed. The ``points`` array is defined in local space. See also :ref:`draw_line()`, :ref:`draw_polyline()`, :ref:`draw_polygon()`, and :ref:`draw_rect()`. .. rst-class:: classref-item-separator @@ -1115,7 +1127,7 @@ Draws a custom primitive. 1 point for a point, 2 points for a line, 3 points for |void| **draw_rect**\ (\ rect\: :ref:`Rect2`, color\: :ref:`Color`, filled\: :ref:`bool` = true, width\: :ref:`float` = -1.0, antialiased\: :ref:`bool` = false\ ) :ref:`🔗` -Draws a rectangle. If ``filled`` is ``true``, the rectangle will be filled with the ``color`` specified. If ``filled`` is ``false``, the rectangle will be drawn as a stroke with the ``color`` and ``width`` specified. See also :ref:`draw_texture_rect()`. +Draws a rectangle. If ``filled`` is ``true``, the rectangle will be filled with the ``color`` specified. If ``filled`` is ``false``, the rectangle will be drawn as a stroke with the ``color`` and ``width`` specified. The ``rect`` is specified in local space. See also :ref:`draw_texture_rect()`. If ``width`` is negative, then two-point primitives will be drawn instead of a four-point ones. This means that when the CanvasItem is scaled, the lines will remain thin. If this behavior is not desired, then pass a positive ``width`` like ``1.0``. @@ -1135,7 +1147,7 @@ If ``antialiased`` is ``true``, half transparent "feathers" will be attached to |void| **draw_set_transform**\ (\ position\: :ref:`Vector2`, rotation\: :ref:`float` = 0.0, scale\: :ref:`Vector2` = Vector2(1, 1)\ ) :ref:`🔗` -Sets a custom transform for drawing via components. Anything drawn afterwards will be transformed by this. +Sets a custom local transform for drawing via components. Anything drawn afterwards will be transformed by this. \ **Note:** :ref:`FontFile.oversampling` does *not* take ``scale`` into account. This means that scaling up/down will cause bitmap fonts and rasterized (non-MSDF) dynamic fonts to appear blurry or pixelated. To ensure text remains crisp regardless of scale, you can enable MSDF font rendering by enabling :ref:`ProjectSettings.gui/theme/default_font_multichannel_signed_distance_field` (applies to the default project font only), or enabling **Multichannel Signed Distance Field** in the import options of a DynamicFont for custom fonts. On system fonts, :ref:`SystemFont.multichannel_signed_distance_field` can be enabled in the inspector. @@ -1149,7 +1161,7 @@ Sets a custom transform for drawing via components. Anything drawn afterwards wi |void| **draw_set_transform_matrix**\ (\ xform\: :ref:`Transform2D`\ ) :ref:`🔗` -Sets a custom transform for drawing via matrix. Anything drawn afterwards will be transformed by this. +Sets a custom local transform for drawing via matrix. Anything drawn afterwards will be transformed by this. .. rst-class:: classref-item-separator @@ -1159,9 +1171,9 @@ Sets a custom transform for drawing via matrix. Anything drawn afterwards will b .. rst-class:: classref-method -|void| **draw_string**\ (\ font\: :ref:`Font`, pos\: :ref:`Vector2`, text\: :ref:`String`, alignment\: :ref:`HorizontalAlignment` = 0, width\: :ref:`float` = -1, font_size\: :ref:`int` = 16, modulate\: :ref:`Color` = Color(1, 1, 1, 1), justification_flags\: |bitfield|\[:ref:`JustificationFlag`\] = 3, direction\: :ref:`Direction` = 0, orientation\: :ref:`Orientation` = 0\ ) |const| :ref:`🔗` +|void| **draw_string**\ (\ font\: :ref:`Font`, pos\: :ref:`Vector2`, text\: :ref:`String`, alignment\: :ref:`HorizontalAlignment` = 0, width\: :ref:`float` = -1, font_size\: :ref:`int` = 16, modulate\: :ref:`Color` = Color(1, 1, 1, 1), justification_flags\: |bitfield|\[:ref:`JustificationFlag`\] = 3, direction\: :ref:`Direction` = 0, orientation\: :ref:`Orientation` = 0, oversampling\: :ref:`float` = 0.0\ ) |const| :ref:`🔗` -Draws ``text`` using the specified ``font`` at the ``pos`` (bottom-left corner using the baseline of the font). The text will have its color multiplied by ``modulate``. If ``width`` is greater than or equal to 0, the text will be clipped if it exceeds the specified width. +Draws ``text`` using the specified ``font`` at the ``pos`` in local space (bottom-left corner using the baseline of the font). The text will have its color multiplied by ``modulate``. If ``width`` is greater than or equal to 0, the text will be clipped if it exceeds the specified width. If ``oversampling`` is greater than zero, it is used as font oversampling factor, otherwise viewport oversampling settings are used. \ **Example:** Draw "Hello world", using the project's default font: @@ -1198,9 +1210,9 @@ See also :ref:`Font.draw_string()`. .. rst-class:: classref-method -|void| **draw_string_outline**\ (\ font\: :ref:`Font`, pos\: :ref:`Vector2`, text\: :ref:`String`, alignment\: :ref:`HorizontalAlignment` = 0, width\: :ref:`float` = -1, font_size\: :ref:`int` = 16, size\: :ref:`int` = 1, modulate\: :ref:`Color` = Color(1, 1, 1, 1), justification_flags\: |bitfield|\[:ref:`JustificationFlag`\] = 3, direction\: :ref:`Direction` = 0, orientation\: :ref:`Orientation` = 0\ ) |const| :ref:`🔗` +|void| **draw_string_outline**\ (\ font\: :ref:`Font`, pos\: :ref:`Vector2`, text\: :ref:`String`, alignment\: :ref:`HorizontalAlignment` = 0, width\: :ref:`float` = -1, font_size\: :ref:`int` = 16, size\: :ref:`int` = 1, modulate\: :ref:`Color` = Color(1, 1, 1, 1), justification_flags\: |bitfield|\[:ref:`JustificationFlag`\] = 3, direction\: :ref:`Direction` = 0, orientation\: :ref:`Orientation` = 0, oversampling\: :ref:`float` = 0.0\ ) |const| :ref:`🔗` -Draws ``text`` outline using the specified ``font`` at the ``pos`` (bottom-left corner using the baseline of the font). The text will have its color multiplied by ``modulate``. If ``width`` is greater than or equal to 0, the text will be clipped if it exceeds the specified width. +Draws ``text`` outline using the specified ``font`` at the ``pos`` in local space (bottom-left corner using the baseline of the font). The text will have its color multiplied by ``modulate``. If ``width`` is greater than or equal to 0, the text will be clipped if it exceeds the specified width. If ``oversampling`` is greater than zero, it is used as font oversampling factor, otherwise viewport oversampling settings are used. .. rst-class:: classref-item-separator @@ -1212,7 +1224,7 @@ Draws ``text`` outline using the specified ``font`` at the ``pos`` (bottom-left |void| **draw_style_box**\ (\ style_box\: :ref:`StyleBox`, rect\: :ref:`Rect2`\ ) :ref:`🔗` -Draws a styled rectangle. +Draws a styled rectangle. The ``rect`` is defined in local space. .. rst-class:: classref-item-separator @@ -1224,7 +1236,7 @@ Draws a styled rectangle. |void| **draw_texture**\ (\ texture\: :ref:`Texture2D`, position\: :ref:`Vector2`, modulate\: :ref:`Color` = Color(1, 1, 1, 1)\ ) :ref:`🔗` -Draws a texture at a given position. +Draws a texture at a given position. The ``position`` is defined in local space. .. rst-class:: classref-item-separator @@ -1236,7 +1248,7 @@ Draws a texture at a given position. |void| **draw_texture_rect**\ (\ texture\: :ref:`Texture2D`, rect\: :ref:`Rect2`, tile\: :ref:`bool`, modulate\: :ref:`Color` = Color(1, 1, 1, 1), transpose\: :ref:`bool` = false\ ) :ref:`🔗` -Draws a textured rectangle at a given position, optionally modulated by a color. If ``transpose`` is ``true``, the texture will have its X and Y coordinates swapped. See also :ref:`draw_rect()` and :ref:`draw_texture_rect_region()`. +Draws a textured rectangle at a given position, optionally modulated by a color. The ``rect`` is defined in local space. If ``transpose`` is ``true``, the texture will have its X and Y coordinates swapped. See also :ref:`draw_rect()` and :ref:`draw_texture_rect_region()`. .. rst-class:: classref-item-separator @@ -1248,7 +1260,7 @@ Draws a textured rectangle at a given position, optionally modulated by a color. |void| **draw_texture_rect_region**\ (\ texture\: :ref:`Texture2D`, rect\: :ref:`Rect2`, src_rect\: :ref:`Rect2`, modulate\: :ref:`Color` = Color(1, 1, 1, 1), transpose\: :ref:`bool` = false, clip_uv\: :ref:`bool` = true\ ) :ref:`🔗` -Draws a textured rectangle from a texture's region (specified by ``src_rect``) at a given position, optionally modulated by a color. If ``transpose`` is ``true``, the texture will have its X and Y coordinates swapped. See also :ref:`draw_texture_rect()`. +Draws a textured rectangle from a texture's region (specified by ``src_rect``) at a given position in local space, optionally modulated by a color. If ``transpose`` is ``true``, the texture will have its X and Y coordinates swapped. See also :ref:`draw_texture_rect()`. .. rst-class:: classref-item-separator @@ -1260,7 +1272,9 @@ Draws a textured rectangle from a texture's region (specified by ``src_rect``) a |void| **force_update_transform**\ (\ ) :ref:`🔗` -Forces the transform to update. Transform changes in physics are not instant for performance reasons. Transforms are accumulated and then set. Use this if you need an up-to-date transform when doing physics operations. +Forces the node's transform to update. Fails if the node is not inside the tree. See also :ref:`get_transform()`. + +\ **Note:** For performance reasons, transform changes are usually accumulated and applied *once* at the end of the frame. The update propagates through **CanvasItem** children, as well. Therefore, use this method only when you need an up-to-date transform (such as during physics operations). .. rst-class:: classref-item-separator @@ -1272,7 +1286,7 @@ Forces the transform to update. Transform changes in physics are not instant for :ref:`RID` **get_canvas**\ (\ ) |const| :ref:`🔗` -Returns the :ref:`RID` of the :ref:`World2D` canvas where this item is in. +Returns the :ref:`RID` of the :ref:`World2D` canvas where this node is registered to, used by the :ref:`RenderingServer`. .. rst-class:: classref-item-separator @@ -1284,7 +1298,7 @@ Returns the :ref:`RID` of the :ref:`World2D` canvas wh :ref:`RID` **get_canvas_item**\ (\ ) |const| :ref:`🔗` -Returns the canvas item RID used by :ref:`RenderingServer` for this item. +Returns the internal canvas item :ref:`RID` used by the :ref:`RenderingServer` for this node. .. rst-class:: classref-item-separator @@ -1308,7 +1322,7 @@ Returns the :ref:`CanvasLayer` that contains this node, or `` :ref:`Transform2D` **get_canvas_transform**\ (\ ) |const| :ref:`🔗` -Returns the transform from the coordinate system of the canvas, this item is in, to the :ref:`Viewport`\ s coordinate system. +Returns the transform of this node, converted from its registered canvas's coordinate system to its viewport's coordinate system. See also :ref:`Node.get_viewport()`. .. rst-class:: classref-item-separator @@ -1320,7 +1334,7 @@ Returns the transform from the coordinate system of the canvas, this item is in, :ref:`Vector2` **get_global_mouse_position**\ (\ ) |const| :ref:`🔗` -Returns the mouse's position in the :ref:`CanvasLayer` that this **CanvasItem** is in using the coordinate system of the :ref:`CanvasLayer`. +Returns mouse cursor's global position relative to the :ref:`CanvasLayer` that contains this node. \ **Note:** For screen-space coordinates (e.g. when using a non-embedded :ref:`Popup`), you can use :ref:`DisplayServer.mouse_get_position()`. @@ -1396,7 +1410,7 @@ Equals to :ref:`get_global_transform()` **get_transform**\ (\ ) |const| :ref:`🔗` -Returns the transform matrix of this item. +Returns the transform matrix of this **CanvasItem**. .. rst-class:: classref-item-separator @@ -1408,7 +1422,7 @@ Returns the transform matrix of this item. :ref:`Rect2` **get_viewport_rect**\ (\ ) |const| :ref:`🔗` -Returns the viewport's boundaries as a :ref:`Rect2`. +Returns this node's viewport boundaries as a :ref:`Rect2`. See also :ref:`Node.get_viewport()`. .. rst-class:: classref-item-separator @@ -1420,7 +1434,7 @@ Returns the viewport's boundaries as a :ref:`Rect2`. :ref:`Transform2D` **get_viewport_transform**\ (\ ) |const| :ref:`🔗` -Returns the transform from the coordinate system of the canvas, this item is in, to the :ref:`Viewport`\ s embedders coordinate system. +Returns the transform of this node, converted from its registered canvas's coordinate system to its viewport embedder's coordinate system. See also :ref:`Viewport.get_final_transform()` and :ref:`Node.get_viewport()`. .. rst-class:: classref-item-separator @@ -1432,7 +1446,7 @@ Returns the transform from the coordinate system of the canvas, this item is in, :ref:`bool` **get_visibility_layer_bit**\ (\ layer\: :ref:`int`\ ) |const| :ref:`🔗` -Returns an individual bit on the rendering visibility layer. +Returns ``true`` if the layer at the given index is set in :ref:`visibility_layer`. .. rst-class:: classref-item-separator @@ -1444,7 +1458,9 @@ Returns an individual bit on the rendering visibility layer. :ref:`World2D` **get_world_2d**\ (\ ) |const| :ref:`🔗` -Returns the :ref:`World2D` where this item is in. +Returns the :ref:`World2D` this node is registered to. + +Usually, this is the same as this node's viewport (see :ref:`Node.get_viewport()` and :ref:`Viewport.find_world_2d()`). .. rst-class:: classref-item-separator @@ -1468,7 +1484,7 @@ Hide the **CanvasItem** if it's currently visible. This is equivalent to setting :ref:`bool` **is_local_transform_notification_enabled**\ (\ ) |const| :ref:`🔗` -Returns ``true`` if local transform notifications are communicated to children. +Returns ``true`` if the node receives :ref:`NOTIFICATION_LOCAL_TRANSFORM_CHANGED` whenever its local transform changes. This is enabled with :ref:`set_notify_local_transform()`. .. rst-class:: classref-item-separator @@ -1480,7 +1496,7 @@ Returns ``true`` if local transform notifications are communicated to children. :ref:`bool` **is_transform_notification_enabled**\ (\ ) |const| :ref:`🔗` -Returns ``true`` if global transform notifications are communicated to children. +Returns ``true`` if the node receives :ref:`NOTIFICATION_TRANSFORM_CHANGED` whenever its global transform changes. This is enabled with :ref:`set_notify_transform()`. .. rst-class:: classref-item-separator @@ -1526,7 +1542,7 @@ For the opposite operation, use :ref:`get_global_transform_with_canvas()` **make_input_local**\ (\ event\: :ref:`InputEvent`\ ) |const| :ref:`🔗` -Transformations issued by ``event``'s inputs are applied in local space instead of global space. +Returns a copy of the given ``event`` with its coordinates converted from global space to this **CanvasItem**'s local space. If not possible, returns the same :ref:`InputEvent` unchanged. .. rst-class:: classref-item-separator @@ -1538,9 +1554,7 @@ Transformations issued by ``event``'s inputs are applied in local space instead |void| **move_to_front**\ (\ ) :ref:`🔗` -Moves this node to display on top of its siblings. - -Internally, the node is moved to the bottom of parent's child list. The method has no effect on nodes without a parent. +Moves this node below its siblings, usually causing the node to draw on top of its siblings. Does nothing if this node does not have a parent. See also :ref:`Node.move_child()`. .. rst-class:: classref-item-separator @@ -1580,7 +1594,9 @@ Set the value of a shader uniform for this instance only (`per-instance uniform |void| **set_notify_local_transform**\ (\ enable\: :ref:`bool`\ ) :ref:`🔗` -If ``enable`` is ``true``, this node will receive :ref:`NOTIFICATION_LOCAL_TRANSFORM_CHANGED` when its local transform changes. +If ``true``, the node will receive :ref:`NOTIFICATION_LOCAL_TRANSFORM_CHANGED` whenever its local transform changes. + +\ **Note:** Many canvas items such as :ref:`Bone2D` or :ref:`CollisionShape2D` automatically enable this in order to function correctly. .. rst-class:: classref-item-separator @@ -1592,7 +1608,9 @@ If ``enable`` is ``true``, this node will receive :ref:`NOTIFICATION_LOCAL_TRANS |void| **set_notify_transform**\ (\ enable\: :ref:`bool`\ ) :ref:`🔗` -If ``enable`` is ``true``, this node will receive :ref:`NOTIFICATION_TRANSFORM_CHANGED` when its global transform changes. +If ``true``, the node will receive :ref:`NOTIFICATION_TRANSFORM_CHANGED` whenever global transform changes. + +\ **Note:** Many canvas items such as :ref:`Camera2D` or :ref:`Light2D` automatically enable this in order to function correctly. .. rst-class:: classref-item-separator @@ -1616,9 +1634,12 @@ Set/clear individual bits on the rendering visibility layer. This simplifies edi |void| **show**\ (\ ) :ref:`🔗` -Show the **CanvasItem** if it's currently hidden. This is equivalent to setting :ref:`visible` to ``true``. For controls that inherit :ref:`Popup`, the correct way to make them visible is to call one of the multiple ``popup*()`` functions instead. +Show the **CanvasItem** if it's currently hidden. This is equivalent to setting :ref:`visible` to ``true``. + +\ **Note:** For controls that inherit :ref:`Popup`, the correct way to make them visible is to call one of the multiple ``popup*()`` functions instead. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_canvasitemmaterial.rst b/classes/class_canvasitemmaterial.rst index 0fadbe027..39d8b0a79 100644 --- a/classes/class_canvasitemmaterial.rst +++ b/classes/class_canvasitemmaterial.rst @@ -248,6 +248,7 @@ If ``true``, enable spritesheet-based animation features when assigned to :ref:` This property (and other ``particles_anim_*`` properties that depend on it) has no effect on other types of nodes. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_canvaslayer.rst b/classes/class_canvaslayer.rst index 5b40f4504..81144a77d 100644 --- a/classes/class_canvaslayer.rst +++ b/classes/class_canvaslayer.rst @@ -27,7 +27,7 @@ Description \ **Note:** Embedded :ref:`Window`\ s are placed on layer ``1024``. :ref:`CanvasItem`\ s on layers ``1025`` and higher appear in front of embedded windows. -\ **Note:** Each **CanvasLayer** is drawn on one specific :ref:`Viewport` and cannot be shared between multiple :ref:`Viewport`\ s, see :ref:`custom_viewport`. When using multiple :ref:`Viewport`\ s, for example in a split-screen game, you need create an individual **CanvasLayer** for each :ref:`Viewport` you want it to be drawn on. +\ **Note:** Each **CanvasLayer** is drawn on one specific :ref:`Viewport` and cannot be shared between multiple :ref:`Viewport`\ s, see :ref:`custom_viewport`. When using multiple :ref:`Viewport`\ s, for example in a split-screen game, you need to create an individual **CanvasLayer** for each :ref:`Viewport` you want it to be drawn on. .. rst-class:: classref-introduction-group @@ -140,7 +140,7 @@ The custom :ref:`Viewport` node assigned to the **CanvasLayer**. - |void| **set_follow_viewport**\ (\ value\: :ref:`bool`\ ) - :ref:`bool` **is_following_viewport**\ (\ ) -If enabled, the **CanvasLayer** stays in a fixed position on the screen. If disabled, the **CanvasLayer** maintains its position in world space. +If enabled, the **CanvasLayer** maintains its position in world space. If disabled, the **CanvasLayer** stays in a fixed position on the screen. Together with :ref:`follow_viewport_scale`, this can be used for a pseudo-3D effect. @@ -180,6 +180,8 @@ Layer index for draw order. Lower values are drawn behind higher values. \ **Note:** If multiple CanvasLayers have the same layer index, :ref:`CanvasItem` children of one CanvasLayer are drawn behind the :ref:`CanvasItem` children of the other CanvasLayer. Which CanvasLayer is drawn in front is non-deterministic. +\ **Note:** The layer index should be between :ref:`RenderingServer.CANVAS_LAYER_MIN` and :ref:`RenderingServer.CANVAS_LAYER_MAX` (inclusive). Any other value will wrap around. + .. rst-class:: classref-item-separator ---- @@ -321,6 +323,7 @@ Hides any :ref:`CanvasItem` under this **CanvasLayer**. This i Shows any :ref:`CanvasItem` under this **CanvasLayer**. This is equivalent to setting :ref:`visible` to ``true``. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_canvasmodulate.rst b/classes/class_canvasmodulate.rst index 42a739cb1..56d421640 100644 --- a/classes/class_canvasmodulate.rst +++ b/classes/class_canvasmodulate.rst @@ -66,6 +66,7 @@ Property Descriptions The tint color to apply. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_canvastexture.rst b/classes/class_canvastexture.rst index b9e28e5a2..f387c6583 100644 --- a/classes/class_canvastexture.rst +++ b/classes/class_canvastexture.rst @@ -183,6 +183,7 @@ The texture filtering mode to use when drawing this **CanvasTexture**. The texture repeat mode to use when drawing this **CanvasTexture**. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_capsulemesh.rst b/classes/class_capsulemesh.rst index 344e76e78..0d0078c6c 100644 --- a/classes/class_capsulemesh.rst +++ b/classes/class_capsulemesh.rst @@ -61,6 +61,8 @@ Property Descriptions Total height of the capsule mesh (including the hemispherical ends). +\ **Note:** The :ref:`height` of a capsule must be at least twice its :ref:`radius`. Otherwise, the capsule becomes a circle. If the :ref:`height` is less than twice the :ref:`radius`, the properties adjust to a valid value. + .. rst-class:: classref-item-separator ---- @@ -95,6 +97,8 @@ Number of radial segments on the capsule mesh. Radius of the capsule mesh. +\ **Note:** The :ref:`radius` of a capsule cannot be greater than half of its :ref:`height`. Otherwise, the capsule becomes a circle. If the :ref:`radius` is greater than half of the :ref:`height`, the properties adjust to a valid value. + .. rst-class:: classref-item-separator ---- @@ -113,6 +117,7 @@ Radius of the capsule mesh. Number of rings along the height of the capsule. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_capsuleshape2d.rst b/classes/class_capsuleshape2d.rst index 7e94ff5cc..a28e55134 100644 --- a/classes/class_capsuleshape2d.rst +++ b/classes/class_capsuleshape2d.rst @@ -31,11 +31,13 @@ Properties .. table:: :widths: auto - +---------------------------+-----------------------------------------------------+----------+ - | :ref:`float` | :ref:`height` | ``30.0`` | - +---------------------------+-----------------------------------------------------+----------+ - | :ref:`float` | :ref:`radius` | ``10.0`` | - +---------------------------+-----------------------------------------------------+----------+ + +---------------------------+-------------------------------------------------------------+----------+ + | :ref:`float` | :ref:`height` | ``30.0`` | + +---------------------------+-------------------------------------------------------------+----------+ + | :ref:`float` | :ref:`mid_height` | | + +---------------------------+-------------------------------------------------------------+----------+ + | :ref:`float` | :ref:`radius` | ``10.0`` | + +---------------------------+-------------------------------------------------------------+----------+ .. rst-class:: classref-section-separator @@ -57,7 +59,26 @@ Property Descriptions - |void| **set_height**\ (\ value\: :ref:`float`\ ) - :ref:`float` **get_height**\ (\ ) -The capsule's height. +The capsule's full height, including the semicircles. + +\ **Note:** The :ref:`height` of a capsule must be at least twice its :ref:`radius`. Otherwise, the capsule becomes a circle. If the :ref:`height` is less than twice the :ref:`radius`, the properties adjust to a valid value. + +.. rst-class:: classref-item-separator + +---- + +.. _class_CapsuleShape2D_property_mid_height: + +.. rst-class:: classref-property + +:ref:`float` **mid_height** :ref:`🔗` + +.. rst-class:: classref-property-setget + +- |void| **set_mid_height**\ (\ value\: :ref:`float`\ ) +- :ref:`float` **get_mid_height**\ (\ ) + +The capsule's height, excluding the semicircles. This is the height of the central rectangular part in the middle of the capsule, and is the distance between the centers of the two semicircles. This is a wrapper for :ref:`height`. .. rst-class:: classref-item-separator @@ -76,7 +97,10 @@ The capsule's height. The capsule's radius. +\ **Note:** The :ref:`radius` of a capsule cannot be greater than half of its :ref:`height`. Otherwise, the capsule becomes a circle. If the :ref:`radius` is greater than half of the :ref:`height`, the properties adjust to a valid value. + .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_capsuleshape3d.rst b/classes/class_capsuleshape3d.rst index e68a23546..c651da28a 100644 --- a/classes/class_capsuleshape3d.rst +++ b/classes/class_capsuleshape3d.rst @@ -38,11 +38,13 @@ Properties .. table:: :widths: auto - +---------------------------+-----------------------------------------------------+---------+ - | :ref:`float` | :ref:`height` | ``2.0`` | - +---------------------------+-----------------------------------------------------+---------+ - | :ref:`float` | :ref:`radius` | ``0.5`` | - +---------------------------+-----------------------------------------------------+---------+ + +---------------------------+-------------------------------------------------------------+---------+ + | :ref:`float` | :ref:`height` | ``2.0`` | + +---------------------------+-------------------------------------------------------------+---------+ + | :ref:`float` | :ref:`mid_height` | | + +---------------------------+-------------------------------------------------------------+---------+ + | :ref:`float` | :ref:`radius` | ``0.5`` | + +---------------------------+-------------------------------------------------------------+---------+ .. rst-class:: classref-section-separator @@ -64,7 +66,26 @@ Property Descriptions - |void| **set_height**\ (\ value\: :ref:`float`\ ) - :ref:`float` **get_height**\ (\ ) -The capsule's height. +The capsule's full height, including the hemispheres. + +\ **Note:** The :ref:`height` of a capsule must be at least twice its :ref:`radius`. Otherwise, the capsule becomes a sphere. If the :ref:`height` is less than twice the :ref:`radius`, the properties adjust to a valid value. + +.. rst-class:: classref-item-separator + +---- + +.. _class_CapsuleShape3D_property_mid_height: + +.. rst-class:: classref-property + +:ref:`float` **mid_height** :ref:`🔗` + +.. rst-class:: classref-property-setget + +- |void| **set_mid_height**\ (\ value\: :ref:`float`\ ) +- :ref:`float` **get_mid_height**\ (\ ) + +The capsule's height, excluding the hemispheres. This is the height of the central cylindrical part in the middle of the capsule, and is the distance between the centers of the two hemispheres. This is a wrapper for :ref:`height`. .. rst-class:: classref-item-separator @@ -83,7 +104,10 @@ The capsule's height. The capsule's radius. +\ **Note:** The :ref:`radius` of a capsule cannot be greater than half of its :ref:`height`. Otherwise, the capsule becomes a sphere. If the :ref:`radius` is greater than half of the :ref:`height`, the properties adjust to a valid value. + .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_centercontainer.rst b/classes/class_centercontainer.rst index 01b05d183..a4139a5ef 100644 --- a/classes/class_centercontainer.rst +++ b/classes/class_centercontainer.rst @@ -63,6 +63,7 @@ Property Descriptions If ``true``, centers children relative to the **CenterContainer**'s top left corner. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_characterbody2d.rst b/classes/class_characterbody2d.rst index f6466d0d7..659ba422d 100644 --- a/classes/class_characterbody2d.rst +++ b/classes/class_characterbody2d.rst @@ -28,6 +28,10 @@ For game objects that don't require complex movement or collision detection, suc Tutorials --------- +- :doc:`Physics introduction <../tutorials/physics/physics_introduction>` + +- :doc:`Troubleshooting physics issues <../tutorials/physics/troubleshooting_physics_issues>` + - :doc:`Kinematic character (2D) <../tutorials/physics/kinematic_character_2d>` - :doc:`Using CharacterBody2D <../tutorials/physics/using_character_body_2d>` @@ -49,7 +53,7 @@ Properties +--------------------------------------------------------------+------------------------------------------------------------------------------------+--------------------+ | :ref:`bool` | :ref:`floor_constant_speed` | ``false`` | +--------------------------------------------------------------+------------------------------------------------------------------------------------+--------------------+ - | :ref:`float` | :ref:`floor_max_angle` | ``0.785398`` | + | :ref:`float` | :ref:`floor_max_angle` | ``0.7853982`` | +--------------------------------------------------------------+------------------------------------------------------------------------------------+--------------------+ | :ref:`float` | :ref:`floor_snap_length` | ``1.0`` | +--------------------------------------------------------------+------------------------------------------------------------------------------------+--------------------+ @@ -73,7 +77,7 @@ Properties +--------------------------------------------------------------+------------------------------------------------------------------------------------+--------------------+ | :ref:`Vector2` | :ref:`velocity` | ``Vector2(0, 0)`` | +--------------------------------------------------------------+------------------------------------------------------------------------------------+--------------------+ - | :ref:`float` | :ref:`wall_min_slide_angle` | ``0.261799`` | + | :ref:`float` | :ref:`wall_min_slide_angle` | ``0.2617994`` | +--------------------------------------------------------------+------------------------------------------------------------------------------------+--------------------+ .. rst-class:: classref-reftable-group @@ -236,7 +240,7 @@ If ``true``, the body will always move at the same speed on the ground no matter .. rst-class:: classref-property -:ref:`float` **floor_max_angle** = ``0.785398`` :ref:`🔗` +:ref:`float` **floor_max_angle** = ``0.7853982`` :ref:`🔗` .. rst-class:: classref-property-setget @@ -298,7 +302,7 @@ If ``false``, the body will slide on floor's slopes when :ref:`velocity`\ ) - :ref:`int` **get_max_slides**\ (\ ) -Maximum number of times the body can change direction before it stops when calling :ref:`move_and_slide()`. +Maximum number of times the body can change direction before it stops when calling :ref:`move_and_slide()`. Must be greater than zero. .. rst-class:: classref-item-separator @@ -315,7 +319,7 @@ Maximum number of times the body can change direction before it stops when calli - |void| **set_motion_mode**\ (\ value\: :ref:`MotionMode`\ ) - :ref:`MotionMode` **get_motion_mode**\ (\ ) -Sets the motion mode which defines the behavior of :ref:`move_and_slide()`. See :ref:`MotionMode` constants for available modes. +Sets the motion mode which defines the behavior of :ref:`move_and_slide()`. .. rst-class:: classref-item-separator @@ -349,7 +353,7 @@ Collision layers that will be included for detecting floor bodies that will act - |void| **set_platform_on_leave**\ (\ value\: :ref:`PlatformOnLeave`\ ) - :ref:`PlatformOnLeave` **get_platform_on_leave**\ (\ ) -Sets the behavior to apply when you leave a moving platform. By default, to be physically accurate, when you leave the last platform velocity is applied. See :ref:`PlatformOnLeave` constants for available behavior. +Sets the behavior to apply when you leave a moving platform. By default, to be physically accurate, when you leave the last platform velocity is applied. .. rst-class:: classref-item-separator @@ -450,14 +454,14 @@ Current velocity vector in pixels per second, used and modified during calls to .. rst-class:: classref-property -:ref:`float` **wall_min_slide_angle** = ``0.261799`` :ref:`🔗` +:ref:`float` **wall_min_slide_angle** = ``0.2617994`` :ref:`🔗` .. rst-class:: classref-property-setget - |void| **set_wall_min_slide_angle**\ (\ value\: :ref:`float`\ ) - :ref:`float` **get_wall_min_slide_angle**\ (\ ) -Minimum angle (in radians) where the body is allowed to slide when it encounters a slope. The default value equals 15 degrees. This property only affects movement when :ref:`motion_mode` is :ref:`MOTION_MODE_FLOATING`. +Minimum angle (in radians) where the body is allowed to slide when it encounters a wall. The default value equals 15 degrees. This property only affects movement when :ref:`motion_mode` is :ref:`MOTION_MODE_FLOATING`. .. rst-class:: classref-section-separator @@ -714,6 +718,7 @@ The general behavior and available properties change according to the :ref:`moti Returns ``true`` if the body collided, otherwise, returns ``false``. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_characterbody3d.rst b/classes/class_characterbody3d.rst index fe884d888..1e6fa9f5e 100644 --- a/classes/class_characterbody3d.rst +++ b/classes/class_characterbody3d.rst @@ -28,6 +28,10 @@ For game objects that don't require complex movement or collision detection, suc Tutorials --------- +- :doc:`Physics introduction <../tutorials/physics/physics_introduction>` + +- :doc:`Troubleshooting physics issues <../tutorials/physics/troubleshooting_physics_issues>` + - :doc:`Kinematic character (2D) <../tutorials/physics/kinematic_character_2d>` - `3D Kinematic Character Demo `__ @@ -51,7 +55,7 @@ Properties +--------------------------------------------------------------+------------------------------------------------------------------------------------+----------------------+ | :ref:`bool` | :ref:`floor_constant_speed` | ``false`` | +--------------------------------------------------------------+------------------------------------------------------------------------------------+----------------------+ - | :ref:`float` | :ref:`floor_max_angle` | ``0.785398`` | + | :ref:`float` | :ref:`floor_max_angle` | ``0.7853982`` | +--------------------------------------------------------------+------------------------------------------------------------------------------------+----------------------+ | :ref:`float` | :ref:`floor_snap_length` | ``0.1`` | +--------------------------------------------------------------+------------------------------------------------------------------------------------+----------------------+ @@ -75,7 +79,7 @@ Properties +--------------------------------------------------------------+------------------------------------------------------------------------------------+----------------------+ | :ref:`Vector3` | :ref:`velocity` | ``Vector3(0, 0, 0)`` | +--------------------------------------------------------------+------------------------------------------------------------------------------------+----------------------+ - | :ref:`float` | :ref:`wall_min_slide_angle` | ``0.261799`` | + | :ref:`float` | :ref:`wall_min_slide_angle` | ``0.2617994`` | +--------------------------------------------------------------+------------------------------------------------------------------------------------+----------------------+ .. rst-class:: classref-reftable-group @@ -240,7 +244,7 @@ If ``true``, the body will always move at the same speed on the ground no matter .. rst-class:: classref-property -:ref:`float` **floor_max_angle** = ``0.785398`` :ref:`🔗` +:ref:`float` **floor_max_angle** = ``0.7853982`` :ref:`🔗` .. rst-class:: classref-property-setget @@ -302,7 +306,7 @@ If ``false``, the body will slide on floor's slopes when :ref:`velocity`\ ) - :ref:`int` **get_max_slides**\ (\ ) -Maximum number of times the body can change direction before it stops when calling :ref:`move_and_slide()`. +Maximum number of times the body can change direction before it stops when calling :ref:`move_and_slide()`. Must be greater than zero. .. rst-class:: classref-item-separator @@ -319,7 +323,7 @@ Maximum number of times the body can change direction before it stops when calli - |void| **set_motion_mode**\ (\ value\: :ref:`MotionMode`\ ) - :ref:`MotionMode` **get_motion_mode**\ (\ ) -Sets the motion mode which defines the behavior of :ref:`move_and_slide()`. See :ref:`MotionMode` constants for available modes. +Sets the motion mode which defines the behavior of :ref:`move_and_slide()`. .. rst-class:: classref-item-separator @@ -353,7 +357,7 @@ Collision layers that will be included for detecting floor bodies that will act - |void| **set_platform_on_leave**\ (\ value\: :ref:`PlatformOnLeave`\ ) - :ref:`PlatformOnLeave` **get_platform_on_leave**\ (\ ) -Sets the behavior to apply when you leave a moving platform. By default, to be physically accurate, when you leave the last platform velocity is applied. See :ref:`PlatformOnLeave` constants for available behavior. +Sets the behavior to apply when you leave a moving platform. By default, to be physically accurate, when you leave the last platform velocity is applied. .. rst-class:: classref-item-separator @@ -454,14 +458,14 @@ Current velocity vector (typically meters per second), used and modified during .. rst-class:: classref-property -:ref:`float` **wall_min_slide_angle** = ``0.261799`` :ref:`🔗` +:ref:`float` **wall_min_slide_angle** = ``0.2617994`` :ref:`🔗` .. rst-class:: classref-property-setget - |void| **set_wall_min_slide_angle**\ (\ value\: :ref:`float`\ ) - :ref:`float` **get_wall_min_slide_angle**\ (\ ) -Minimum angle (in radians) where the body is allowed to slide when it encounters a slope. The default value equals 15 degrees. When :ref:`motion_mode` is :ref:`MOTION_MODE_GROUNDED`, it only affects movement if :ref:`floor_block_on_wall` is ``true``. +Minimum angle (in radians) where the body is allowed to slide when it encounters a wall. The default value equals 15 degrees. When :ref:`motion_mode` is :ref:`MOTION_MODE_GROUNDED`, it only affects movement if :ref:`floor_block_on_wall` is ``true``. .. rst-class:: classref-section-separator @@ -707,6 +711,7 @@ When the body touches a moving platform, the platform's velocity is automaticall Returns ``true`` if the body collided, otherwise, returns ``false``. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_charfxtransform.rst b/classes/class_charfxtransform.rst index 5e26548f6..90c31ea4d 100644 --- a/classes/class_charfxtransform.rst +++ b/classes/class_charfxtransform.rst @@ -311,6 +311,7 @@ The current transform of the current glyph. It can be overridden (for example, b If ``true``, the character will be drawn. If ``false``, the character will be hidden. Characters around hidden characters will reflow to take the space of hidden characters. If this is not desired, set their :ref:`color` to ``Color(1, 1, 1, 0)`` instead. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_checkbox.rst b/classes/class_checkbox.rst index 3bae89dfe..74019676d 100644 --- a/classes/class_checkbox.rst +++ b/classes/class_checkbox.rst @@ -47,25 +47,29 @@ Theme Properties .. table:: :widths: auto - +-----------------------------------+-------------------------------------------------------------------------------------+-------+ - | :ref:`int` | :ref:`check_v_offset` | ``0`` | - +-----------------------------------+-------------------------------------------------------------------------------------+-------+ - | :ref:`Texture2D` | :ref:`checked` | | - +-----------------------------------+-------------------------------------------------------------------------------------+-------+ - | :ref:`Texture2D` | :ref:`checked_disabled` | | - +-----------------------------------+-------------------------------------------------------------------------------------+-------+ - | :ref:`Texture2D` | :ref:`radio_checked` | | - +-----------------------------------+-------------------------------------------------------------------------------------+-------+ - | :ref:`Texture2D` | :ref:`radio_checked_disabled` | | - +-----------------------------------+-------------------------------------------------------------------------------------+-------+ - | :ref:`Texture2D` | :ref:`radio_unchecked` | | - +-----------------------------------+-------------------------------------------------------------------------------------+-------+ - | :ref:`Texture2D` | :ref:`radio_unchecked_disabled` | | - +-----------------------------------+-------------------------------------------------------------------------------------+-------+ - | :ref:`Texture2D` | :ref:`unchecked` | | - +-----------------------------------+-------------------------------------------------------------------------------------+-------+ - | :ref:`Texture2D` | :ref:`unchecked_disabled` | | - +-----------------------------------+-------------------------------------------------------------------------------------+-------+ + +-----------------------------------+--------------------------------------------------------------------------------------+-----------------------+ + | :ref:`Color` | :ref:`checkbox_checked_color` | ``Color(1, 1, 1, 1)`` | + +-----------------------------------+--------------------------------------------------------------------------------------+-----------------------+ + | :ref:`Color` | :ref:`checkbox_unchecked_color` | ``Color(1, 1, 1, 1)`` | + +-----------------------------------+--------------------------------------------------------------------------------------+-----------------------+ + | :ref:`int` | :ref:`check_v_offset` | ``0`` | + +-----------------------------------+--------------------------------------------------------------------------------------+-----------------------+ + | :ref:`Texture2D` | :ref:`checked` | | + +-----------------------------------+--------------------------------------------------------------------------------------+-----------------------+ + | :ref:`Texture2D` | :ref:`checked_disabled` | | + +-----------------------------------+--------------------------------------------------------------------------------------+-----------------------+ + | :ref:`Texture2D` | :ref:`radio_checked` | | + +-----------------------------------+--------------------------------------------------------------------------------------+-----------------------+ + | :ref:`Texture2D` | :ref:`radio_checked_disabled` | | + +-----------------------------------+--------------------------------------------------------------------------------------+-----------------------+ + | :ref:`Texture2D` | :ref:`radio_unchecked` | | + +-----------------------------------+--------------------------------------------------------------------------------------+-----------------------+ + | :ref:`Texture2D` | :ref:`radio_unchecked_disabled` | | + +-----------------------------------+--------------------------------------------------------------------------------------+-----------------------+ + | :ref:`Texture2D` | :ref:`unchecked` | | + +-----------------------------------+--------------------------------------------------------------------------------------+-----------------------+ + | :ref:`Texture2D` | :ref:`unchecked_disabled` | | + +-----------------------------------+--------------------------------------------------------------------------------------+-----------------------+ .. rst-class:: classref-section-separator @@ -76,6 +80,30 @@ Theme Properties Theme Property Descriptions --------------------------- +.. _class_CheckBox_theme_color_checkbox_checked_color: + +.. rst-class:: classref-themeproperty + +:ref:`Color` **checkbox_checked_color** = ``Color(1, 1, 1, 1)`` :ref:`🔗` + +The color of the checked icon when the checkbox is pressed. + +.. rst-class:: classref-item-separator + +---- + +.. _class_CheckBox_theme_color_checkbox_unchecked_color: + +.. rst-class:: classref-themeproperty + +:ref:`Color` **checkbox_unchecked_color** = ``Color(1, 1, 1, 1)`` :ref:`🔗` + +The color of the unchecked icon when the checkbox is not pressed. + +.. rst-class:: classref-item-separator + +---- + .. _class_CheckBox_theme_constant_check_v_offset: .. rst-class:: classref-themeproperty @@ -181,6 +209,7 @@ The check icon to display when the **CheckBox** is unchecked. The check icon to display when the **CheckBox** is unchecked and is disabled. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_checkbutton.rst b/classes/class_checkbutton.rst index 2da645a50..0c4217f08 100644 --- a/classes/class_checkbutton.rst +++ b/classes/class_checkbutton.rst @@ -1,5 +1,8 @@ :github_url: hide +.. meta:: + :keywords: switch, toggle + .. DO NOT EDIT THIS FILE!!! .. Generated automatically from Godot engine sources. .. Generator: https://github.com/godotengine/godot/tree/master/doc/tools/make_rst.py. @@ -45,25 +48,29 @@ Theme Properties .. table:: :widths: auto - +-----------------------------------+----------------------------------------------------------------------------------------------+-------+ - | :ref:`int` | :ref:`check_v_offset` | ``0`` | - +-----------------------------------+----------------------------------------------------------------------------------------------+-------+ - | :ref:`Texture2D` | :ref:`checked` | | - +-----------------------------------+----------------------------------------------------------------------------------------------+-------+ - | :ref:`Texture2D` | :ref:`checked_disabled` | | - +-----------------------------------+----------------------------------------------------------------------------------------------+-------+ - | :ref:`Texture2D` | :ref:`checked_disabled_mirrored` | | - +-----------------------------------+----------------------------------------------------------------------------------------------+-------+ - | :ref:`Texture2D` | :ref:`checked_mirrored` | | - +-----------------------------------+----------------------------------------------------------------------------------------------+-------+ - | :ref:`Texture2D` | :ref:`unchecked` | | - +-----------------------------------+----------------------------------------------------------------------------------------------+-------+ - | :ref:`Texture2D` | :ref:`unchecked_disabled` | | - +-----------------------------------+----------------------------------------------------------------------------------------------+-------+ - | :ref:`Texture2D` | :ref:`unchecked_disabled_mirrored` | | - +-----------------------------------+----------------------------------------------------------------------------------------------+-------+ - | :ref:`Texture2D` | :ref:`unchecked_mirrored` | | - +-----------------------------------+----------------------------------------------------------------------------------------------+-------+ + +-----------------------------------+----------------------------------------------------------------------------------------------+-----------------------+ + | :ref:`Color` | :ref:`button_checked_color` | ``Color(1, 1, 1, 1)`` | + +-----------------------------------+----------------------------------------------------------------------------------------------+-----------------------+ + | :ref:`Color` | :ref:`button_unchecked_color` | ``Color(1, 1, 1, 1)`` | + +-----------------------------------+----------------------------------------------------------------------------------------------+-----------------------+ + | :ref:`int` | :ref:`check_v_offset` | ``0`` | + +-----------------------------------+----------------------------------------------------------------------------------------------+-----------------------+ + | :ref:`Texture2D` | :ref:`checked` | | + +-----------------------------------+----------------------------------------------------------------------------------------------+-----------------------+ + | :ref:`Texture2D` | :ref:`checked_disabled` | | + +-----------------------------------+----------------------------------------------------------------------------------------------+-----------------------+ + | :ref:`Texture2D` | :ref:`checked_disabled_mirrored` | | + +-----------------------------------+----------------------------------------------------------------------------------------------+-----------------------+ + | :ref:`Texture2D` | :ref:`checked_mirrored` | | + +-----------------------------------+----------------------------------------------------------------------------------------------+-----------------------+ + | :ref:`Texture2D` | :ref:`unchecked` | | + +-----------------------------------+----------------------------------------------------------------------------------------------+-----------------------+ + | :ref:`Texture2D` | :ref:`unchecked_disabled` | | + +-----------------------------------+----------------------------------------------------------------------------------------------+-----------------------+ + | :ref:`Texture2D` | :ref:`unchecked_disabled_mirrored` | | + +-----------------------------------+----------------------------------------------------------------------------------------------+-----------------------+ + | :ref:`Texture2D` | :ref:`unchecked_mirrored` | | + +-----------------------------------+----------------------------------------------------------------------------------------------+-----------------------+ .. rst-class:: classref-section-separator @@ -74,6 +81,30 @@ Theme Properties Theme Property Descriptions --------------------------- +.. _class_CheckButton_theme_color_button_checked_color: + +.. rst-class:: classref-themeproperty + +:ref:`Color` **button_checked_color** = ``Color(1, 1, 1, 1)`` :ref:`🔗` + +The color of the checked icon when the checkbox is pressed. + +.. rst-class:: classref-item-separator + +---- + +.. _class_CheckButton_theme_color_button_unchecked_color: + +.. rst-class:: classref-themeproperty + +:ref:`Color` **button_unchecked_color** = ``Color(1, 1, 1, 1)`` :ref:`🔗` + +The color of the unchecked icon when the checkbox is not pressed. + +.. rst-class:: classref-item-separator + +---- + .. _class_CheckButton_theme_constant_check_v_offset: .. rst-class:: classref-themeproperty @@ -179,6 +210,7 @@ The icon to display when the **CheckButton** is unchecked and disabled (for righ The icon to display when the **CheckButton** is unchecked (for right-to-left layouts). .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_circleshape2d.rst b/classes/class_circleshape2d.rst index 16f52a3f1..9f329d073 100644 --- a/classes/class_circleshape2d.rst +++ b/classes/class_circleshape2d.rst @@ -58,6 +58,7 @@ Property Descriptions The circle's radius. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_classdb.rst b/classes/class_classdb.rst index 350e85d51..59f3c7058 100644 --- a/classes/class_classdb.rst +++ b/classes/class_classdb.rst @@ -19,7 +19,9 @@ A class information repository. Description ----------- -Provides access to metadata stored for every available class. +Provides access to metadata stored for every available engine class. + +\ **Note:** Script-defined classes with ``class_name`` are not part of **ClassDB**, so they will not return reflection data such as a method or property list. However, :ref:`GDExtension`-defined classes *are* part of **ClassDB**, so they will return reflection data. .. rst-class:: classref-reftable-group @@ -197,7 +199,7 @@ Returns whether the specified ``class`` is available or not. :ref:`APIType` **class_get_api_type**\ (\ class\: :ref:`StringName`\ ) |const| :ref:`🔗` -Returns the API type of ``class``. See :ref:`APIType`. +Returns the API type of the specified ``class``. .. rst-class:: classref-item-separator @@ -439,7 +441,9 @@ Sets ``property`` value of ``object`` to ``value``. :ref:`PackedStringArray` **get_class_list**\ (\ ) |const| :ref:`🔗` -Returns the names of all the classes available. +Returns the names of all engine classes available. + +\ **Note:** Script-defined classes with ``class_name`` are not included in this list. Use :ref:`ProjectSettings.get_global_class_list()` to get a list of script-defined classes instead. .. rst-class:: classref-item-separator @@ -451,7 +455,7 @@ Returns the names of all the classes available. :ref:`PackedStringArray` **get_inheriters_from_class**\ (\ class\: :ref:`StringName`\ ) |const| :ref:`🔗` -Returns the names of all the classes that directly or indirectly inherit from ``class``. +Returns the names of all engine classes that directly or indirectly inherit from ``class``. .. rst-class:: classref-item-separator @@ -514,6 +518,7 @@ Returns whether ``class`` (or its ancestor classes if ``no_inheritance`` is ``fa Returns whether ``inherits`` is an ancestor of ``class`` or not. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_codeedit.rst b/classes/class_codeedit.rst index 16206bd74..d100ff934 100644 --- a/classes/class_codeedit.rst +++ b/classes/class_codeedit.rst @@ -310,7 +310,7 @@ Signals **breakpoint_toggled**\ (\ line\: :ref:`int`\ ) :ref:`🔗` -Emitted when a breakpoint is added or removed from a line. If the line is moved via backspace a removed is emitted at the old line. +Emitted when a breakpoint is added or removed from a line. If the line is removed via backspace, a signal is emitted at the old line. .. rst-class:: classref-item-separator @@ -827,7 +827,7 @@ If ``true``, lines can be folded. Otherwise, line folding methods like :ref:`fol - |void| **set_line_length_guidelines**\ (\ value\: :ref:`Array`\[:ref:`int`\]\ ) - :ref:`Array`\[:ref:`int`\] **get_line_length_guidelines**\ (\ ) -Draws vertical lines at the provided columns. The first entry is considered a main hard guideline and is draw more prominently. +Draws vertical lines at the provided columns. The first entry is considered a main hard guideline and is drawn more prominently. .. rst-class:: classref-item-separator @@ -861,7 +861,7 @@ Set when a validated word from :ref:`symbol_validate`\ ) - :ref:`bool` **is_symbol_tooltip_on_hover_enabled**\ (\ ) -Set when a word is hovered, the :ref:`symbol_hovered` should be emitted. +If ``true``, the :ref:`symbol_hovered` signal is emitted when hovering over a word. .. rst-class:: classref-section-separator @@ -892,7 +892,7 @@ Override this method to define how the selected entry should be inserted. If ``r Override this method to define what items in ``candidates`` should be displayed. -Both ``candidates`` and the return is a :ref:`Array` of :ref:`Dictionary`, see :ref:`get_code_completion_option()` for :ref:`Dictionary` content. +Both ``candidates`` and the return is an :ref:`Array` of :ref:`Dictionary`, see :ref:`get_code_completion_option()` for :ref:`Dictionary` content. .. rst-class:: classref-item-separator @@ -2084,6 +2084,7 @@ Sets a custom :ref:`Texture2D` to draw at the end of a folded l :ref:`StyleBox` for the code completion popup. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_codehighlighter.rst b/classes/class_codehighlighter.rst index 3d2e87393..88147fd27 100644 --- a/classes/class_codehighlighter.rst +++ b/classes/class_codehighlighter.rst @@ -389,6 +389,7 @@ Removes the keyword. Removes the member keyword. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_collisionobject2d.rst b/classes/class_collisionobject2d.rst index 35be627b2..f17ca4c4d 100644 --- a/classes/class_collisionobject2d.rst +++ b/classes/class_collisionobject2d.rst @@ -300,7 +300,7 @@ The priority used to solve colliding when occurring penetration. The higher the - |void| **set_disable_mode**\ (\ value\: :ref:`DisableMode`\ ) - :ref:`DisableMode` **get_disable_mode**\ (\ ) -Defines the behavior in physics when :ref:`Node.process_mode` is set to :ref:`Node.PROCESS_MODE_DISABLED`. See :ref:`DisableMode` for more details about the different modes. +Defines the behavior in physics when :ref:`Node.process_mode` is set to :ref:`Node.PROCESS_MODE_DISABLED`. .. rst-class:: classref-item-separator @@ -675,6 +675,7 @@ Sets the ``one_way_collision_margin`` of the shape owner identified by given ``o Sets the :ref:`Transform2D` of the given shape owner. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_collisionobject3d.rst b/classes/class_collisionobject3d.rst index c5ded0020..2760df168 100644 --- a/classes/class_collisionobject3d.rst +++ b/classes/class_collisionobject3d.rst @@ -266,7 +266,7 @@ The priority used to solve colliding when occurring penetration. The higher the - |void| **set_disable_mode**\ (\ value\: :ref:`DisableMode`\ ) - :ref:`DisableMode` **get_disable_mode**\ (\ ) -Defines the behavior in physics when :ref:`Node.process_mode` is set to :ref:`Node.PROCESS_MODE_DISABLED`. See :ref:`DisableMode` for more details about the different modes. +Defines the behavior in physics when :ref:`Node.process_mode` is set to :ref:`Node.PROCESS_MODE_DISABLED`. .. rst-class:: classref-item-separator @@ -586,6 +586,7 @@ If ``true``, disables the given shape owner. Sets the :ref:`Transform3D` of the given shape owner. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_collisionpolygon2d.rst b/classes/class_collisionpolygon2d.rst index e42414e5f..a2c2a365c 100644 --- a/classes/class_collisionpolygon2d.rst +++ b/classes/class_collisionpolygon2d.rst @@ -94,7 +94,7 @@ Property Descriptions - |void| **set_build_mode**\ (\ value\: :ref:`BuildMode`\ ) - :ref:`BuildMode` **get_build_mode**\ (\ ) -Collision build mode. Use one of the :ref:`BuildMode` constants. +Collision build mode. .. rst-class:: classref-item-separator @@ -111,7 +111,7 @@ Collision build mode. Use one of the :ref:`BuildMode`\ ) - :ref:`bool` **is_disabled**\ (\ ) -If ``true``, no collisions will be detected. +If ``true``, no collisions will be detected. This property should be changed with :ref:`Object.set_deferred()`. .. rst-class:: classref-item-separator @@ -171,6 +171,7 @@ The polygon's list of vertices. Each point will be connected to the next, and th **Note:** The returned array is *copied* and any changes to it will not update the original property value. See :ref:`PackedVector2Array` for more details. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_collisionpolygon3d.rst b/classes/class_collisionpolygon3d.rst index 4d853ce91..42caaaafc 100644 --- a/classes/class_collisionpolygon3d.rst +++ b/classes/class_collisionpolygon3d.rst @@ -118,7 +118,7 @@ Length that the resulting collision extends in either direction perpendicular to - |void| **set_disabled**\ (\ value\: :ref:`bool`\ ) - :ref:`bool` **is_disabled**\ (\ ) -If ``true``, no collision will be produced. +If ``true``, no collision will be produced. This property should be changed with :ref:`Object.set_deferred()`. .. rst-class:: classref-item-separator @@ -157,6 +157,7 @@ Array of vertices which define the 2D polygon in the local XY plane. **Note:** The returned array is *copied* and any changes to it will not update the original property value. See :ref:`PackedVector2Array` for more details. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_collisionshape2d.rst b/classes/class_collisionshape2d.rst index 7affb6366..8a790e331 100644 --- a/classes/class_collisionshape2d.rst +++ b/classes/class_collisionshape2d.rst @@ -149,6 +149,7 @@ The margin used for one-way collision (in pixels). Higher values will make the s The actual shape owned by this collision shape. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_collisionshape3d.rst b/classes/class_collisionshape3d.rst index 59d16881e..fd5726c14 100644 --- a/classes/class_collisionshape3d.rst +++ b/classes/class_collisionshape3d.rst @@ -124,7 +124,7 @@ If ``true``, when the shape is displayed, it will show a solid fill color in add - |void| **set_disabled**\ (\ value\: :ref:`bool`\ ) - :ref:`bool` **is_disabled**\ (\ ) -A disabled collision shape has no effect in the world. +A disabled collision shape has no effect in the world. This property should be changed with :ref:`Object.set_deferred()`. .. rst-class:: classref-item-separator @@ -175,6 +175,7 @@ Sets the collision shape's shape to the addition of all its convexed :ref:`MeshI This method does nothing. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_color.rst b/classes/class_color.rst index 18deb2abd..41af72a4c 100644 --- a/classes/class_color.rst +++ b/classes/class_color.rst @@ -21,6 +21,8 @@ A color represented in RGBA format by a red (:ref:`r`), Colors can be created in various ways: By the various **Color** constructors, by static methods such as :ref:`from_hsv()`, and by using a name from the set of standardized colors based on `X11 color names `__ with the addition of :ref:`TRANSPARENT`. GDScript also provides :ref:`@GDScript.Color8()`, which uses integers from ``0`` to ``255`` and doesn't support overbright colors. +Color data may be stored in many color spaces and encodings. The :ref:`srgb_to_linear()` and :ref:`linear_to_srgb()` methods can convert between nonlinear sRGB encoding and linear RGB encoding. + \ **Note:** In a boolean context, a Color will evaluate to ``false`` if it is equal to ``Color(0, 0, 0, 1)`` (opaque black). Otherwise, a Color will always evaluate to ``true``. \ `Color constants cheatsheet `__ @@ -213,7 +215,7 @@ Constants .. rst-class:: classref-constant -**ALICE_BLUE** = ``Color(0.941176, 0.972549, 1, 1)`` :ref:`🔗` +**ALICE_BLUE** = ``Color(0.9411765, 0.972549, 1, 1)`` :ref:`🔗` Alice blue color. @@ -221,7 +223,7 @@ Alice blue color. .. rst-class:: classref-constant -**ANTIQUE_WHITE** = ``Color(0.980392, 0.921569, 0.843137, 1)`` :ref:`🔗` +**ANTIQUE_WHITE** = ``Color(0.98039216, 0.92156863, 0.84313726, 1)`` :ref:`🔗` Antique white color. @@ -237,7 +239,7 @@ Aqua color. .. rst-class:: classref-constant -**AQUAMARINE** = ``Color(0.498039, 1, 0.831373, 1)`` :ref:`🔗` +**AQUAMARINE** = ``Color(0.49803922, 1, 0.83137256, 1)`` :ref:`🔗` Aquamarine color. @@ -245,7 +247,7 @@ Aquamarine color. .. rst-class:: classref-constant -**AZURE** = ``Color(0.941176, 1, 1, 1)`` :ref:`🔗` +**AZURE** = ``Color(0.9411765, 1, 1, 1)`` :ref:`🔗` Azure color. @@ -253,7 +255,7 @@ Azure color. .. rst-class:: classref-constant -**BEIGE** = ``Color(0.960784, 0.960784, 0.862745, 1)`` :ref:`🔗` +**BEIGE** = ``Color(0.9607843, 0.9607843, 0.8627451, 1)`` :ref:`🔗` Beige color. @@ -261,7 +263,7 @@ Beige color. .. rst-class:: classref-constant -**BISQUE** = ``Color(1, 0.894118, 0.768627, 1)`` :ref:`🔗` +**BISQUE** = ``Color(1, 0.89411765, 0.76862746, 1)`` :ref:`🔗` Bisque color. @@ -277,7 +279,7 @@ Black color. In GDScript, this is the default value of any color. .. rst-class:: classref-constant -**BLANCHED_ALMOND** = ``Color(1, 0.921569, 0.803922, 1)`` :ref:`🔗` +**BLANCHED_ALMOND** = ``Color(1, 0.92156863, 0.8039216, 1)`` :ref:`🔗` Blanched almond color. @@ -293,7 +295,7 @@ Blue color. .. rst-class:: classref-constant -**BLUE_VIOLET** = ``Color(0.541176, 0.168627, 0.886275, 1)`` :ref:`🔗` +**BLUE_VIOLET** = ``Color(0.5411765, 0.16862746, 0.8862745, 1)`` :ref:`🔗` Blue violet color. @@ -301,7 +303,7 @@ Blue violet color. .. rst-class:: classref-constant -**BROWN** = ``Color(0.647059, 0.164706, 0.164706, 1)`` :ref:`🔗` +**BROWN** = ``Color(0.64705884, 0.16470589, 0.16470589, 1)`` :ref:`🔗` Brown color. @@ -309,7 +311,7 @@ Brown color. .. rst-class:: classref-constant -**BURLYWOOD** = ``Color(0.870588, 0.721569, 0.529412, 1)`` :ref:`🔗` +**BURLYWOOD** = ``Color(0.87058824, 0.72156864, 0.5294118, 1)`` :ref:`🔗` Burlywood color. @@ -317,7 +319,7 @@ Burlywood color. .. rst-class:: classref-constant -**CADET_BLUE** = ``Color(0.372549, 0.619608, 0.627451, 1)`` :ref:`🔗` +**CADET_BLUE** = ``Color(0.37254903, 0.61960787, 0.627451, 1)`` :ref:`🔗` Cadet blue color. @@ -325,7 +327,7 @@ Cadet blue color. .. rst-class:: classref-constant -**CHARTREUSE** = ``Color(0.498039, 1, 0, 1)`` :ref:`🔗` +**CHARTREUSE** = ``Color(0.49803922, 1, 0, 1)`` :ref:`🔗` Chartreuse color. @@ -333,7 +335,7 @@ Chartreuse color. .. rst-class:: classref-constant -**CHOCOLATE** = ``Color(0.823529, 0.411765, 0.117647, 1)`` :ref:`🔗` +**CHOCOLATE** = ``Color(0.8235294, 0.4117647, 0.11764706, 1)`` :ref:`🔗` Chocolate color. @@ -341,7 +343,7 @@ Chocolate color. .. rst-class:: classref-constant -**CORAL** = ``Color(1, 0.498039, 0.313726, 1)`` :ref:`🔗` +**CORAL** = ``Color(1, 0.49803922, 0.3137255, 1)`` :ref:`🔗` Coral color. @@ -349,7 +351,7 @@ Coral color. .. rst-class:: classref-constant -**CORNFLOWER_BLUE** = ``Color(0.392157, 0.584314, 0.929412, 1)`` :ref:`🔗` +**CORNFLOWER_BLUE** = ``Color(0.39215687, 0.58431375, 0.92941177, 1)`` :ref:`🔗` Cornflower blue color. @@ -357,7 +359,7 @@ Cornflower blue color. .. rst-class:: classref-constant -**CORNSILK** = ``Color(1, 0.972549, 0.862745, 1)`` :ref:`🔗` +**CORNSILK** = ``Color(1, 0.972549, 0.8627451, 1)`` :ref:`🔗` Cornsilk color. @@ -365,7 +367,7 @@ Cornsilk color. .. rst-class:: classref-constant -**CRIMSON** = ``Color(0.862745, 0.0784314, 0.235294, 1)`` :ref:`🔗` +**CRIMSON** = ``Color(0.8627451, 0.078431375, 0.23529412, 1)`` :ref:`🔗` Crimson color. @@ -381,7 +383,7 @@ Cyan color. .. rst-class:: classref-constant -**DARK_BLUE** = ``Color(0, 0, 0.545098, 1)`` :ref:`🔗` +**DARK_BLUE** = ``Color(0, 0, 0.54509807, 1)`` :ref:`🔗` Dark blue color. @@ -389,7 +391,7 @@ Dark blue color. .. rst-class:: classref-constant -**DARK_CYAN** = ``Color(0, 0.545098, 0.545098, 1)`` :ref:`🔗` +**DARK_CYAN** = ``Color(0, 0.54509807, 0.54509807, 1)`` :ref:`🔗` Dark cyan color. @@ -397,7 +399,7 @@ Dark cyan color. .. rst-class:: classref-constant -**DARK_GOLDENROD** = ``Color(0.721569, 0.52549, 0.0431373, 1)`` :ref:`🔗` +**DARK_GOLDENROD** = ``Color(0.72156864, 0.5254902, 0.043137256, 1)`` :ref:`🔗` Dark goldenrod color. @@ -405,7 +407,7 @@ Dark goldenrod color. .. rst-class:: classref-constant -**DARK_GRAY** = ``Color(0.662745, 0.662745, 0.662745, 1)`` :ref:`🔗` +**DARK_GRAY** = ``Color(0.6627451, 0.6627451, 0.6627451, 1)`` :ref:`🔗` Dark gray color. @@ -413,7 +415,7 @@ Dark gray color. .. rst-class:: classref-constant -**DARK_GREEN** = ``Color(0, 0.392157, 0, 1)`` :ref:`🔗` +**DARK_GREEN** = ``Color(0, 0.39215687, 0, 1)`` :ref:`🔗` Dark green color. @@ -421,7 +423,7 @@ Dark green color. .. rst-class:: classref-constant -**DARK_KHAKI** = ``Color(0.741176, 0.717647, 0.419608, 1)`` :ref:`🔗` +**DARK_KHAKI** = ``Color(0.7411765, 0.7176471, 0.41960785, 1)`` :ref:`🔗` Dark khaki color. @@ -429,7 +431,7 @@ Dark khaki color. .. rst-class:: classref-constant -**DARK_MAGENTA** = ``Color(0.545098, 0, 0.545098, 1)`` :ref:`🔗` +**DARK_MAGENTA** = ``Color(0.54509807, 0, 0.54509807, 1)`` :ref:`🔗` Dark magenta color. @@ -437,7 +439,7 @@ Dark magenta color. .. rst-class:: classref-constant -**DARK_OLIVE_GREEN** = ``Color(0.333333, 0.419608, 0.184314, 1)`` :ref:`🔗` +**DARK_OLIVE_GREEN** = ``Color(0.33333334, 0.41960785, 0.18431373, 1)`` :ref:`🔗` Dark olive green color. @@ -445,7 +447,7 @@ Dark olive green color. .. rst-class:: classref-constant -**DARK_ORANGE** = ``Color(1, 0.54902, 0, 1)`` :ref:`🔗` +**DARK_ORANGE** = ``Color(1, 0.54901963, 0, 1)`` :ref:`🔗` Dark orange color. @@ -453,7 +455,7 @@ Dark orange color. .. rst-class:: classref-constant -**DARK_ORCHID** = ``Color(0.6, 0.196078, 0.8, 1)`` :ref:`🔗` +**DARK_ORCHID** = ``Color(0.6, 0.19607843, 0.8, 1)`` :ref:`🔗` Dark orchid color. @@ -461,7 +463,7 @@ Dark orchid color. .. rst-class:: classref-constant -**DARK_RED** = ``Color(0.545098, 0, 0, 1)`` :ref:`🔗` +**DARK_RED** = ``Color(0.54509807, 0, 0, 1)`` :ref:`🔗` Dark red color. @@ -469,7 +471,7 @@ Dark red color. .. rst-class:: classref-constant -**DARK_SALMON** = ``Color(0.913725, 0.588235, 0.478431, 1)`` :ref:`🔗` +**DARK_SALMON** = ``Color(0.9137255, 0.5882353, 0.47843137, 1)`` :ref:`🔗` Dark salmon color. @@ -477,7 +479,7 @@ Dark salmon color. .. rst-class:: classref-constant -**DARK_SEA_GREEN** = ``Color(0.560784, 0.737255, 0.560784, 1)`` :ref:`🔗` +**DARK_SEA_GREEN** = ``Color(0.56078434, 0.7372549, 0.56078434, 1)`` :ref:`🔗` Dark sea green color. @@ -485,7 +487,7 @@ Dark sea green color. .. rst-class:: classref-constant -**DARK_SLATE_BLUE** = ``Color(0.282353, 0.239216, 0.545098, 1)`` :ref:`🔗` +**DARK_SLATE_BLUE** = ``Color(0.28235295, 0.23921569, 0.54509807, 1)`` :ref:`🔗` Dark slate blue color. @@ -493,7 +495,7 @@ Dark slate blue color. .. rst-class:: classref-constant -**DARK_SLATE_GRAY** = ``Color(0.184314, 0.309804, 0.309804, 1)`` :ref:`🔗` +**DARK_SLATE_GRAY** = ``Color(0.18431373, 0.30980393, 0.30980393, 1)`` :ref:`🔗` Dark slate gray color. @@ -501,7 +503,7 @@ Dark slate gray color. .. rst-class:: classref-constant -**DARK_TURQUOISE** = ``Color(0, 0.807843, 0.819608, 1)`` :ref:`🔗` +**DARK_TURQUOISE** = ``Color(0, 0.80784315, 0.81960785, 1)`` :ref:`🔗` Dark turquoise color. @@ -509,7 +511,7 @@ Dark turquoise color. .. rst-class:: classref-constant -**DARK_VIOLET** = ``Color(0.580392, 0, 0.827451, 1)`` :ref:`🔗` +**DARK_VIOLET** = ``Color(0.5803922, 0, 0.827451, 1)`` :ref:`🔗` Dark violet color. @@ -517,7 +519,7 @@ Dark violet color. .. rst-class:: classref-constant -**DEEP_PINK** = ``Color(1, 0.0784314, 0.576471, 1)`` :ref:`🔗` +**DEEP_PINK** = ``Color(1, 0.078431375, 0.5764706, 1)`` :ref:`🔗` Deep pink color. @@ -525,7 +527,7 @@ Deep pink color. .. rst-class:: classref-constant -**DEEP_SKY_BLUE** = ``Color(0, 0.74902, 1, 1)`` :ref:`🔗` +**DEEP_SKY_BLUE** = ``Color(0, 0.7490196, 1, 1)`` :ref:`🔗` Deep sky blue color. @@ -533,7 +535,7 @@ Deep sky blue color. .. rst-class:: classref-constant -**DIM_GRAY** = ``Color(0.411765, 0.411765, 0.411765, 1)`` :ref:`🔗` +**DIM_GRAY** = ``Color(0.4117647, 0.4117647, 0.4117647, 1)`` :ref:`🔗` Dim gray color. @@ -541,7 +543,7 @@ Dim gray color. .. rst-class:: classref-constant -**DODGER_BLUE** = ``Color(0.117647, 0.564706, 1, 1)`` :ref:`🔗` +**DODGER_BLUE** = ``Color(0.11764706, 0.5647059, 1, 1)`` :ref:`🔗` Dodger blue color. @@ -549,7 +551,7 @@ Dodger blue color. .. rst-class:: classref-constant -**FIREBRICK** = ``Color(0.698039, 0.133333, 0.133333, 1)`` :ref:`🔗` +**FIREBRICK** = ``Color(0.69803923, 0.13333334, 0.13333334, 1)`` :ref:`🔗` Firebrick color. @@ -557,7 +559,7 @@ Firebrick color. .. rst-class:: classref-constant -**FLORAL_WHITE** = ``Color(1, 0.980392, 0.941176, 1)`` :ref:`🔗` +**FLORAL_WHITE** = ``Color(1, 0.98039216, 0.9411765, 1)`` :ref:`🔗` Floral white color. @@ -565,7 +567,7 @@ Floral white color. .. rst-class:: classref-constant -**FOREST_GREEN** = ``Color(0.133333, 0.545098, 0.133333, 1)`` :ref:`🔗` +**FOREST_GREEN** = ``Color(0.13333334, 0.54509807, 0.13333334, 1)`` :ref:`🔗` Forest green color. @@ -581,7 +583,7 @@ Fuchsia color. .. rst-class:: classref-constant -**GAINSBORO** = ``Color(0.862745, 0.862745, 0.862745, 1)`` :ref:`🔗` +**GAINSBORO** = ``Color(0.8627451, 0.8627451, 0.8627451, 1)`` :ref:`🔗` Gainsboro color. @@ -597,7 +599,7 @@ Ghost white color. .. rst-class:: classref-constant -**GOLD** = ``Color(1, 0.843137, 0, 1)`` :ref:`🔗` +**GOLD** = ``Color(1, 0.84313726, 0, 1)`` :ref:`🔗` Gold color. @@ -605,7 +607,7 @@ Gold color. .. rst-class:: classref-constant -**GOLDENROD** = ``Color(0.854902, 0.647059, 0.12549, 1)`` :ref:`🔗` +**GOLDENROD** = ``Color(0.85490197, 0.64705884, 0.1254902, 1)`` :ref:`🔗` Goldenrod color. @@ -613,7 +615,7 @@ Goldenrod color. .. rst-class:: classref-constant -**GRAY** = ``Color(0.745098, 0.745098, 0.745098, 1)`` :ref:`🔗` +**GRAY** = ``Color(0.74509805, 0.74509805, 0.74509805, 1)`` :ref:`🔗` Gray color. @@ -629,7 +631,7 @@ Green color. .. rst-class:: classref-constant -**GREEN_YELLOW** = ``Color(0.678431, 1, 0.184314, 1)`` :ref:`🔗` +**GREEN_YELLOW** = ``Color(0.6784314, 1, 0.18431373, 1)`` :ref:`🔗` Green yellow color. @@ -637,7 +639,7 @@ Green yellow color. .. rst-class:: classref-constant -**HONEYDEW** = ``Color(0.941176, 1, 0.941176, 1)`` :ref:`🔗` +**HONEYDEW** = ``Color(0.9411765, 1, 0.9411765, 1)`` :ref:`🔗` Honeydew color. @@ -645,7 +647,7 @@ Honeydew color. .. rst-class:: classref-constant -**HOT_PINK** = ``Color(1, 0.411765, 0.705882, 1)`` :ref:`🔗` +**HOT_PINK** = ``Color(1, 0.4117647, 0.7058824, 1)`` :ref:`🔗` Hot pink color. @@ -653,7 +655,7 @@ Hot pink color. .. rst-class:: classref-constant -**INDIAN_RED** = ``Color(0.803922, 0.360784, 0.360784, 1)`` :ref:`🔗` +**INDIAN_RED** = ``Color(0.8039216, 0.36078432, 0.36078432, 1)`` :ref:`🔗` Indian red color. @@ -661,7 +663,7 @@ Indian red color. .. rst-class:: classref-constant -**INDIGO** = ``Color(0.294118, 0, 0.509804, 1)`` :ref:`🔗` +**INDIGO** = ``Color(0.29411766, 0, 0.50980395, 1)`` :ref:`🔗` Indigo color. @@ -669,7 +671,7 @@ Indigo color. .. rst-class:: classref-constant -**IVORY** = ``Color(1, 1, 0.941176, 1)`` :ref:`🔗` +**IVORY** = ``Color(1, 1, 0.9411765, 1)`` :ref:`🔗` Ivory color. @@ -677,7 +679,7 @@ Ivory color. .. rst-class:: classref-constant -**KHAKI** = ``Color(0.941176, 0.901961, 0.54902, 1)`` :ref:`🔗` +**KHAKI** = ``Color(0.9411765, 0.9019608, 0.54901963, 1)`` :ref:`🔗` Khaki color. @@ -685,7 +687,7 @@ Khaki color. .. rst-class:: classref-constant -**LAVENDER** = ``Color(0.901961, 0.901961, 0.980392, 1)`` :ref:`🔗` +**LAVENDER** = ``Color(0.9019608, 0.9019608, 0.98039216, 1)`` :ref:`🔗` Lavender color. @@ -693,7 +695,7 @@ Lavender color. .. rst-class:: classref-constant -**LAVENDER_BLUSH** = ``Color(1, 0.941176, 0.960784, 1)`` :ref:`🔗` +**LAVENDER_BLUSH** = ``Color(1, 0.9411765, 0.9607843, 1)`` :ref:`🔗` Lavender blush color. @@ -701,7 +703,7 @@ Lavender blush color. .. rst-class:: classref-constant -**LAWN_GREEN** = ``Color(0.486275, 0.988235, 0, 1)`` :ref:`🔗` +**LAWN_GREEN** = ``Color(0.4862745, 0.9882353, 0, 1)`` :ref:`🔗` Lawn green color. @@ -709,7 +711,7 @@ Lawn green color. .. rst-class:: classref-constant -**LEMON_CHIFFON** = ``Color(1, 0.980392, 0.803922, 1)`` :ref:`🔗` +**LEMON_CHIFFON** = ``Color(1, 0.98039216, 0.8039216, 1)`` :ref:`🔗` Lemon chiffon color. @@ -717,7 +719,7 @@ Lemon chiffon color. .. rst-class:: classref-constant -**LIGHT_BLUE** = ``Color(0.678431, 0.847059, 0.901961, 1)`` :ref:`🔗` +**LIGHT_BLUE** = ``Color(0.6784314, 0.84705883, 0.9019608, 1)`` :ref:`🔗` Light blue color. @@ -725,7 +727,7 @@ Light blue color. .. rst-class:: classref-constant -**LIGHT_CORAL** = ``Color(0.941176, 0.501961, 0.501961, 1)`` :ref:`🔗` +**LIGHT_CORAL** = ``Color(0.9411765, 0.5019608, 0.5019608, 1)`` :ref:`🔗` Light coral color. @@ -733,7 +735,7 @@ Light coral color. .. rst-class:: classref-constant -**LIGHT_CYAN** = ``Color(0.878431, 1, 1, 1)`` :ref:`🔗` +**LIGHT_CYAN** = ``Color(0.8784314, 1, 1, 1)`` :ref:`🔗` Light cyan color. @@ -741,7 +743,7 @@ Light cyan color. .. rst-class:: classref-constant -**LIGHT_GOLDENROD** = ``Color(0.980392, 0.980392, 0.823529, 1)`` :ref:`🔗` +**LIGHT_GOLDENROD** = ``Color(0.98039216, 0.98039216, 0.8235294, 1)`` :ref:`🔗` Light goldenrod color. @@ -757,7 +759,7 @@ Light gray color. .. rst-class:: classref-constant -**LIGHT_GREEN** = ``Color(0.564706, 0.933333, 0.564706, 1)`` :ref:`🔗` +**LIGHT_GREEN** = ``Color(0.5647059, 0.93333334, 0.5647059, 1)`` :ref:`🔗` Light green color. @@ -765,7 +767,7 @@ Light green color. .. rst-class:: classref-constant -**LIGHT_PINK** = ``Color(1, 0.713726, 0.756863, 1)`` :ref:`🔗` +**LIGHT_PINK** = ``Color(1, 0.7137255, 0.75686276, 1)`` :ref:`🔗` Light pink color. @@ -773,7 +775,7 @@ Light pink color. .. rst-class:: classref-constant -**LIGHT_SALMON** = ``Color(1, 0.627451, 0.478431, 1)`` :ref:`🔗` +**LIGHT_SALMON** = ``Color(1, 0.627451, 0.47843137, 1)`` :ref:`🔗` Light salmon color. @@ -781,7 +783,7 @@ Light salmon color. .. rst-class:: classref-constant -**LIGHT_SEA_GREEN** = ``Color(0.12549, 0.698039, 0.666667, 1)`` :ref:`🔗` +**LIGHT_SEA_GREEN** = ``Color(0.1254902, 0.69803923, 0.6666667, 1)`` :ref:`🔗` Light sea green color. @@ -789,7 +791,7 @@ Light sea green color. .. rst-class:: classref-constant -**LIGHT_SKY_BLUE** = ``Color(0.529412, 0.807843, 0.980392, 1)`` :ref:`🔗` +**LIGHT_SKY_BLUE** = ``Color(0.5294118, 0.80784315, 0.98039216, 1)`` :ref:`🔗` Light sky blue color. @@ -797,7 +799,7 @@ Light sky blue color. .. rst-class:: classref-constant -**LIGHT_SLATE_GRAY** = ``Color(0.466667, 0.533333, 0.6, 1)`` :ref:`🔗` +**LIGHT_SLATE_GRAY** = ``Color(0.46666667, 0.53333336, 0.6, 1)`` :ref:`🔗` Light slate gray color. @@ -805,7 +807,7 @@ Light slate gray color. .. rst-class:: classref-constant -**LIGHT_STEEL_BLUE** = ``Color(0.690196, 0.768627, 0.870588, 1)`` :ref:`🔗` +**LIGHT_STEEL_BLUE** = ``Color(0.6901961, 0.76862746, 0.87058824, 1)`` :ref:`🔗` Light steel blue color. @@ -813,7 +815,7 @@ Light steel blue color. .. rst-class:: classref-constant -**LIGHT_YELLOW** = ``Color(1, 1, 0.878431, 1)`` :ref:`🔗` +**LIGHT_YELLOW** = ``Color(1, 1, 0.8784314, 1)`` :ref:`🔗` Light yellow color. @@ -829,7 +831,7 @@ Lime color. .. rst-class:: classref-constant -**LIME_GREEN** = ``Color(0.196078, 0.803922, 0.196078, 1)`` :ref:`🔗` +**LIME_GREEN** = ``Color(0.19607843, 0.8039216, 0.19607843, 1)`` :ref:`🔗` Lime green color. @@ -837,7 +839,7 @@ Lime green color. .. rst-class:: classref-constant -**LINEN** = ``Color(0.980392, 0.941176, 0.901961, 1)`` :ref:`🔗` +**LINEN** = ``Color(0.98039216, 0.9411765, 0.9019608, 1)`` :ref:`🔗` Linen color. @@ -853,7 +855,7 @@ Magenta color. .. rst-class:: classref-constant -**MAROON** = ``Color(0.690196, 0.188235, 0.376471, 1)`` :ref:`🔗` +**MAROON** = ``Color(0.6901961, 0.1882353, 0.3764706, 1)`` :ref:`🔗` Maroon color. @@ -861,7 +863,7 @@ Maroon color. .. rst-class:: classref-constant -**MEDIUM_AQUAMARINE** = ``Color(0.4, 0.803922, 0.666667, 1)`` :ref:`🔗` +**MEDIUM_AQUAMARINE** = ``Color(0.4, 0.8039216, 0.6666667, 1)`` :ref:`🔗` Medium aquamarine color. @@ -869,7 +871,7 @@ Medium aquamarine color. .. rst-class:: classref-constant -**MEDIUM_BLUE** = ``Color(0, 0, 0.803922, 1)`` :ref:`🔗` +**MEDIUM_BLUE** = ``Color(0, 0, 0.8039216, 1)`` :ref:`🔗` Medium blue color. @@ -877,7 +879,7 @@ Medium blue color. .. rst-class:: classref-constant -**MEDIUM_ORCHID** = ``Color(0.729412, 0.333333, 0.827451, 1)`` :ref:`🔗` +**MEDIUM_ORCHID** = ``Color(0.7294118, 0.33333334, 0.827451, 1)`` :ref:`🔗` Medium orchid color. @@ -885,7 +887,7 @@ Medium orchid color. .. rst-class:: classref-constant -**MEDIUM_PURPLE** = ``Color(0.576471, 0.439216, 0.858824, 1)`` :ref:`🔗` +**MEDIUM_PURPLE** = ``Color(0.5764706, 0.4392157, 0.85882354, 1)`` :ref:`🔗` Medium purple color. @@ -893,7 +895,7 @@ Medium purple color. .. rst-class:: classref-constant -**MEDIUM_SEA_GREEN** = ``Color(0.235294, 0.701961, 0.443137, 1)`` :ref:`🔗` +**MEDIUM_SEA_GREEN** = ``Color(0.23529412, 0.7019608, 0.44313726, 1)`` :ref:`🔗` Medium sea green color. @@ -901,7 +903,7 @@ Medium sea green color. .. rst-class:: classref-constant -**MEDIUM_SLATE_BLUE** = ``Color(0.482353, 0.407843, 0.933333, 1)`` :ref:`🔗` +**MEDIUM_SLATE_BLUE** = ``Color(0.48235294, 0.40784314, 0.93333334, 1)`` :ref:`🔗` Medium slate blue color. @@ -909,7 +911,7 @@ Medium slate blue color. .. rst-class:: classref-constant -**MEDIUM_SPRING_GREEN** = ``Color(0, 0.980392, 0.603922, 1)`` :ref:`🔗` +**MEDIUM_SPRING_GREEN** = ``Color(0, 0.98039216, 0.6039216, 1)`` :ref:`🔗` Medium spring green color. @@ -917,7 +919,7 @@ Medium spring green color. .. rst-class:: classref-constant -**MEDIUM_TURQUOISE** = ``Color(0.282353, 0.819608, 0.8, 1)`` :ref:`🔗` +**MEDIUM_TURQUOISE** = ``Color(0.28235295, 0.81960785, 0.8, 1)`` :ref:`🔗` Medium turquoise color. @@ -925,7 +927,7 @@ Medium turquoise color. .. rst-class:: classref-constant -**MEDIUM_VIOLET_RED** = ``Color(0.780392, 0.0823529, 0.521569, 1)`` :ref:`🔗` +**MEDIUM_VIOLET_RED** = ``Color(0.78039217, 0.08235294, 0.52156866, 1)`` :ref:`🔗` Medium violet red color. @@ -933,7 +935,7 @@ Medium violet red color. .. rst-class:: classref-constant -**MIDNIGHT_BLUE** = ``Color(0.0980392, 0.0980392, 0.439216, 1)`` :ref:`🔗` +**MIDNIGHT_BLUE** = ``Color(0.09803922, 0.09803922, 0.4392157, 1)`` :ref:`🔗` Midnight blue color. @@ -941,7 +943,7 @@ Midnight blue color. .. rst-class:: classref-constant -**MINT_CREAM** = ``Color(0.960784, 1, 0.980392, 1)`` :ref:`🔗` +**MINT_CREAM** = ``Color(0.9607843, 1, 0.98039216, 1)`` :ref:`🔗` Mint cream color. @@ -949,7 +951,7 @@ Mint cream color. .. rst-class:: classref-constant -**MISTY_ROSE** = ``Color(1, 0.894118, 0.882353, 1)`` :ref:`🔗` +**MISTY_ROSE** = ``Color(1, 0.89411765, 0.88235295, 1)`` :ref:`🔗` Misty rose color. @@ -957,7 +959,7 @@ Misty rose color. .. rst-class:: classref-constant -**MOCCASIN** = ``Color(1, 0.894118, 0.709804, 1)`` :ref:`🔗` +**MOCCASIN** = ``Color(1, 0.89411765, 0.70980394, 1)`` :ref:`🔗` Moccasin color. @@ -965,7 +967,7 @@ Moccasin color. .. rst-class:: classref-constant -**NAVAJO_WHITE** = ``Color(1, 0.870588, 0.678431, 1)`` :ref:`🔗` +**NAVAJO_WHITE** = ``Color(1, 0.87058824, 0.6784314, 1)`` :ref:`🔗` Navajo white color. @@ -973,7 +975,7 @@ Navajo white color. .. rst-class:: classref-constant -**NAVY_BLUE** = ``Color(0, 0, 0.501961, 1)`` :ref:`🔗` +**NAVY_BLUE** = ``Color(0, 0, 0.5019608, 1)`` :ref:`🔗` Navy blue color. @@ -981,7 +983,7 @@ Navy blue color. .. rst-class:: classref-constant -**OLD_LACE** = ``Color(0.992157, 0.960784, 0.901961, 1)`` :ref:`🔗` +**OLD_LACE** = ``Color(0.99215686, 0.9607843, 0.9019608, 1)`` :ref:`🔗` Old lace color. @@ -989,7 +991,7 @@ Old lace color. .. rst-class:: classref-constant -**OLIVE** = ``Color(0.501961, 0.501961, 0, 1)`` :ref:`🔗` +**OLIVE** = ``Color(0.5019608, 0.5019608, 0, 1)`` :ref:`🔗` Olive color. @@ -997,7 +999,7 @@ Olive color. .. rst-class:: classref-constant -**OLIVE_DRAB** = ``Color(0.419608, 0.556863, 0.137255, 1)`` :ref:`🔗` +**OLIVE_DRAB** = ``Color(0.41960785, 0.5568628, 0.13725491, 1)`` :ref:`🔗` Olive drab color. @@ -1005,7 +1007,7 @@ Olive drab color. .. rst-class:: classref-constant -**ORANGE** = ``Color(1, 0.647059, 0, 1)`` :ref:`🔗` +**ORANGE** = ``Color(1, 0.64705884, 0, 1)`` :ref:`🔗` Orange color. @@ -1013,7 +1015,7 @@ Orange color. .. rst-class:: classref-constant -**ORANGE_RED** = ``Color(1, 0.270588, 0, 1)`` :ref:`🔗` +**ORANGE_RED** = ``Color(1, 0.27058825, 0, 1)`` :ref:`🔗` Orange red color. @@ -1021,7 +1023,7 @@ Orange red color. .. rst-class:: classref-constant -**ORCHID** = ``Color(0.854902, 0.439216, 0.839216, 1)`` :ref:`🔗` +**ORCHID** = ``Color(0.85490197, 0.4392157, 0.8392157, 1)`` :ref:`🔗` Orchid color. @@ -1029,7 +1031,7 @@ Orchid color. .. rst-class:: classref-constant -**PALE_GOLDENROD** = ``Color(0.933333, 0.909804, 0.666667, 1)`` :ref:`🔗` +**PALE_GOLDENROD** = ``Color(0.93333334, 0.9098039, 0.6666667, 1)`` :ref:`🔗` Pale goldenrod color. @@ -1037,7 +1039,7 @@ Pale goldenrod color. .. rst-class:: classref-constant -**PALE_GREEN** = ``Color(0.596078, 0.984314, 0.596078, 1)`` :ref:`🔗` +**PALE_GREEN** = ``Color(0.59607846, 0.9843137, 0.59607846, 1)`` :ref:`🔗` Pale green color. @@ -1045,7 +1047,7 @@ Pale green color. .. rst-class:: classref-constant -**PALE_TURQUOISE** = ``Color(0.686275, 0.933333, 0.933333, 1)`` :ref:`🔗` +**PALE_TURQUOISE** = ``Color(0.6862745, 0.93333334, 0.93333334, 1)`` :ref:`🔗` Pale turquoise color. @@ -1053,7 +1055,7 @@ Pale turquoise color. .. rst-class:: classref-constant -**PALE_VIOLET_RED** = ``Color(0.858824, 0.439216, 0.576471, 1)`` :ref:`🔗` +**PALE_VIOLET_RED** = ``Color(0.85882354, 0.4392157, 0.5764706, 1)`` :ref:`🔗` Pale violet red color. @@ -1061,7 +1063,7 @@ Pale violet red color. .. rst-class:: classref-constant -**PAPAYA_WHIP** = ``Color(1, 0.937255, 0.835294, 1)`` :ref:`🔗` +**PAPAYA_WHIP** = ``Color(1, 0.9372549, 0.8352941, 1)`` :ref:`🔗` Papaya whip color. @@ -1069,7 +1071,7 @@ Papaya whip color. .. rst-class:: classref-constant -**PEACH_PUFF** = ``Color(1, 0.854902, 0.72549, 1)`` :ref:`🔗` +**PEACH_PUFF** = ``Color(1, 0.85490197, 0.7254902, 1)`` :ref:`🔗` Peach puff color. @@ -1077,7 +1079,7 @@ Peach puff color. .. rst-class:: classref-constant -**PERU** = ``Color(0.803922, 0.521569, 0.247059, 1)`` :ref:`🔗` +**PERU** = ``Color(0.8039216, 0.52156866, 0.24705882, 1)`` :ref:`🔗` Peru color. @@ -1085,7 +1087,7 @@ Peru color. .. rst-class:: classref-constant -**PINK** = ``Color(1, 0.752941, 0.796078, 1)`` :ref:`🔗` +**PINK** = ``Color(1, 0.7529412, 0.79607844, 1)`` :ref:`🔗` Pink color. @@ -1093,7 +1095,7 @@ Pink color. .. rst-class:: classref-constant -**PLUM** = ``Color(0.866667, 0.627451, 0.866667, 1)`` :ref:`🔗` +**PLUM** = ``Color(0.8666667, 0.627451, 0.8666667, 1)`` :ref:`🔗` Plum color. @@ -1101,7 +1103,7 @@ Plum color. .. rst-class:: classref-constant -**POWDER_BLUE** = ``Color(0.690196, 0.878431, 0.901961, 1)`` :ref:`🔗` +**POWDER_BLUE** = ``Color(0.6901961, 0.8784314, 0.9019608, 1)`` :ref:`🔗` Powder blue color. @@ -1109,7 +1111,7 @@ Powder blue color. .. rst-class:: classref-constant -**PURPLE** = ``Color(0.627451, 0.12549, 0.941176, 1)`` :ref:`🔗` +**PURPLE** = ``Color(0.627451, 0.1254902, 0.9411765, 1)`` :ref:`🔗` Purple color. @@ -1133,7 +1135,7 @@ Red color. .. rst-class:: classref-constant -**ROSY_BROWN** = ``Color(0.737255, 0.560784, 0.560784, 1)`` :ref:`🔗` +**ROSY_BROWN** = ``Color(0.7372549, 0.56078434, 0.56078434, 1)`` :ref:`🔗` Rosy brown color. @@ -1141,7 +1143,7 @@ Rosy brown color. .. rst-class:: classref-constant -**ROYAL_BLUE** = ``Color(0.254902, 0.411765, 0.882353, 1)`` :ref:`🔗` +**ROYAL_BLUE** = ``Color(0.25490198, 0.4117647, 0.88235295, 1)`` :ref:`🔗` Royal blue color. @@ -1149,7 +1151,7 @@ Royal blue color. .. rst-class:: classref-constant -**SADDLE_BROWN** = ``Color(0.545098, 0.270588, 0.0745098, 1)`` :ref:`🔗` +**SADDLE_BROWN** = ``Color(0.54509807, 0.27058825, 0.07450981, 1)`` :ref:`🔗` Saddle brown color. @@ -1157,7 +1159,7 @@ Saddle brown color. .. rst-class:: classref-constant -**SALMON** = ``Color(0.980392, 0.501961, 0.447059, 1)`` :ref:`🔗` +**SALMON** = ``Color(0.98039216, 0.5019608, 0.44705883, 1)`` :ref:`🔗` Salmon color. @@ -1165,7 +1167,7 @@ Salmon color. .. rst-class:: classref-constant -**SANDY_BROWN** = ``Color(0.956863, 0.643137, 0.376471, 1)`` :ref:`🔗` +**SANDY_BROWN** = ``Color(0.95686275, 0.6431373, 0.3764706, 1)`` :ref:`🔗` Sandy brown color. @@ -1173,7 +1175,7 @@ Sandy brown color. .. rst-class:: classref-constant -**SEA_GREEN** = ``Color(0.180392, 0.545098, 0.341176, 1)`` :ref:`🔗` +**SEA_GREEN** = ``Color(0.18039216, 0.54509807, 0.34117648, 1)`` :ref:`🔗` Sea green color. @@ -1181,7 +1183,7 @@ Sea green color. .. rst-class:: classref-constant -**SEASHELL** = ``Color(1, 0.960784, 0.933333, 1)`` :ref:`🔗` +**SEASHELL** = ``Color(1, 0.9607843, 0.93333334, 1)`` :ref:`🔗` Seashell color. @@ -1189,7 +1191,7 @@ Seashell color. .. rst-class:: classref-constant -**SIENNA** = ``Color(0.627451, 0.321569, 0.176471, 1)`` :ref:`🔗` +**SIENNA** = ``Color(0.627451, 0.32156864, 0.1764706, 1)`` :ref:`🔗` Sienna color. @@ -1197,7 +1199,7 @@ Sienna color. .. rst-class:: classref-constant -**SILVER** = ``Color(0.752941, 0.752941, 0.752941, 1)`` :ref:`🔗` +**SILVER** = ``Color(0.7529412, 0.7529412, 0.7529412, 1)`` :ref:`🔗` Silver color. @@ -1205,7 +1207,7 @@ Silver color. .. rst-class:: classref-constant -**SKY_BLUE** = ``Color(0.529412, 0.807843, 0.921569, 1)`` :ref:`🔗` +**SKY_BLUE** = ``Color(0.5294118, 0.80784315, 0.92156863, 1)`` :ref:`🔗` Sky blue color. @@ -1213,7 +1215,7 @@ Sky blue color. .. rst-class:: classref-constant -**SLATE_BLUE** = ``Color(0.415686, 0.352941, 0.803922, 1)`` :ref:`🔗` +**SLATE_BLUE** = ``Color(0.41568628, 0.3529412, 0.8039216, 1)`` :ref:`🔗` Slate blue color. @@ -1221,7 +1223,7 @@ Slate blue color. .. rst-class:: classref-constant -**SLATE_GRAY** = ``Color(0.439216, 0.501961, 0.564706, 1)`` :ref:`🔗` +**SLATE_GRAY** = ``Color(0.4392157, 0.5019608, 0.5647059, 1)`` :ref:`🔗` Slate gray color. @@ -1229,7 +1231,7 @@ Slate gray color. .. rst-class:: classref-constant -**SNOW** = ``Color(1, 0.980392, 0.980392, 1)`` :ref:`🔗` +**SNOW** = ``Color(1, 0.98039216, 0.98039216, 1)`` :ref:`🔗` Snow color. @@ -1237,7 +1239,7 @@ Snow color. .. rst-class:: classref-constant -**SPRING_GREEN** = ``Color(0, 1, 0.498039, 1)`` :ref:`🔗` +**SPRING_GREEN** = ``Color(0, 1, 0.49803922, 1)`` :ref:`🔗` Spring green color. @@ -1245,7 +1247,7 @@ Spring green color. .. rst-class:: classref-constant -**STEEL_BLUE** = ``Color(0.27451, 0.509804, 0.705882, 1)`` :ref:`🔗` +**STEEL_BLUE** = ``Color(0.27450982, 0.50980395, 0.7058824, 1)`` :ref:`🔗` Steel blue color. @@ -1253,7 +1255,7 @@ Steel blue color. .. rst-class:: classref-constant -**TAN** = ``Color(0.823529, 0.705882, 0.54902, 1)`` :ref:`🔗` +**TAN** = ``Color(0.8235294, 0.7058824, 0.54901963, 1)`` :ref:`🔗` Tan color. @@ -1261,7 +1263,7 @@ Tan color. .. rst-class:: classref-constant -**TEAL** = ``Color(0, 0.501961, 0.501961, 1)`` :ref:`🔗` +**TEAL** = ``Color(0, 0.5019608, 0.5019608, 1)`` :ref:`🔗` Teal color. @@ -1269,7 +1271,7 @@ Teal color. .. rst-class:: classref-constant -**THISTLE** = ``Color(0.847059, 0.74902, 0.847059, 1)`` :ref:`🔗` +**THISTLE** = ``Color(0.84705883, 0.7490196, 0.84705883, 1)`` :ref:`🔗` Thistle color. @@ -1277,7 +1279,7 @@ Thistle color. .. rst-class:: classref-constant -**TOMATO** = ``Color(1, 0.388235, 0.278431, 1)`` :ref:`🔗` +**TOMATO** = ``Color(1, 0.3882353, 0.2784314, 1)`` :ref:`🔗` Tomato color. @@ -1293,7 +1295,7 @@ Transparent color (white with zero alpha). .. rst-class:: classref-constant -**TURQUOISE** = ``Color(0.25098, 0.878431, 0.815686, 1)`` :ref:`🔗` +**TURQUOISE** = ``Color(0.2509804, 0.8784314, 0.8156863, 1)`` :ref:`🔗` Turquoise color. @@ -1301,7 +1303,7 @@ Turquoise color. .. rst-class:: classref-constant -**VIOLET** = ``Color(0.933333, 0.509804, 0.933333, 1)`` :ref:`🔗` +**VIOLET** = ``Color(0.93333334, 0.50980395, 0.93333334, 1)`` :ref:`🔗` Violet color. @@ -1309,7 +1311,7 @@ Violet color. .. rst-class:: classref-constant -**WEB_GRAY** = ``Color(0.501961, 0.501961, 0.501961, 1)`` :ref:`🔗` +**WEB_GRAY** = ``Color(0.5019608, 0.5019608, 0.5019608, 1)`` :ref:`🔗` Web gray color. @@ -1317,7 +1319,7 @@ Web gray color. .. rst-class:: classref-constant -**WEB_GREEN** = ``Color(0, 0.501961, 0, 1)`` :ref:`🔗` +**WEB_GREEN** = ``Color(0, 0.5019608, 0, 1)`` :ref:`🔗` Web green color. @@ -1325,7 +1327,7 @@ Web green color. .. rst-class:: classref-constant -**WEB_MAROON** = ``Color(0.501961, 0, 0, 1)`` :ref:`🔗` +**WEB_MAROON** = ``Color(0.5019608, 0, 0, 1)`` :ref:`🔗` Web maroon color. @@ -1333,7 +1335,7 @@ Web maroon color. .. rst-class:: classref-constant -**WEB_PURPLE** = ``Color(0.501961, 0, 0.501961, 1)`` :ref:`🔗` +**WEB_PURPLE** = ``Color(0.5019608, 0, 0.5019608, 1)`` :ref:`🔗` Web purple color. @@ -1341,7 +1343,7 @@ Web purple color. .. rst-class:: classref-constant -**WHEAT** = ``Color(0.960784, 0.870588, 0.701961, 1)`` :ref:`🔗` +**WHEAT** = ``Color(0.9607843, 0.87058824, 0.7019608, 1)`` :ref:`🔗` Wheat color. @@ -1357,7 +1359,7 @@ White color. .. rst-class:: classref-constant -**WHITE_SMOKE** = ``Color(0.960784, 0.960784, 0.960784, 1)`` :ref:`🔗` +**WHITE_SMOKE** = ``Color(0.9607843, 0.9607843, 0.9607843, 1)`` :ref:`🔗` White smoke color. @@ -1373,7 +1375,7 @@ Yellow color. .. rst-class:: classref-constant -**YELLOW_GREEN** = ``Color(0.603922, 0.803922, 0.196078, 1)`` :ref:`🔗` +**YELLOW_GREEN** = ``Color(0.6039216, 0.8039216, 0.19607843, 1)`` :ref:`🔗` Yellow green color. @@ -1394,6 +1396,8 @@ Property Descriptions The color's alpha component, typically on the range of 0 to 1. A value of 0 means that the color is fully transparent. A value of 1 means that the color is fully opaque. +\ **Note:** The alpha channel is always stored with linear encoding, regardless of the color space of the other color channels. The :ref:`linear_to_srgb()` and :ref:`srgb_to_linear()` methods do not affect the alpha channel. + .. rst-class:: classref-item-separator ---- @@ -1950,7 +1954,7 @@ Returns ``true`` if ``color`` is a valid HTML hexadecimal color string. The stri Color.html_is_valid("#55AAFF20") # Returns true Color.html_is_valid("55AAFF") # Returns true Color.html_is_valid("#F2C") # Returns true - + Color.html_is_valid("#AABBC") # Returns false Color.html_is_valid("#55aaFF5") # Returns false @@ -1960,7 +1964,7 @@ Returns ``true`` if ``color`` is a valid HTML hexadecimal color string. The stri Color.HtmlIsValid("#55AAFF20"); // Returns true Color.HtmlIsValid("55AAFF"); // Returns true Color.HtmlIsValid("#F2C"); // Returns true - + Color.HtmlIsValid("#AABBC"); // Returns false Color.HtmlIsValid("#55aaFF5"); // Returns false @@ -2026,7 +2030,7 @@ Returns the linear interpolation between this color's components and ``to``'s co var red = Color(1.0, 0.0, 0.0) var aqua = Color(0.0, 1.0, 0.8) - + red.lerp(aqua, 0.2) # Returns Color(0.8, 0.2, 0.16) red.lerp(aqua, 0.5) # Returns Color(0.5, 0.5, 0.4) red.lerp(aqua, 1.0) # Returns Color(0.0, 1.0, 0.8) @@ -2035,7 +2039,7 @@ Returns the linear interpolation between this color's components and ``to``'s co var red = new Color(1.0f, 0.0f, 0.0f); var aqua = new Color(0.0f, 1.0f, 0.8f); - + red.Lerp(aqua, 0.2f); // Returns Color(0.8f, 0.2f, 0.16f) red.Lerp(aqua, 0.5f); // Returns Color(0.5f, 0.5f, 0.4f) red.Lerp(aqua, 1.0f); // Returns Color(0.0f, 1.0f, 0.8f) @@ -2081,6 +2085,8 @@ Returns a new color resulting from making this color lighter by the specified `` Returns the color converted to the `sRGB `__ color space. This method assumes the original color is in the linear color space. See also :ref:`srgb_to_linear()` which performs the opposite operation. +\ **Note:** The color's :ref:`a`\ lpha channel is not affected. The alpha channel is always stored with linear encoding, regardless of the color space of the other color channels. + .. rst-class:: classref-item-separator ---- @@ -2093,6 +2099,8 @@ Returns the color converted to the `sRGB `__ Returns the color converted to the linear color space. This method assumes the original color already is in the sRGB color space. See also :ref:`linear_to_srgb()` which performs the opposite operation. +\ **Note:** The color's :ref:`a`\ lpha channel is not affected. The alpha channel is always stored with linear encoding, regardless of the color space of the other color channels. + .. rst-class:: classref-item-separator ---- @@ -2452,6 +2460,7 @@ Returns the same value as if the ``+`` was not there. Unary ``+`` does nothing, Inverts the given color. This is equivalent to ``Color.WHITE - c`` or ``Color(1 - c.r, 1 - c.g, 1 - c.b, 1 - c.a)``. Unlike with :ref:`inverted()`, the :ref:`a` component is inverted, too. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_colorpalette.rst b/classes/class_colorpalette.rst index 8a72dc72e..fcffacd9b 100644 --- a/classes/class_colorpalette.rst +++ b/classes/class_colorpalette.rst @@ -58,6 +58,7 @@ A :ref:`PackedColorArray` containing the colors in the p **Note:** The returned array is *copied* and any changes to it will not update the original property value. See :ref:`PackedColorArray` for more details. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_colorpicker.rst b/classes/class_colorpicker.rst index 632d9e11c..d85c66270 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`` | @@ -92,49 +94,59 @@ Theme Properties .. table:: :widths: auto - +-----------------------------------+----------------------------------------------------------------------------------------+---------+ - | :ref:`int` | :ref:`center_slider_grabbers` | ``1`` | - +-----------------------------------+----------------------------------------------------------------------------------------+---------+ - | :ref:`int` | :ref:`h_width` | ``30`` | - +-----------------------------------+----------------------------------------------------------------------------------------+---------+ - | :ref:`int` | :ref:`label_width` | ``10`` | - +-----------------------------------+----------------------------------------------------------------------------------------+---------+ - | :ref:`int` | :ref:`margin` | ``4`` | - +-----------------------------------+----------------------------------------------------------------------------------------+---------+ - | :ref:`int` | :ref:`sv_height` | ``256`` | - +-----------------------------------+----------------------------------------------------------------------------------------+---------+ - | :ref:`int` | :ref:`sv_width` | ``256`` | - +-----------------------------------+----------------------------------------------------------------------------------------+---------+ - | :ref:`Texture2D` | :ref:`add_preset` | | - +-----------------------------------+----------------------------------------------------------------------------------------+---------+ - | :ref:`Texture2D` | :ref:`bar_arrow` | | - +-----------------------------------+----------------------------------------------------------------------------------------+---------+ - | :ref:`Texture2D` | :ref:`color_hue` | | - +-----------------------------------+----------------------------------------------------------------------------------------+---------+ - | :ref:`Texture2D` | :ref:`expanded_arrow` | | - +-----------------------------------+----------------------------------------------------------------------------------------+---------+ - | :ref:`Texture2D` | :ref:`folded_arrow` | | - +-----------------------------------+----------------------------------------------------------------------------------------+---------+ - | :ref:`Texture2D` | :ref:`menu_option` | | - +-----------------------------------+----------------------------------------------------------------------------------------+---------+ - | :ref:`Texture2D` | :ref:`overbright_indicator` | | - +-----------------------------------+----------------------------------------------------------------------------------------+---------+ - | :ref:`Texture2D` | :ref:`picker_cursor` | | - +-----------------------------------+----------------------------------------------------------------------------------------+---------+ - | :ref:`Texture2D` | :ref:`picker_cursor_bg` | | - +-----------------------------------+----------------------------------------------------------------------------------------+---------+ - | :ref:`Texture2D` | :ref:`sample_bg` | | - +-----------------------------------+----------------------------------------------------------------------------------------+---------+ - | :ref:`Texture2D` | :ref:`sample_revert` | | - +-----------------------------------+----------------------------------------------------------------------------------------+---------+ - | :ref:`Texture2D` | :ref:`screen_picker` | | - +-----------------------------------+----------------------------------------------------------------------------------------+---------+ - | :ref:`Texture2D` | :ref:`shape_circle` | | - +-----------------------------------+----------------------------------------------------------------------------------------+---------+ - | :ref:`Texture2D` | :ref:`shape_rect` | | - +-----------------------------------+----------------------------------------------------------------------------------------+---------+ - | :ref:`Texture2D` | :ref:`shape_rect_wheel` | | - +-----------------------------------+----------------------------------------------------------------------------------------+---------+ + +-----------------------------------+---------------------------------------------------------------------------------------------------------+---------------------------+ + | :ref:`Color` | :ref:`focused_not_editing_cursor_color` | ``Color(1, 1, 1, 0.275)`` | + +-----------------------------------+---------------------------------------------------------------------------------------------------------+---------------------------+ + | :ref:`int` | :ref:`center_slider_grabbers` | ``1`` | + +-----------------------------------+---------------------------------------------------------------------------------------------------------+---------------------------+ + | :ref:`int` | :ref:`h_width` | ``30`` | + +-----------------------------------+---------------------------------------------------------------------------------------------------------+---------------------------+ + | :ref:`int` | :ref:`label_width` | ``10`` | + +-----------------------------------+---------------------------------------------------------------------------------------------------------+---------------------------+ + | :ref:`int` | :ref:`margin` | ``4`` | + +-----------------------------------+---------------------------------------------------------------------------------------------------------+---------------------------+ + | :ref:`int` | :ref:`sv_height` | ``256`` | + +-----------------------------------+---------------------------------------------------------------------------------------------------------+---------------------------+ + | :ref:`int` | :ref:`sv_width` | ``256`` | + +-----------------------------------+---------------------------------------------------------------------------------------------------------+---------------------------+ + | :ref:`Texture2D` | :ref:`add_preset` | | + +-----------------------------------+---------------------------------------------------------------------------------------------------------+---------------------------+ + | :ref:`Texture2D` | :ref:`bar_arrow` | | + +-----------------------------------+---------------------------------------------------------------------------------------------------------+---------------------------+ + | :ref:`Texture2D` | :ref:`color_hue` | | + +-----------------------------------+---------------------------------------------------------------------------------------------------------+---------------------------+ + | :ref:`Texture2D` | :ref:`color_script` | | + +-----------------------------------+---------------------------------------------------------------------------------------------------------+---------------------------+ + | :ref:`Texture2D` | :ref:`expanded_arrow` | | + +-----------------------------------+---------------------------------------------------------------------------------------------------------+---------------------------+ + | :ref:`Texture2D` | :ref:`folded_arrow` | | + +-----------------------------------+---------------------------------------------------------------------------------------------------------+---------------------------+ + | :ref:`Texture2D` | :ref:`menu_option` | | + +-----------------------------------+---------------------------------------------------------------------------------------------------------+---------------------------+ + | :ref:`Texture2D` | :ref:`overbright_indicator` | | + +-----------------------------------+---------------------------------------------------------------------------------------------------------+---------------------------+ + | :ref:`Texture2D` | :ref:`picker_cursor` | | + +-----------------------------------+---------------------------------------------------------------------------------------------------------+---------------------------+ + | :ref:`Texture2D` | :ref:`picker_cursor_bg` | | + +-----------------------------------+---------------------------------------------------------------------------------------------------------+---------------------------+ + | :ref:`Texture2D` | :ref:`sample_bg` | | + +-----------------------------------+---------------------------------------------------------------------------------------------------------+---------------------------+ + | :ref:`Texture2D` | :ref:`sample_revert` | | + +-----------------------------------+---------------------------------------------------------------------------------------------------------+---------------------------+ + | :ref:`Texture2D` | :ref:`screen_picker` | | + +-----------------------------------+---------------------------------------------------------------------------------------------------------+---------------------------+ + | :ref:`Texture2D` | :ref:`shape_circle` | | + +-----------------------------------+---------------------------------------------------------------------------------------------------------+---------------------------+ + | :ref:`Texture2D` | :ref:`shape_rect` | | + +-----------------------------------+---------------------------------------------------------------------------------------------------------+---------------------------+ + | :ref:`Texture2D` | :ref:`shape_rect_wheel` | | + +-----------------------------------+---------------------------------------------------------------------------------------------------------+---------------------------+ + | :ref:`StyleBox` | :ref:`picker_focus_circle` | | + +-----------------------------------+---------------------------------------------------------------------------------------------------------+---------------------------+ + | :ref:`StyleBox` | :ref:`picker_focus_rectangle` | | + +-----------------------------------+---------------------------------------------------------------------------------------------------------+---------------------------+ + | :ref:`StyleBox` | :ref:`sample_focus` | | + +-----------------------------------+---------------------------------------------------------------------------------------------------------+---------------------------+ .. rst-class:: classref-section-separator @@ -198,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: @@ -214,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: @@ -278,6 +300,22 @@ HSL OK Color Model circle color space. The color space shape and the shape select button are hidden. Can't be selected from the shapes popup. +.. _class_ColorPicker_constant_SHAPE_OK_HS_RECTANGLE: + +.. rst-class:: classref-enumeration-constant + +:ref:`PickerShapeType` **SHAPE_OK_HS_RECTANGLE** = ``5`` + +OKHSL Color Model rectangle with constant lightness. + +.. _class_ColorPicker_constant_SHAPE_OK_HL_RECTANGLE: + +.. rst-class:: classref-enumeration-constant + +:ref:`PickerShapeType` **SHAPE_OK_HL_RECTANGLE** = ``6`` + +OKHSL Color Model rectangle with constant saturation. + .. rst-class:: classref-section-separator ---- @@ -332,7 +370,7 @@ The currently selected color. - |void| **set_color_mode**\ (\ value\: :ref:`ColorModeType`\ ) - :ref:`ColorModeType` **get_color_mode**\ (\ ) -The currently selected color mode. See :ref:`ColorModeType`. +The currently selected color mode. .. rst-class:: classref-item-separator @@ -389,6 +427,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 @@ -417,7 +472,7 @@ If ``true``, the hex color code input field is visible. - |void| **set_picker_shape**\ (\ value\: :ref:`PickerShapeType`\ ) - :ref:`PickerShapeType` **get_picker_shape**\ (\ ) -The shape of the color space view. See :ref:`PickerShapeType`. +The shape of the color space view. .. rst-class:: classref-item-separator @@ -560,6 +615,18 @@ Returns the list of colors in the recent presets of the color picker. Theme Property Descriptions --------------------------- +.. _class_ColorPicker_theme_color_focused_not_editing_cursor_color: + +.. rst-class:: classref-themeproperty + +:ref:`Color` **focused_not_editing_cursor_color** = ``Color(1, 1, 1, 0.275)`` :ref:`🔗` + +Color of rectangle or circle drawn when a picker shape part is focused but not editable via keyboard or joypad. Displayed *over* the picker shape, so a partially transparent color should be used to ensure the picker shape remains visible. + +.. rst-class:: classref-item-separator + +---- + .. _class_ColorPicker_theme_constant_center_slider_grabbers: .. rst-class:: classref-themeproperty @@ -668,6 +735,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 @@ -808,7 +887,44 @@ The icon for rectangular picker shapes. The icon for rectangular wheel picker shapes. +.. rst-class:: classref-item-separator + +---- + +.. _class_ColorPicker_theme_style_picker_focus_circle: + +.. rst-class:: classref-themeproperty + +:ref:`StyleBox` **picker_focus_circle** :ref:`🔗` + +The :ref:`StyleBox` used when the circle-shaped part of the picker is focused. Displayed *over* the picker shape, so a partially transparent :ref:`StyleBox` should be used to ensure the picker shape remains visible. A :ref:`StyleBox` that represents an outline or an underline works well for this purpose. To disable the focus visual effect, assign a :ref:`StyleBoxEmpty` resource. Note that disabling the focus visual effect will harm keyboard/controller navigation usability, so this is not recommended for accessibility reasons. + +.. rst-class:: classref-item-separator + +---- + +.. _class_ColorPicker_theme_style_picker_focus_rectangle: + +.. rst-class:: classref-themeproperty + +:ref:`StyleBox` **picker_focus_rectangle** :ref:`🔗` + +The :ref:`StyleBox` used when the rectangle-shaped part of the picker is focused. Displayed *over* the picker shape, so a partially transparent :ref:`StyleBox` should be used to ensure the picker shape remains visible. A :ref:`StyleBox` that represents an outline or an underline works well for this purpose. To disable the focus visual effect, assign a :ref:`StyleBoxEmpty` resource. Note that disabling the focus visual effect will harm keyboard/controller navigation usability, so this is not recommended for accessibility reasons. + +.. rst-class:: classref-item-separator + +---- + +.. _class_ColorPicker_theme_style_sample_focus: + +.. rst-class:: classref-themeproperty + +:ref:`StyleBox` **sample_focus** :ref:`🔗` + +The :ref:`StyleBox` used for the old color sample part when it is focused. Displayed *over* the sample, so a partially transparent :ref:`StyleBox` should be used to ensure the picker shape remains visible. A :ref:`StyleBox` that represents an outline or an underline works well for this purpose. To disable the focus visual effect, assign a :ref:`StyleBoxEmpty` resource. Note that disabling the focus visual effect will harm keyboard/controller navigation usability, so this is not recommended for accessibility reasons. + .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_colorpickerbutton.rst b/classes/class_colorpickerbutton.rst index 4491271d8..bc8f4e532 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 ---- @@ -207,6 +226,7 @@ Theme Property Descriptions The background of the color preview rect on the button. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_colorrect.rst b/classes/class_colorrect.rst index fcfcb2ef0..aa2994f9b 100644 --- a/classes/class_colorrect.rst +++ b/classes/class_colorrect.rst @@ -63,6 +63,7 @@ Property Descriptions The fill color of the rectangle. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_compositor.rst b/classes/class_compositor.rst index 31533f286..17c99c06e 100644 --- a/classes/class_compositor.rst +++ b/classes/class_compositor.rst @@ -65,6 +65,7 @@ Property Descriptions The custom :ref:`CompositorEffect`\ s that are applied during rendering of viewports using this compositor. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_compositoreffect.rst b/classes/class_compositoreffect.rst index 06ff40bea..8a28c0520 100644 --- a/classes/class_compositoreffect.rst +++ b/classes/class_compositoreffect.rst @@ -312,6 +312,7 @@ Method Descriptions Implement this function with your custom rendering code. ``effect_callback_type`` should always match the effect callback type you've specified in :ref:`effect_callback_type`. ``render_data`` provides access to the rendering state, it is only valid during rendering and should not be stored. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_compressedcubemap.rst b/classes/class_compressedcubemap.rst index 8efe7d06a..499f85aa7 100644 --- a/classes/class_compressedcubemap.rst +++ b/classes/class_compressedcubemap.rst @@ -38,6 +38,7 @@ Using **VRAM Compressed** also improves loading times, as VRAM-compressed textur See :ref:`Cubemap` for a general description of cubemaps. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_compressedcubemaparray.rst b/classes/class_compressedcubemaparray.rst index 71b3fd5fc..59df932dc 100644 --- a/classes/class_compressedcubemaparray.rst +++ b/classes/class_compressedcubemaparray.rst @@ -38,6 +38,7 @@ Using **VRAM Compressed** also improves loading times, as VRAM-compressed textur See :ref:`CubemapArray` for a general description of cubemap arrays. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_compressedtexture2d.rst b/classes/class_compressedtexture2d.rst index 85975f8ee..7f8356fff 100644 --- a/classes/class_compressedtexture2d.rst +++ b/classes/class_compressedtexture2d.rst @@ -101,6 +101,7 @@ Method Descriptions Loads the texture from the specified ``path``. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_compressedtexture2darray.rst b/classes/class_compressedtexture2darray.rst index 7ea9a4de6..2142a4ded 100644 --- a/classes/class_compressedtexture2darray.rst +++ b/classes/class_compressedtexture2darray.rst @@ -38,6 +38,7 @@ Using **VRAM Compressed** also improves loading times, as VRAM-compressed textur See :ref:`Texture2DArray` for a general description of texture arrays. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_compressedtexture3d.rst b/classes/class_compressedtexture3d.rst index 304660acf..32c06648e 100644 --- a/classes/class_compressedtexture3d.rst +++ b/classes/class_compressedtexture3d.rst @@ -89,6 +89,7 @@ Method Descriptions Loads the texture from the specified ``path``. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_compressedtexturelayered.rst b/classes/class_compressedtexturelayered.rst index 992116fb0..463666444 100644 --- a/classes/class_compressedtexturelayered.rst +++ b/classes/class_compressedtexturelayered.rst @@ -87,6 +87,7 @@ Method Descriptions Loads the texture at ``path``. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_concavepolygonshape2d.rst b/classes/class_concavepolygonshape2d.rst index e319eb403..354a22c88 100644 --- a/classes/class_concavepolygonshape2d.rst +++ b/classes/class_concavepolygonshape2d.rst @@ -66,6 +66,7 @@ The array of points that make up the **ConcavePolygonShape2D**'s line segments. **Note:** The returned array is *copied* and any changes to it will not update the original property value. See :ref:`PackedVector2Array` for more details. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_concavepolygonshape3d.rst b/classes/class_concavepolygonshape3d.rst index c5ac1eecf..e4d871439 100644 --- a/classes/class_concavepolygonshape3d.rst +++ b/classes/class_concavepolygonshape3d.rst @@ -114,6 +114,7 @@ Returns the faces of the trimesh shape as an array of vertices. The array (of le Sets the faces of the trimesh shape from an array of vertices. The ``faces`` array should be composed of triples such that each triple of vertices defines a triangle. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_conetwistjoint3d.rst b/classes/class_conetwistjoint3d.rst index b3b13cb57..044a00bb9 100644 --- a/classes/class_conetwistjoint3d.rst +++ b/classes/class_conetwistjoint3d.rst @@ -29,17 +29,17 @@ Properties .. table:: :widths: auto - +---------------------------+---------------------------------------------------------------+--------------+ - | :ref:`float` | :ref:`bias` | ``0.3`` | - +---------------------------+---------------------------------------------------------------+--------------+ - | :ref:`float` | :ref:`relaxation` | ``1.0`` | - +---------------------------+---------------------------------------------------------------+--------------+ - | :ref:`float` | :ref:`softness` | ``0.8`` | - +---------------------------+---------------------------------------------------------------+--------------+ - | :ref:`float` | :ref:`swing_span` | ``0.785398`` | - +---------------------------+---------------------------------------------------------------+--------------+ - | :ref:`float` | :ref:`twist_span` | ``3.14159`` | - +---------------------------+---------------------------------------------------------------+--------------+ + +---------------------------+---------------------------------------------------------------+---------------+ + | :ref:`float` | :ref:`bias` | ``0.3`` | + +---------------------------+---------------------------------------------------------------+---------------+ + | :ref:`float` | :ref:`relaxation` | ``1.0`` | + +---------------------------+---------------------------------------------------------------+---------------+ + | :ref:`float` | :ref:`softness` | ``0.8`` | + +---------------------------+---------------------------------------------------------------+---------------+ + | :ref:`float` | :ref:`swing_span` | ``0.7853982`` | + +---------------------------+---------------------------------------------------------------+---------------+ + | :ref:`float` | :ref:`twist_span` | ``3.1415927`` | + +---------------------------+---------------------------------------------------------------+---------------+ .. rst-class:: classref-reftable-group @@ -194,7 +194,7 @@ The ease with which the joint starts to twist. If it's too low, it takes more fo .. rst-class:: classref-property -:ref:`float` **swing_span** = ``0.785398`` :ref:`🔗` +:ref:`float` **swing_span** = ``0.7853982`` :ref:`🔗` .. rst-class:: classref-property-setget @@ -217,7 +217,7 @@ If below 0.05, this behavior is locked. .. rst-class:: classref-property -:ref:`float` **twist_span** = ``3.14159`` :ref:`🔗` +:ref:`float` **twist_span** = ``3.1415927`` :ref:`🔗` .. rst-class:: classref-property-setget @@ -258,6 +258,7 @@ Returns the value of the specified parameter. Sets the value of the specified parameter. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_configfile.rst b/classes/class_configfile.rst index be80c75a6..5925b35cc 100644 --- a/classes/class_configfile.rst +++ b/classes/class_configfile.rst @@ -39,13 +39,13 @@ The following example shows how to create a simple **ConfigFile** and save it on # Create new ConfigFile object. var config = ConfigFile.new() - + # Store some values. config.set_value("Player1", "player_name", "Steve") config.set_value("Player1", "best_score", 10) config.set_value("Player2", "player_name", "V3geta") config.set_value("Player2", "best_score", 9001) - + # Save it to a file (overwrite if already exists). config.save("user://scores.cfg") @@ -53,13 +53,13 @@ The following example shows how to create a simple **ConfigFile** and save it on // Create new ConfigFile object. var config = new ConfigFile(); - + // Store some values. config.SetValue("Player1", "player_name", "Steve"); config.SetValue("Player1", "best_score", 10); config.SetValue("Player2", "player_name", "V3geta"); config.SetValue("Player2", "best_score", 9001); - + // Save it to a file (overwrite if already exists). config.Save("user://scores.cfg"); @@ -74,14 +74,14 @@ This example shows how the above file could be loaded: var score_data = {} var config = ConfigFile.new() - + # Load data from a file. var err = config.load("user://scores.cfg") - + # If the file didn't load, ignore it. if err != OK: return - + # Iterate over all sections. for player in config.get_sections(): # Fetch the data for each section. @@ -93,16 +93,16 @@ This example shows how the above file could be loaded: var score_data = new Godot.Collections.Dictionary(); var config = new ConfigFile(); - + // Load data from a file. Error err = config.Load("user://scores.cfg"); - + // If the file didn't load, ignore it. if (err != Error.Ok) { return; } - + // Iterate over all sections. foreach (String player in config.GetSections()) { @@ -390,6 +390,7 @@ Returns :ref:`@GlobalScope.OK` on success, or on Assigns a value to the specified key of the specified section. If either the section or the key do not exist, they are created. Passing a ``null`` value deletes the specified key if it exists, and deletes the section if it ends up empty once the key has been removed. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_confirmationdialog.rst b/classes/class_confirmationdialog.rst index 9e47bbe24..cc06c41a2 100644 --- a/classes/class_confirmationdialog.rst +++ b/classes/class_confirmationdialog.rst @@ -110,6 +110,7 @@ Returns the cancel button. \ **Warning:** This is a required internal node, removing and freeing it may cause a crash. If you wish to hide it or any of its children, use their :ref:`CanvasItem.visible` property. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_container.rst b/classes/class_container.rst index fedccd936..7aa4d8353 100644 --- a/classes/class_container.rst +++ b/classes/class_container.rst @@ -12,7 +12,7 @@ Container **Inherits:** :ref:`Control` **<** :ref:`CanvasItem` **<** :ref:`Node` **<** :ref:`Object` -**Inherited By:** :ref:`AspectRatioContainer`, :ref:`BoxContainer`, :ref:`CenterContainer`, :ref:`EditorProperty`, :ref:`FlowContainer`, :ref:`GraphElement`, :ref:`GridContainer`, :ref:`MarginContainer`, :ref:`PanelContainer`, :ref:`ScrollContainer`, :ref:`SplitContainer`, :ref:`SubViewportContainer`, :ref:`TabContainer` +**Inherited By:** :ref:`AspectRatioContainer`, :ref:`BoxContainer`, :ref:`CenterContainer`, :ref:`EditorProperty`, :ref:`FlowContainer`, :ref:`FoldableContainer`, :ref:`GraphElement`, :ref:`GridContainer`, :ref:`MarginContainer`, :ref:`PanelContainer`, :ref:`ScrollContainer`, :ref:`SplitContainer`, :ref:`SubViewportContainer`, :ref:`TabContainer` Base class for all GUI containers. @@ -172,6 +172,7 @@ Fit a child control in a given rect. This is mainly a helper for creating custom Queue resort of the contained children. This is called automatically anyway, but can be called upon request. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_control.rst b/classes/class_control.rst index 8ea934ec2..e4ca9c911 100644 --- a/classes/class_control.rst +++ b/classes/class_control.rst @@ -66,89 +66,107 @@ Properties .. table:: :widths: auto - +---------------------------------------------------------------------+----------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+ - | :ref:`float` | :ref:`anchor_bottom` | ``0.0`` | - +---------------------------------------------------------------------+----------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+ - | :ref:`float` | :ref:`anchor_left` | ``0.0`` | - +---------------------------------------------------------------------+----------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+ - | :ref:`float` | :ref:`anchor_right` | ``0.0`` | - +---------------------------------------------------------------------+----------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+ - | :ref:`float` | :ref:`anchor_top` | ``0.0`` | - +---------------------------------------------------------------------+----------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`auto_translate` | | - +---------------------------------------------------------------------+----------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`clip_contents` | ``false`` | - +---------------------------------------------------------------------+----------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+ - | :ref:`Vector2` | :ref:`custom_minimum_size` | ``Vector2(0, 0)`` | - +---------------------------------------------------------------------+----------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+ - | :ref:`FocusMode` | :ref:`focus_mode` | ``0`` | - +---------------------------------------------------------------------+----------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+ - | :ref:`NodePath` | :ref:`focus_neighbor_bottom` | ``NodePath("")`` | - +---------------------------------------------------------------------+----------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+ - | :ref:`NodePath` | :ref:`focus_neighbor_left` | ``NodePath("")`` | - +---------------------------------------------------------------------+----------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+ - | :ref:`NodePath` | :ref:`focus_neighbor_right` | ``NodePath("")`` | - +---------------------------------------------------------------------+----------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+ - | :ref:`NodePath` | :ref:`focus_neighbor_top` | ``NodePath("")`` | - +---------------------------------------------------------------------+----------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+ - | :ref:`NodePath` | :ref:`focus_next` | ``NodePath("")`` | - +---------------------------------------------------------------------+----------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+ - | :ref:`NodePath` | :ref:`focus_previous` | ``NodePath("")`` | - +---------------------------------------------------------------------+----------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+ - | :ref:`Vector2` | :ref:`global_position` | | - +---------------------------------------------------------------------+----------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+ - | :ref:`GrowDirection` | :ref:`grow_horizontal` | ``1`` | - +---------------------------------------------------------------------+----------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+ - | :ref:`GrowDirection` | :ref:`grow_vertical` | ``1`` | - +---------------------------------------------------------------------+----------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+ - | :ref:`LayoutDirection` | :ref:`layout_direction` | ``0`` | - +---------------------------------------------------------------------+----------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`localize_numeral_system` | ``true`` | - +---------------------------------------------------------------------+----------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+ - | :ref:`CursorShape` | :ref:`mouse_default_cursor_shape` | ``0`` | - +---------------------------------------------------------------------+----------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+ - | :ref:`MouseFilter` | :ref:`mouse_filter` | ``0`` | - +---------------------------------------------------------------------+----------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`mouse_force_pass_scroll_events` | ``true`` | - +---------------------------------------------------------------------+----------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+ - | :ref:`float` | :ref:`offset_bottom` | ``0.0`` | - +---------------------------------------------------------------------+----------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+ - | :ref:`float` | :ref:`offset_left` | ``0.0`` | - +---------------------------------------------------------------------+----------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+ - | :ref:`float` | :ref:`offset_right` | ``0.0`` | - +---------------------------------------------------------------------+----------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+ - | :ref:`float` | :ref:`offset_top` | ``0.0`` | - +---------------------------------------------------------------------+----------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+ - | :ref:`PhysicsInterpolationMode` | physics_interpolation_mode | ``2`` (overrides :ref:`Node`) | - +---------------------------------------------------------------------+----------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+ - | :ref:`Vector2` | :ref:`pivot_offset` | ``Vector2(0, 0)`` | - +---------------------------------------------------------------------+----------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+ - | :ref:`Vector2` | :ref:`position` | ``Vector2(0, 0)`` | - +---------------------------------------------------------------------+----------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+ - | :ref:`float` | :ref:`rotation` | ``0.0`` | - +---------------------------------------------------------------------+----------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+ - | :ref:`float` | :ref:`rotation_degrees` | | - +---------------------------------------------------------------------+----------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+ - | :ref:`Vector2` | :ref:`scale` | ``Vector2(1, 1)`` | - +---------------------------------------------------------------------+----------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+ - | :ref:`Node` | :ref:`shortcut_context` | | - +---------------------------------------------------------------------+----------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+ - | :ref:`Vector2` | :ref:`size` | ``Vector2(0, 0)`` | - +---------------------------------------------------------------------+----------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+ - | |bitfield|\[:ref:`SizeFlags`\] | :ref:`size_flags_horizontal` | ``1`` | - +---------------------------------------------------------------------+----------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+ - | :ref:`float` | :ref:`size_flags_stretch_ratio` | ``1.0`` | - +---------------------------------------------------------------------+----------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+ - | |bitfield|\[:ref:`SizeFlags`\] | :ref:`size_flags_vertical` | ``1`` | - +---------------------------------------------------------------------+----------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+ - | :ref:`Theme` | :ref:`theme` | | - +---------------------------------------------------------------------+----------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+ - | :ref:`StringName` | :ref:`theme_type_variation` | ``&""`` | - +---------------------------------------------------------------------+----------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+ - | :ref:`AutoTranslateMode` | :ref:`tooltip_auto_translate_mode` | ``0`` | - +---------------------------------------------------------------------+----------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+ - | :ref:`String` | :ref:`tooltip_text` | ``""`` | - +---------------------------------------------------------------------+----------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+ + +------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+ + | :ref:`Array`\[:ref:`NodePath`\] | :ref:`accessibility_controls_nodes` | ``[]`` | + +------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+ + | :ref:`Array`\[:ref:`NodePath`\] | :ref:`accessibility_described_by_nodes` | ``[]`` | + +------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`accessibility_description` | ``""`` | + +------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+ + | :ref:`Array`\[:ref:`NodePath`\] | :ref:`accessibility_flow_to_nodes` | ``[]`` | + +------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+ + | :ref:`Array`\[:ref:`NodePath`\] | :ref:`accessibility_labeled_by_nodes` | ``[]`` | + +------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+ + | :ref:`AccessibilityLiveMode` | :ref:`accessibility_live` | ``0`` | + +------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`accessibility_name` | ``""`` | + +------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`anchor_bottom` | ``0.0`` | + +------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`anchor_left` | ``0.0`` | + +------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`anchor_right` | ``0.0`` | + +------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`anchor_top` | ``0.0`` | + +------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`auto_translate` | | + +------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`clip_contents` | ``false`` | + +------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+ + | :ref:`Vector2` | :ref:`custom_minimum_size` | ``Vector2(0, 0)`` | + +------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+ + | :ref:`FocusBehaviorRecursive` | :ref:`focus_behavior_recursive` | ``0`` | + +------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+ + | :ref:`FocusMode` | :ref:`focus_mode` | ``0`` | + +------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+ + | :ref:`NodePath` | :ref:`focus_neighbor_bottom` | ``NodePath("")`` | + +------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+ + | :ref:`NodePath` | :ref:`focus_neighbor_left` | ``NodePath("")`` | + +------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+ + | :ref:`NodePath` | :ref:`focus_neighbor_right` | ``NodePath("")`` | + +------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+ + | :ref:`NodePath` | :ref:`focus_neighbor_top` | ``NodePath("")`` | + +------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+ + | :ref:`NodePath` | :ref:`focus_next` | ``NodePath("")`` | + +------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+ + | :ref:`NodePath` | :ref:`focus_previous` | ``NodePath("")`` | + +------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+ + | :ref:`Vector2` | :ref:`global_position` | | + +------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+ + | :ref:`GrowDirection` | :ref:`grow_horizontal` | ``1`` | + +------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+ + | :ref:`GrowDirection` | :ref:`grow_vertical` | ``1`` | + +------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+ + | :ref:`LayoutDirection` | :ref:`layout_direction` | ``0`` | + +------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`localize_numeral_system` | ``true`` | + +------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+ + | :ref:`MouseBehaviorRecursive` | :ref:`mouse_behavior_recursive` | ``0`` | + +------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+ + | :ref:`CursorShape` | :ref:`mouse_default_cursor_shape` | ``0`` | + +------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+ + | :ref:`MouseFilter` | :ref:`mouse_filter` | ``0`` | + +------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`mouse_force_pass_scroll_events` | ``true`` | + +------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`offset_bottom` | ``0.0`` | + +------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`offset_left` | ``0.0`` | + +------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`offset_right` | ``0.0`` | + +------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`offset_top` | ``0.0`` | + +------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+ + | :ref:`PhysicsInterpolationMode` | physics_interpolation_mode | ``2`` (overrides :ref:`Node`) | + +------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+ + | :ref:`Vector2` | :ref:`pivot_offset` | ``Vector2(0, 0)`` | + +------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+ + | :ref:`Vector2` | :ref:`position` | ``Vector2(0, 0)`` | + +------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`rotation` | ``0.0`` | + +------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`rotation_degrees` | | + +------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+ + | :ref:`Vector2` | :ref:`scale` | ``Vector2(1, 1)`` | + +------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+ + | :ref:`Node` | :ref:`shortcut_context` | | + +------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+ + | :ref:`Vector2` | :ref:`size` | ``Vector2(0, 0)`` | + +------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+ + | |bitfield|\[:ref:`SizeFlags`\] | :ref:`size_flags_horizontal` | ``1`` | + +------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`size_flags_stretch_ratio` | ``1.0`` | + +------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+ + | |bitfield|\[:ref:`SizeFlags`\] | :ref:`size_flags_vertical` | ``1`` | + +------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+ + | :ref:`Theme` | :ref:`theme` | | + +------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+ + | :ref:`StringName` | :ref:`theme_type_variation` | ``&""`` | + +------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+ + | :ref:`AutoTranslateMode` | :ref:`tooltip_auto_translate_mode` | ``0`` | + +------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`tooltip_text` | ``""`` | + +------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+ .. rst-class:: classref-reftable-group @@ -158,11 +176,15 @@ Methods .. table:: :widths: auto + +--------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`_accessibility_get_contextual_info`\ (\ ) |virtual| |const| | +--------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`_can_drop_data`\ (\ at_position\: :ref:`Vector2`, data\: :ref:`Variant`\ ) |virtual| |const| | +--------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`_drop_data`\ (\ at_position\: :ref:`Vector2`, data\: :ref:`Variant`\ ) |virtual| | +--------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`_get_accessibility_container_name`\ (\ node\: :ref:`Node`\ ) |virtual| |const| | + +--------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`Variant` | :ref:`_get_drag_data`\ (\ at_position\: :ref:`Vector2`\ ) |virtual| | +--------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`Vector2` | :ref:`_get_minimum_size`\ (\ ) |virtual| |const| | @@ -179,6 +201,10 @@ Methods +--------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`accept_event`\ (\ ) | +--------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`accessibility_drag`\ (\ ) | + +--------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`accessibility_drop`\ (\ ) | + +--------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`add_theme_color_override`\ (\ name\: :ref:`StringName`, color\: :ref:`Color`\ ) | +--------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`add_theme_constant_override`\ (\ name\: :ref:`StringName`, constant\: :ref:`int`\ ) | @@ -213,12 +239,16 @@ Methods +--------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`Vector2` | :ref:`get_end`\ (\ ) |const| | +--------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`FocusMode` | :ref:`get_focus_mode_with_override`\ (\ ) |const| | + +--------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`NodePath` | :ref:`get_focus_neighbor`\ (\ side\: :ref:`Side`\ ) |const| | +--------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`Rect2` | :ref:`get_global_rect`\ (\ ) |const| | +--------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`Vector2` | :ref:`get_minimum_size`\ (\ ) |const| | +--------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`MouseFilter` | :ref:`get_mouse_filter_with_override`\ (\ ) |const| | + +--------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`float` | :ref:`get_offset`\ (\ offset\: :ref:`Side`\ ) |const| | +--------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`Vector2` | :ref:`get_parent_area_size`\ (\ ) |const| | @@ -496,6 +526,82 @@ The node can only grab focus on mouse clicks. Use with :ref:`focus_mode`. +.. _class_Control_constant_FOCUS_ACCESSIBILITY: + +.. rst-class:: classref-enumeration-constant + +:ref:`FocusMode` **FOCUS_ACCESSIBILITY** = ``3`` + +The node can grab focus only when screen reader is active. Use with :ref:`focus_mode`. + +.. rst-class:: classref-item-separator + +---- + +.. _enum_Control_FocusBehaviorRecursive: + +.. rst-class:: classref-enumeration + +enum **FocusBehaviorRecursive**: :ref:`🔗` + +.. _class_Control_constant_FOCUS_BEHAVIOR_INHERITED: + +.. rst-class:: classref-enumeration-constant + +:ref:`FocusBehaviorRecursive` **FOCUS_BEHAVIOR_INHERITED** = ``0`` + +Inherits the :ref:`focus_behavior_recursive` from the parent control. If there is no parent control, this is the same as :ref:`FOCUS_BEHAVIOR_ENABLED`. + +.. _class_Control_constant_FOCUS_BEHAVIOR_DISABLED: + +.. rst-class:: classref-enumeration-constant + +:ref:`FocusBehaviorRecursive` **FOCUS_BEHAVIOR_DISABLED** = ``1`` + +Prevents the control from getting focused. :ref:`get_focus_mode_with_override()` will return :ref:`FOCUS_NONE`. + +.. _class_Control_constant_FOCUS_BEHAVIOR_ENABLED: + +.. rst-class:: classref-enumeration-constant + +:ref:`FocusBehaviorRecursive` **FOCUS_BEHAVIOR_ENABLED** = ``2`` + +Allows the control to be focused, depending on the :ref:`focus_mode`. This can be used to ignore the parent's :ref:`focus_behavior_recursive`. :ref:`get_focus_mode_with_override()` will return the :ref:`focus_mode`. + +.. rst-class:: classref-item-separator + +---- + +.. _enum_Control_MouseBehaviorRecursive: + +.. rst-class:: classref-enumeration + +enum **MouseBehaviorRecursive**: :ref:`🔗` + +.. _class_Control_constant_MOUSE_BEHAVIOR_INHERITED: + +.. rst-class:: classref-enumeration-constant + +:ref:`MouseBehaviorRecursive` **MOUSE_BEHAVIOR_INHERITED** = ``0`` + +Inherits the :ref:`mouse_behavior_recursive` from the parent control. If there is no parent control, this is the same as :ref:`MOUSE_BEHAVIOR_ENABLED`. + +.. _class_Control_constant_MOUSE_BEHAVIOR_DISABLED: + +.. rst-class:: classref-enumeration-constant + +:ref:`MouseBehaviorRecursive` **MOUSE_BEHAVIOR_DISABLED** = ``1`` + +Prevents the control from receiving mouse input. :ref:`get_mouse_filter_with_override()` will return :ref:`MOUSE_FILTER_IGNORE`. + +.. _class_Control_constant_MOUSE_BEHAVIOR_ENABLED: + +.. rst-class:: classref-enumeration-constant + +:ref:`MouseBehaviorRecursive` **MOUSE_BEHAVIOR_ENABLED** = ``2`` + +Allows the control to be receive mouse input, depending on the :ref:`mouse_filter`. This can be used to ignore the parent's :ref:`mouse_behavior_recursive`. :ref:`get_mouse_filter_with_override()` will return the :ref:`mouse_filter`. + .. rst-class:: classref-item-separator ---- @@ -1028,7 +1134,7 @@ Right-to-left layout direction. :ref:`LayoutDirection` **LAYOUT_DIRECTION_SYSTEM_LOCALE** = ``4`` -Automatic layout direction, determined from the system locale. Right-to-left layout direction is automatically used for languages that require it such as Arabic and Hebrew, but only if a valid translation file is loaded for the given language.. For all other languages (or if no valid translation file is found by Godot), left-to-right layout direction is used. If using :ref:`TextServerFallback` (:ref:`ProjectSettings.internationalization/rendering/text_driver`), left-to-right layout direction is always used regardless of the language. +Automatic layout direction, determined from the system locale. Right-to-left layout direction is automatically used for languages that require it such as Arabic and Hebrew, but only if a valid translation file is loaded for the given language. For all other languages (or if no valid translation file is found by Godot), left-to-right layout direction is used. If using :ref:`TextServerFallback` (:ref:`ProjectSettings.internationalization/rendering/text_driver`), left-to-right layout direction is always used regardless of the language. .. _class_Control_constant_LAYOUT_DIRECTION_MAX: @@ -1240,6 +1346,125 @@ Sent when the control layout direction is changed from LTR or RTL or vice versa. Property Descriptions --------------------- +.. _class_Control_property_accessibility_controls_nodes: + +.. rst-class:: classref-property + +:ref:`Array`\[:ref:`NodePath`\] **accessibility_controls_nodes** = ``[]`` :ref:`🔗` + +.. rst-class:: classref-property-setget + +- |void| **set_accessibility_controls_nodes**\ (\ value\: :ref:`Array`\[:ref:`NodePath`\]\ ) +- :ref:`Array`\[:ref:`NodePath`\] **get_accessibility_controls_nodes**\ (\ ) + +The paths to the nodes which are controlled by this node. + +.. rst-class:: classref-item-separator + +---- + +.. _class_Control_property_accessibility_described_by_nodes: + +.. rst-class:: classref-property + +:ref:`Array`\[:ref:`NodePath`\] **accessibility_described_by_nodes** = ``[]`` :ref:`🔗` + +.. rst-class:: classref-property-setget + +- |void| **set_accessibility_described_by_nodes**\ (\ value\: :ref:`Array`\[:ref:`NodePath`\]\ ) +- :ref:`Array`\[:ref:`NodePath`\] **get_accessibility_described_by_nodes**\ (\ ) + +The paths to the nodes which are describing this node. + +.. rst-class:: classref-item-separator + +---- + +.. _class_Control_property_accessibility_description: + +.. rst-class:: classref-property + +:ref:`String` **accessibility_description** = ``""`` :ref:`🔗` + +.. rst-class:: classref-property-setget + +- |void| **set_accessibility_description**\ (\ value\: :ref:`String`\ ) +- :ref:`String` **get_accessibility_description**\ (\ ) + +The human-readable node description that is reported to assistive apps. + +.. rst-class:: classref-item-separator + +---- + +.. _class_Control_property_accessibility_flow_to_nodes: + +.. rst-class:: classref-property + +:ref:`Array`\[:ref:`NodePath`\] **accessibility_flow_to_nodes** = ``[]`` :ref:`🔗` + +.. rst-class:: classref-property-setget + +- |void| **set_accessibility_flow_to_nodes**\ (\ value\: :ref:`Array`\[:ref:`NodePath`\]\ ) +- :ref:`Array`\[:ref:`NodePath`\] **get_accessibility_flow_to_nodes**\ (\ ) + +The paths to the nodes which this node flows into. + +.. rst-class:: classref-item-separator + +---- + +.. _class_Control_property_accessibility_labeled_by_nodes: + +.. rst-class:: classref-property + +:ref:`Array`\[:ref:`NodePath`\] **accessibility_labeled_by_nodes** = ``[]`` :ref:`🔗` + +.. rst-class:: classref-property-setget + +- |void| **set_accessibility_labeled_by_nodes**\ (\ value\: :ref:`Array`\[:ref:`NodePath`\]\ ) +- :ref:`Array`\[:ref:`NodePath`\] **get_accessibility_labeled_by_nodes**\ (\ ) + +The paths to the nodes which label this node. + +.. rst-class:: classref-item-separator + +---- + +.. _class_Control_property_accessibility_live: + +.. rst-class:: classref-property + +:ref:`AccessibilityLiveMode` **accessibility_live** = ``0`` :ref:`🔗` + +.. rst-class:: classref-property-setget + +- |void| **set_accessibility_live**\ (\ value\: :ref:`AccessibilityLiveMode`\ ) +- :ref:`AccessibilityLiveMode` **get_accessibility_live**\ (\ ) + +The mode with which a live region updates. A live region is a :ref:`Node` that is updated as a result of an external event when the user's focus may be elsewhere. + +.. rst-class:: classref-item-separator + +---- + +.. _class_Control_property_accessibility_name: + +.. rst-class:: classref-property + +:ref:`String` **accessibility_name** = ``""`` :ref:`🔗` + +.. rst-class:: classref-property-setget + +- |void| **set_accessibility_name**\ (\ value\: :ref:`String`\ ) +- :ref:`String` **get_accessibility_name**\ (\ ) + +The human-readable node name that is reported to assistive apps. + +.. rst-class:: classref-item-separator + +---- + .. _class_Control_property_anchor_bottom: .. rst-class:: classref-property @@ -1315,7 +1540,7 @@ Anchors the top edge of the node to the origin, the center or the end of its par - |void| **set_auto_translate**\ (\ value\: :ref:`bool`\ ) - :ref:`bool` **is_auto_translating**\ (\ ) -**Deprecated:** Use :ref:`Node.auto_translate_mode` instead. +**Deprecated:** Use :ref:`Node.auto_translate_mode` and :ref:`Node.can_auto_translate()` instead. Toggles if any text should automatically change to its translated version depending on the current locale. @@ -1357,6 +1582,23 @@ The minimum size of the node's bounding rectangle. If you set it to a value grea ---- +.. _class_Control_property_focus_behavior_recursive: + +.. rst-class:: classref-property + +:ref:`FocusBehaviorRecursive` **focus_behavior_recursive** = ``0`` :ref:`🔗` + +.. rst-class:: classref-property-setget + +- |void| **set_focus_behavior_recursive**\ (\ value\: :ref:`FocusBehaviorRecursive`\ ) +- :ref:`FocusBehaviorRecursive` **get_focus_behavior_recursive**\ (\ ) + +Determines which controls can be focused together with :ref:`focus_mode`. See :ref:`get_focus_mode_with_override()`. Since the default behavior is :ref:`FOCUS_BEHAVIOR_INHERITED`, this can be used to prevent all children controls from getting focused. + +.. rst-class:: classref-item-separator + +---- + .. _class_Control_property_focus_mode: .. rst-class:: classref-property @@ -1368,7 +1610,7 @@ The minimum size of the node's bounding rectangle. If you set it to a value grea - |void| **set_focus_mode**\ (\ value\: :ref:`FocusMode`\ ) - :ref:`FocusMode` **get_focus_mode**\ (\ ) -The focus access mode for the control (None, Click or All). Only one Control can be focused at the same time, and it will receive keyboard, gamepad, and mouse signals. +Determines which controls can be focused. Only one control can be focused at a time, and the focused control will receive keyboard, gamepad, and mouse events in :ref:`_gui_input()`. Use :ref:`get_focus_mode_with_override()` to determine if a control can grab focus, since :ref:`focus_behavior_recursive` also affects it. See also :ref:`grab_focus()`. .. rst-class:: classref-item-separator @@ -1566,6 +1808,23 @@ If ``true``, automatically converts code line numbers, list indices, :ref:`SpinB ---- +.. _class_Control_property_mouse_behavior_recursive: + +.. rst-class:: classref-property + +:ref:`MouseBehaviorRecursive` **mouse_behavior_recursive** = ``0`` :ref:`🔗` + +.. rst-class:: classref-property-setget + +- |void| **set_mouse_behavior_recursive**\ (\ value\: :ref:`MouseBehaviorRecursive`\ ) +- :ref:`MouseBehaviorRecursive` **get_mouse_behavior_recursive**\ (\ ) + +Determines which controls can receive mouse input together with :ref:`mouse_filter`. See :ref:`get_mouse_filter_with_override()`. Since the default behavior is :ref:`MOUSE_BEHAVIOR_INHERITED`, this can be used to prevent all children controls from receiving mouse input. + +.. rst-class:: classref-item-separator + +---- + .. _class_Control_property_mouse_default_cursor_shape: .. rst-class:: classref-property @@ -1596,7 +1855,7 @@ The default cursor shape for this control. Useful for Godot plugins and applicat - |void| **set_mouse_filter**\ (\ value\: :ref:`MouseFilter`\ ) - :ref:`MouseFilter` **get_mouse_filter**\ (\ ) -Controls whether the control will be able to receive mouse button input events through :ref:`_gui_input()` and how these events should be handled. Also controls whether the control can receive the :ref:`mouse_entered`, and :ref:`mouse_exited` signals. See the constants to learn what each does. +Determines which controls will be able to receive mouse button input events through :ref:`_gui_input()` and the :ref:`mouse_entered`, and :ref:`mouse_exited` signals. Also determines how these events should be propagated. See the constants to learn what each does. Use :ref:`get_mouse_filter_with_override()` to determine if a control can receive mouse input, since :ref:`mouse_behavior_recursive` also affects it. .. rst-class:: classref-item-separator @@ -1779,7 +2038,7 @@ Helper property to access :ref:`rotation` in de - |void| **set_scale**\ (\ value\: :ref:`Vector2`\ ) - :ref:`Vector2` **get_scale**\ (\ ) -The node's scale, relative to its :ref:`size`. Change this property to scale the node around its :ref:`pivot_offset`. The Control's :ref:`tooltip_text` will also scale according to this value. +The node's scale, relative to its :ref:`size`. Change this property to scale the node around its :ref:`pivot_offset`. The Control's tooltip will also scale according to this value. \ **Note:** This property is mainly intended to be used for animation purposes. To support multiple resolutions in your project, use an appropriate viewport stretch mode as described in the :doc:`documentation <../tutorials/rendering/multiple_resolutions>` instead of scaling Controls individually. @@ -1985,6 +2244,18 @@ The tooltip popup will use either a default implementation, or a custom one that Method Descriptions ------------------- +.. _class_Control_private_method__accessibility_get_contextual_info: + +.. rst-class:: classref-method + +:ref:`String` **_accessibility_get_contextual_info**\ (\ ) |virtual| |const| :ref:`🔗` + +Return the description of the keyboard shortcuts and other contextual help for this control. + +.. rst-class:: classref-item-separator + +---- + .. _class_Control_private_method__can_drop_data: .. rst-class:: classref-method @@ -1995,6 +2266,8 @@ Godot calls this method to test if ``data`` from a control's :ref:`_get_drag_dat This method should only be used to test the data. Process the data in :ref:`_drop_data()`. +\ **Note:** If the drag was initiated by a keyboard shortcut or :ref:`accessibility_drag()`, ``at_position`` is set to :ref:`Vector2.INF`, and the currently selected item/text position should be used as the drop position. + .. tabs:: @@ -2028,6 +2301,8 @@ This method should only be used to test the data. Process the data in :ref:`_dro Godot calls this method to pass you the ``data`` from a control's :ref:`_get_drag_data()` result. Godot first calls :ref:`_can_drop_data()` to test if ``data`` is allowed to drop at ``at_position`` where ``at_position`` is local to this control. +\ **Note:** If the drag was initiated by a keyboard shortcut or :ref:`accessibility_drag()`, ``at_position`` is set to :ref:`Vector2.INF`, and the currently selected item/text position should be used as the drop position. + .. tabs:: @@ -2035,7 +2310,7 @@ Godot calls this method to pass you the ``data`` from a control's :ref:`_get_dra func _can_drop_data(position, data): return typeof(data) == TYPE_DICTIONARY and data.has("color") - + func _drop_data(position, data): var color = data["color"] @@ -2045,7 +2320,7 @@ Godot calls this method to pass you the ``data`` from a control's :ref:`_get_dra { return data.VariantType == Variant.Type.Dictionary && data.AsGodotDictionary().ContainsKey("color"); } - + public override void _DropData(Vector2 atPosition, Variant data) { Color color = data.AsGodotDictionary()["color"].AsColor(); @@ -2053,6 +2328,18 @@ Godot calls this method to pass you the ``data`` from a control's :ref:`_get_dra +.. rst-class:: classref-item-separator + +---- + +.. _class_Control_private_method__get_accessibility_container_name: + +.. rst-class:: classref-method + +:ref:`String` **_get_accessibility_container_name**\ (\ node\: :ref:`Node`\ ) |virtual| |const| :ref:`🔗` + +Override this method to return a human-readable description of the position of the child ``node`` in the custom container, added to the :ref:`accessibility_name`. + .. rst-class:: classref-item-separator ---- @@ -2067,6 +2354,8 @@ Godot calls this method to get data that can be dragged and dropped onto control A preview that will follow the mouse that should represent the data can be set with :ref:`set_drag_preview()`. A good time to set the preview is in this method. +\ **Note:** If the drag was initiated by a keyboard shortcut or :ref:`accessibility_drag()`, ``at_position`` is set to :ref:`Vector2.INF`, and the currently selected item/text position should be used as the drag position. + .. tabs:: @@ -2287,6 +2576,30 @@ Marks an input event as handled. Once you accept an input event, it stops propag ---- +.. _class_Control_method_accessibility_drag: + +.. rst-class:: classref-method + +|void| **accessibility_drag**\ (\ ) :ref:`🔗` + +Starts drag-and-drop operation without using a mouse. + +.. rst-class:: classref-item-separator + +---- + +.. _class_Control_method_accessibility_drop: + +.. rst-class:: classref-method + +|void| **accessibility_drop**\ (\ ) :ref:`🔗` + +Ends drag-and-drop operation without using a mouse. + +.. rst-class:: classref-item-separator + +---- + .. _class_Control_method_add_theme_color_override: .. rst-class:: classref-method @@ -2545,7 +2858,7 @@ Returns combined minimum size from :ref:`custom_minimum_size` **get_cursor_shape**\ (\ position\: :ref:`Vector2` = Vector2(0, 0)\ ) |const| :ref:`🔗` -Returns the mouse cursor shape the control displays on mouse hover. See :ref:`CursorShape`. +Returns the mouse cursor shape for this control when hovered over ``position`` in local coordinates. For most controls, this is the same as :ref:`mouse_default_cursor_shape`, but some built-in controls implement more complex logic. .. rst-class:: classref-item-separator @@ -2563,6 +2876,18 @@ Returns :ref:`offset_right` and :ref:`offse ---- +.. _class_Control_method_get_focus_mode_with_override: + +.. rst-class:: classref-method + +:ref:`FocusMode` **get_focus_mode_with_override**\ (\ ) |const| :ref:`🔗` + +Returns the :ref:`focus_mode`, but takes the :ref:`focus_behavior_recursive` into account. If :ref:`focus_behavior_recursive` is set to :ref:`FOCUS_BEHAVIOR_DISABLED`, or it is set to :ref:`FOCUS_BEHAVIOR_INHERITED` and its ancestor is set to :ref:`FOCUS_BEHAVIOR_DISABLED`, then this returns :ref:`FOCUS_NONE`. + +.. rst-class:: classref-item-separator + +---- + .. _class_Control_method_get_focus_neighbor: .. rst-class:: classref-method @@ -2605,6 +2930,18 @@ Returns the minimum size for this control. See :ref:`custom_minimum_size` **get_mouse_filter_with_override**\ (\ ) |const| :ref:`🔗` + +Returns the :ref:`mouse_filter`, but takes the :ref:`mouse_behavior_recursive` into account. If :ref:`mouse_behavior_recursive` is set to :ref:`MOUSE_BEHAVIOR_DISABLED`, or it is set to :ref:`MOUSE_BEHAVIOR_INHERITED` and its ancestor is set to :ref:`MOUSE_BEHAVIOR_DISABLED`, then this returns :ref:`MOUSE_FILTER_IGNORE`. + +.. rst-class:: classref-item-separator + +---- + .. _class_Control_method_get_offset: .. rst-class:: classref-method @@ -3087,7 +3424,7 @@ Best used with :ref:`Node.NOTIFICATION_DRAG_END` **is_layout_rtl**\ (\ ) |const| :ref:`🔗` -Returns ``true`` if layout is right-to-left. See also :ref:`layout_direction`. +Returns ``true`` if the layout is right-to-left. See also :ref:`layout_direction`. .. rst-class:: classref-item-separator @@ -3289,7 +3626,7 @@ Shows the given control at the mouse pointer. A good time to call this method is .. code-tab:: gdscript @export var color = Color(1, 0, 0, 1) - + func _get_drag_data(position): # Use a control that is not in the tree var cpb = ColorPickerButton.new() @@ -3302,7 +3639,7 @@ Shows the given control at the mouse pointer. A good time to call this method is [Export] private Color _color = new Color(1, 0, 0, 1); - + public override Variant _GetDragData(Vector2 atPosition) { // Use a control that is not in the tree @@ -3436,6 +3773,7 @@ Moves the mouse cursor to ``position``, relative to :ref:`position` is only supported on Windows, macOS and Linux. It has no effect on Android, iOS and Web. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_converttransformmodifier3d.rst b/classes/class_converttransformmodifier3d.rst new file mode 100644 index 000000000..dc29c033b --- /dev/null +++ b/classes/class_converttransformmodifier3d.rst @@ -0,0 +1,426 @@ +:github_url: hide + +.. DO NOT EDIT THIS FILE!!! +.. Generated automatically from Godot engine sources. +.. Generator: https://github.com/godotengine/godot/tree/master/doc/tools/make_rst.py. +.. XML source: https://github.com/godotengine/godot/tree/master/doc/classes/ConvertTransformModifier3D.xml. + +.. _class_ConvertTransformModifier3D: + +ConvertTransformModifier3D +========================== + +**Inherits:** :ref:`BoneConstraint3D` **<** :ref:`SkeletonModifier3D` **<** :ref:`Node3D` **<** :ref:`Node` **<** :ref:`Object` + +A :ref:`SkeletonModifier3D` that apply transform to the bone which converted from reference. + +.. rst-class:: classref-introduction-group + +Description +----------- + +Apply the copied transform of the bone set by :ref:`BoneConstraint3D.set_reference_bone()` to the bone set by :ref:`BoneConstraint3D.set_apply_bone()` about the specific axis with remapping it with some options. + +There are 4 ways to apply the transform, depending on the combination of :ref:`set_relative()` and :ref:`set_additive()`. + +\ **Relative + Additive:**\ + +- Extract reference pose relative to the rest and add it to the apply bone's pose. + +\ **Relative + Not Additive:**\ + +- Extract reference pose relative to the rest and add it to the apply bone's rest. + +\ **Not Relative + Additive:**\ + +- Extract reference pose absolutely and add it to the apply bone's pose. + +\ **Not Relative + Not Additive:**\ + +- Extract reference pose absolutely and the apply bone's pose is replaced with it. + +.. rst-class:: classref-reftable-group + +Properties +---------- + +.. table:: + :widths: auto + + +-----------------------+-------------------------------------------------------------------------------+-------+ + | :ref:`int` | :ref:`setting_count` | ``0`` | + +-----------------------+-------------------------------------------------------------------------------+-------+ + +.. rst-class:: classref-reftable-group + +Methods +------- + +.. table:: + :widths: auto + + +---------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Axis` | :ref:`get_apply_axis`\ (\ index\: :ref:`int`\ ) |const| | + +---------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`get_apply_range_max`\ (\ index\: :ref:`int`\ ) |const| | + +---------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`get_apply_range_min`\ (\ index\: :ref:`int`\ ) |const| | + +---------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`TransformMode` | :ref:`get_apply_transform_mode`\ (\ index\: :ref:`int`\ ) |const| | + +---------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Axis` | :ref:`get_reference_axis`\ (\ index\: :ref:`int`\ ) |const| | + +---------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`get_reference_range_max`\ (\ index\: :ref:`int`\ ) |const| | + +---------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`get_reference_range_min`\ (\ index\: :ref:`int`\ ) |const| | + +---------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`TransformMode` | :ref:`get_reference_transform_mode`\ (\ index\: :ref:`int`\ ) |const| | + +---------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`is_additive`\ (\ index\: :ref:`int`\ ) |const| | + +---------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`is_relative`\ (\ index\: :ref:`int`\ ) |const| | + +---------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_additive`\ (\ index\: :ref:`int`, enabled\: :ref:`bool`\ ) | + +---------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_apply_axis`\ (\ index\: :ref:`int`, axis\: :ref:`Axis`\ ) | + +---------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_apply_range_max`\ (\ index\: :ref:`int`, range_max\: :ref:`float`\ ) | + +---------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_apply_range_min`\ (\ index\: :ref:`int`, range_min\: :ref:`float`\ ) | + +---------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_apply_transform_mode`\ (\ index\: :ref:`int`, transform_mode\: :ref:`TransformMode`\ ) | + +---------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_reference_axis`\ (\ index\: :ref:`int`, axis\: :ref:`Axis`\ ) | + +---------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_reference_range_max`\ (\ index\: :ref:`int`, range_max\: :ref:`float`\ ) | + +---------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_reference_range_min`\ (\ index\: :ref:`int`, range_min\: :ref:`float`\ ) | + +---------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_reference_transform_mode`\ (\ index\: :ref:`int`, transform_mode\: :ref:`TransformMode`\ ) | + +---------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_relative`\ (\ index\: :ref:`int`, enabled\: :ref:`bool`\ ) | + +---------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + +.. rst-class:: classref-section-separator + +---- + +.. rst-class:: classref-descriptions-group + +Enumerations +------------ + +.. _enum_ConvertTransformModifier3D_TransformMode: + +.. rst-class:: classref-enumeration + +enum **TransformMode**: :ref:`🔗` + +.. _class_ConvertTransformModifier3D_constant_TRANSFORM_MODE_POSITION: + +.. rst-class:: classref-enumeration-constant + +:ref:`TransformMode` **TRANSFORM_MODE_POSITION** = ``0`` + +Convert with position. Transfer the difference. + +.. _class_ConvertTransformModifier3D_constant_TRANSFORM_MODE_ROTATION: + +.. rst-class:: classref-enumeration-constant + +:ref:`TransformMode` **TRANSFORM_MODE_ROTATION** = ``1`` + +Convert with rotation. The angle is the roll for the specified axis. + +.. _class_ConvertTransformModifier3D_constant_TRANSFORM_MODE_SCALE: + +.. rst-class:: classref-enumeration-constant + +:ref:`TransformMode` **TRANSFORM_MODE_SCALE** = ``2`` + +Convert with scale. Transfers the ratio, not the difference. + +.. rst-class:: classref-section-separator + +---- + +.. rst-class:: classref-descriptions-group + +Property Descriptions +--------------------- + +.. _class_ConvertTransformModifier3D_property_setting_count: + +.. rst-class:: classref-property + +:ref:`int` **setting_count** = ``0`` :ref:`🔗` + +.. rst-class:: classref-property-setget + +- |void| **set_setting_count**\ (\ value\: :ref:`int`\ ) +- :ref:`int` **get_setting_count**\ (\ ) + +The number of settings in the modifier. + +.. rst-class:: classref-section-separator + +---- + +.. rst-class:: classref-descriptions-group + +Method Descriptions +------------------- + +.. _class_ConvertTransformModifier3D_method_get_apply_axis: + +.. rst-class:: classref-method + +:ref:`Axis` **get_apply_axis**\ (\ index\: :ref:`int`\ ) |const| :ref:`🔗` + +Returns the axis of the remapping destination transform. + +.. rst-class:: classref-item-separator + +---- + +.. _class_ConvertTransformModifier3D_method_get_apply_range_max: + +.. rst-class:: classref-method + +:ref:`float` **get_apply_range_max**\ (\ index\: :ref:`int`\ ) |const| :ref:`🔗` + +Returns the maximum value of the remapping destination range. + +.. rst-class:: classref-item-separator + +---- + +.. _class_ConvertTransformModifier3D_method_get_apply_range_min: + +.. rst-class:: classref-method + +:ref:`float` **get_apply_range_min**\ (\ index\: :ref:`int`\ ) |const| :ref:`🔗` + +Returns the minimum value of the remapping destination range. + +.. rst-class:: classref-item-separator + +---- + +.. _class_ConvertTransformModifier3D_method_get_apply_transform_mode: + +.. rst-class:: classref-method + +:ref:`TransformMode` **get_apply_transform_mode**\ (\ index\: :ref:`int`\ ) |const| :ref:`🔗` + +Returns the operation of the remapping destination transform. + +.. rst-class:: classref-item-separator + +---- + +.. _class_ConvertTransformModifier3D_method_get_reference_axis: + +.. rst-class:: classref-method + +:ref:`Axis` **get_reference_axis**\ (\ index\: :ref:`int`\ ) |const| :ref:`🔗` + +Returns the axis of the remapping source transform. + +.. rst-class:: classref-item-separator + +---- + +.. _class_ConvertTransformModifier3D_method_get_reference_range_max: + +.. rst-class:: classref-method + +:ref:`float` **get_reference_range_max**\ (\ index\: :ref:`int`\ ) |const| :ref:`🔗` + +Returns the maximum value of the remapping source range. + +.. rst-class:: classref-item-separator + +---- + +.. _class_ConvertTransformModifier3D_method_get_reference_range_min: + +.. rst-class:: classref-method + +:ref:`float` **get_reference_range_min**\ (\ index\: :ref:`int`\ ) |const| :ref:`🔗` + +Returns the minimum value of the remapping source range. + +.. rst-class:: classref-item-separator + +---- + +.. _class_ConvertTransformModifier3D_method_get_reference_transform_mode: + +.. rst-class:: classref-method + +:ref:`TransformMode` **get_reference_transform_mode**\ (\ index\: :ref:`int`\ ) |const| :ref:`🔗` + +Returns the operation of the remapping source transform. + +.. rst-class:: classref-item-separator + +---- + +.. _class_ConvertTransformModifier3D_method_is_additive: + +.. rst-class:: classref-method + +:ref:`bool` **is_additive**\ (\ index\: :ref:`int`\ ) |const| :ref:`🔗` + +Returns ``true`` if the additive option is enabled in the setting at ``index``. + +.. rst-class:: classref-item-separator + +---- + +.. _class_ConvertTransformModifier3D_method_is_relative: + +.. rst-class:: classref-method + +:ref:`bool` **is_relative**\ (\ index\: :ref:`int`\ ) |const| :ref:`🔗` + +Returns ``true`` if the relative option is enabled in the setting at ``index``. + +.. rst-class:: classref-item-separator + +---- + +.. _class_ConvertTransformModifier3D_method_set_additive: + +.. rst-class:: classref-method + +|void| **set_additive**\ (\ index\: :ref:`int`, enabled\: :ref:`bool`\ ) :ref:`🔗` + +Sets additive option in the setting at ``index`` to ``enabled``. This mainly affects the process of applying transform to the :ref:`BoneConstraint3D.set_apply_bone()`. + +If sets ``enabled`` to ``true``, the processed transform is added to the pose of the current apply bone. + +If sets ``enabled`` to ``false``, the pose of the current apply bone is replaced with the processed transform. However, if set :ref:`set_relative()` to ``true``, the transform is relative to rest. + +.. rst-class:: classref-item-separator + +---- + +.. _class_ConvertTransformModifier3D_method_set_apply_axis: + +.. rst-class:: classref-method + +|void| **set_apply_axis**\ (\ index\: :ref:`int`, axis\: :ref:`Axis`\ ) :ref:`🔗` + +Sets the axis of the remapping destination transform. + +.. rst-class:: classref-item-separator + +---- + +.. _class_ConvertTransformModifier3D_method_set_apply_range_max: + +.. rst-class:: classref-method + +|void| **set_apply_range_max**\ (\ index\: :ref:`int`, range_max\: :ref:`float`\ ) :ref:`🔗` + +Sets the maximum value of the remapping destination range. + +.. rst-class:: classref-item-separator + +---- + +.. _class_ConvertTransformModifier3D_method_set_apply_range_min: + +.. rst-class:: classref-method + +|void| **set_apply_range_min**\ (\ index\: :ref:`int`, range_min\: :ref:`float`\ ) :ref:`🔗` + +Sets the minimum value of the remapping destination range. + +.. rst-class:: classref-item-separator + +---- + +.. _class_ConvertTransformModifier3D_method_set_apply_transform_mode: + +.. rst-class:: classref-method + +|void| **set_apply_transform_mode**\ (\ index\: :ref:`int`, transform_mode\: :ref:`TransformMode`\ ) :ref:`🔗` + +Sets the operation of the remapping destination transform. + +.. rst-class:: classref-item-separator + +---- + +.. _class_ConvertTransformModifier3D_method_set_reference_axis: + +.. rst-class:: classref-method + +|void| **set_reference_axis**\ (\ index\: :ref:`int`, axis\: :ref:`Axis`\ ) :ref:`🔗` + +Sets the axis of the remapping source transform. + +.. rst-class:: classref-item-separator + +---- + +.. _class_ConvertTransformModifier3D_method_set_reference_range_max: + +.. rst-class:: classref-method + +|void| **set_reference_range_max**\ (\ index\: :ref:`int`, range_max\: :ref:`float`\ ) :ref:`🔗` + +Sets the maximum value of the remapping source range. + +.. rst-class:: classref-item-separator + +---- + +.. _class_ConvertTransformModifier3D_method_set_reference_range_min: + +.. rst-class:: classref-method + +|void| **set_reference_range_min**\ (\ index\: :ref:`int`, range_min\: :ref:`float`\ ) :ref:`🔗` + +Sets the minimum value of the remapping source range. + +.. rst-class:: classref-item-separator + +---- + +.. _class_ConvertTransformModifier3D_method_set_reference_transform_mode: + +.. rst-class:: classref-method + +|void| **set_reference_transform_mode**\ (\ index\: :ref:`int`, transform_mode\: :ref:`TransformMode`\ ) :ref:`🔗` + +Sets the operation of the remapping source transform. + +.. rst-class:: classref-item-separator + +---- + +.. _class_ConvertTransformModifier3D_method_set_relative: + +.. rst-class:: classref-method + +|void| **set_relative**\ (\ index\: :ref:`int`, enabled\: :ref:`bool`\ ) :ref:`🔗` + +Sets relative option in the setting at ``index`` to ``enabled``. + +If sets ``enabled`` to ``true``, the extracted and applying transform is relative to the rest. + +If sets ``enabled`` to ``false``, the extracted transform is absolute. + +.. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` +.. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` +.. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` +.. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` +.. |static| replace:: :abbr:`static (This method doesn't need an instance to be called, so it can be called directly using the class name.)` +.. |operator| replace:: :abbr:`operator (This method describes a valid operator to use with this type as left-hand operand.)` +.. |bitfield| replace:: :abbr:`BitField (This value is an integer composed as a bitmask of the following flags.)` +.. |void| replace:: :abbr:`void (No return value.)` diff --git a/classes/class_convexpolygonshape2d.rst b/classes/class_convexpolygonshape2d.rst index 13789a04c..a71ac4bd6 100644 --- a/classes/class_convexpolygonshape2d.rst +++ b/classes/class_convexpolygonshape2d.rst @@ -95,6 +95,7 @@ Method Descriptions Based on the set of points provided, this assigns the :ref:`points` property using the convex hull algorithm, removing all unneeded points. See :ref:`Geometry2D.convex_hull()` for details. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_convexpolygonshape3d.rst b/classes/class_convexpolygonshape3d.rst index af9dea705..5e89f47e8 100644 --- a/classes/class_convexpolygonshape3d.rst +++ b/classes/class_convexpolygonshape3d.rst @@ -71,6 +71,7 @@ The list of 3D points forming the convex polygon shape. **Note:** The returned array is *copied* and any changes to it will not update the original property value. See :ref:`PackedVector3Array` for more details. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_copytransformmodifier3d.rst b/classes/class_copytransformmodifier3d.rst new file mode 100644 index 000000000..2304a8646 --- /dev/null +++ b/classes/class_copytransformmodifier3d.rst @@ -0,0 +1,594 @@ +:github_url: hide + +.. DO NOT EDIT THIS FILE!!! +.. Generated automatically from Godot engine sources. +.. Generator: https://github.com/godotengine/godot/tree/master/doc/tools/make_rst.py. +.. XML source: https://github.com/godotengine/godot/tree/master/doc/classes/CopyTransformModifier3D.xml. + +.. _class_CopyTransformModifier3D: + +CopyTransformModifier3D +======================= + +**Inherits:** :ref:`BoneConstraint3D` **<** :ref:`SkeletonModifier3D` **<** :ref:`Node3D` **<** :ref:`Node` **<** :ref:`Object` + +A :ref:`SkeletonModifier3D` that apply transform to the bone which copied from reference. + +.. rst-class:: classref-introduction-group + +Description +----------- + +Apply the copied transform of the bone set by :ref:`BoneConstraint3D.set_reference_bone()` to the bone set by :ref:`BoneConstraint3D.set_apply_bone()` with processing it with some masks and options. + +There are 4 ways to apply the transform, depending on the combination of :ref:`set_relative()` and :ref:`set_additive()`. + +\ **Relative + Additive:**\ + +- Extract reference pose relative to the rest and add it to the apply bone's pose. + +\ **Relative + Not Additive:**\ + +- Extract reference pose relative to the rest and add it to the apply bone's rest. + +\ **Not Relative + Additive:**\ + +- Extract reference pose absolutely and add it to the apply bone's pose. + +\ **Not Relative + Not Additive:**\ + +- Extract reference pose absolutely and the apply bone's pose is replaced with it. + +.. rst-class:: classref-reftable-group + +Properties +---------- + +.. table:: + :widths: auto + + +-----------------------+----------------------------------------------------------------------------+-------+ + | :ref:`int` | :ref:`setting_count` | ``0`` | + +-----------------------+----------------------------------------------------------------------------+-------+ + +.. rst-class:: classref-reftable-group + +Methods +------- + +.. table:: + :widths: auto + + +--------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |bitfield|\[:ref:`AxisFlag`\] | :ref:`get_axis_flags`\ (\ index\: :ref:`int`\ ) |const| | + +--------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |bitfield|\[:ref:`TransformFlag`\] | :ref:`get_copy_flags`\ (\ index\: :ref:`int`\ ) |const| | + +--------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |bitfield|\[:ref:`AxisFlag`\] | :ref:`get_invert_flags`\ (\ index\: :ref:`int`\ ) |const| | + +--------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`is_additive`\ (\ index\: :ref:`int`\ ) |const| | + +--------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`is_axis_x_enabled`\ (\ index\: :ref:`int`\ ) |const| | + +--------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`is_axis_x_inverted`\ (\ index\: :ref:`int`\ ) |const| | + +--------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`is_axis_y_enabled`\ (\ index\: :ref:`int`\ ) |const| | + +--------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`is_axis_y_inverted`\ (\ index\: :ref:`int`\ ) |const| | + +--------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`is_axis_z_enabled`\ (\ index\: :ref:`int`\ ) |const| | + +--------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`is_axis_z_inverted`\ (\ index\: :ref:`int`\ ) |const| | + +--------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`is_position_copying`\ (\ index\: :ref:`int`\ ) |const| | + +--------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`is_relative`\ (\ index\: :ref:`int`\ ) |const| | + +--------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`is_rotation_copying`\ (\ index\: :ref:`int`\ ) |const| | + +--------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`is_scale_copying`\ (\ index\: :ref:`int`\ ) |const| | + +--------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_additive`\ (\ index\: :ref:`int`, enabled\: :ref:`bool`\ ) | + +--------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_axis_flags`\ (\ index\: :ref:`int`, axis_flags\: |bitfield|\[:ref:`AxisFlag`\]\ ) | + +--------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_axis_x_enabled`\ (\ index\: :ref:`int`, enabled\: :ref:`bool`\ ) | + +--------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_axis_x_inverted`\ (\ index\: :ref:`int`, enabled\: :ref:`bool`\ ) | + +--------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_axis_y_enabled`\ (\ index\: :ref:`int`, enabled\: :ref:`bool`\ ) | + +--------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_axis_y_inverted`\ (\ index\: :ref:`int`, enabled\: :ref:`bool`\ ) | + +--------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_axis_z_enabled`\ (\ index\: :ref:`int`, enabled\: :ref:`bool`\ ) | + +--------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_axis_z_inverted`\ (\ index\: :ref:`int`, enabled\: :ref:`bool`\ ) | + +--------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_copy_flags`\ (\ index\: :ref:`int`, copy_flags\: |bitfield|\[:ref:`TransformFlag`\]\ ) | + +--------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_copy_position`\ (\ index\: :ref:`int`, enabled\: :ref:`bool`\ ) | + +--------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_copy_rotation`\ (\ index\: :ref:`int`, enabled\: :ref:`bool`\ ) | + +--------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_copy_scale`\ (\ index\: :ref:`int`, enabled\: :ref:`bool`\ ) | + +--------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_invert_flags`\ (\ index\: :ref:`int`, axis_flags\: |bitfield|\[:ref:`AxisFlag`\]\ ) | + +--------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_relative`\ (\ index\: :ref:`int`, enabled\: :ref:`bool`\ ) | + +--------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + +.. rst-class:: classref-section-separator + +---- + +.. rst-class:: classref-descriptions-group + +Enumerations +------------ + +.. _enum_CopyTransformModifier3D_TransformFlag: + +.. rst-class:: classref-enumeration + +flags **TransformFlag**: :ref:`🔗` + +.. _class_CopyTransformModifier3D_constant_TRANSFORM_FLAG_POSITION: + +.. rst-class:: classref-enumeration-constant + +:ref:`TransformFlag` **TRANSFORM_FLAG_POSITION** = ``1`` + +If set, allows to copy the position. + +.. _class_CopyTransformModifier3D_constant_TRANSFORM_FLAG_ROTATION: + +.. rst-class:: classref-enumeration-constant + +:ref:`TransformFlag` **TRANSFORM_FLAG_ROTATION** = ``2`` + +If set, allows to copy the rotation. + +.. _class_CopyTransformModifier3D_constant_TRANSFORM_FLAG_SCALE: + +.. rst-class:: classref-enumeration-constant + +:ref:`TransformFlag` **TRANSFORM_FLAG_SCALE** = ``4`` + +If set, allows to copy the scale. + +.. _class_CopyTransformModifier3D_constant_TRANSFORM_FLAG_ALL: + +.. rst-class:: classref-enumeration-constant + +:ref:`TransformFlag` **TRANSFORM_FLAG_ALL** = ``7`` + +If set, allows to copy the position/rotation/scale. + +.. rst-class:: classref-item-separator + +---- + +.. _enum_CopyTransformModifier3D_AxisFlag: + +.. rst-class:: classref-enumeration + +flags **AxisFlag**: :ref:`🔗` + +.. _class_CopyTransformModifier3D_constant_AXIS_FLAG_X: + +.. rst-class:: classref-enumeration-constant + +:ref:`AxisFlag` **AXIS_FLAG_X** = ``1`` + +If set, allows to process the X-axis. + +.. _class_CopyTransformModifier3D_constant_AXIS_FLAG_Y: + +.. rst-class:: classref-enumeration-constant + +:ref:`AxisFlag` **AXIS_FLAG_Y** = ``2`` + +If set, allows to process the Y-axis. + +.. _class_CopyTransformModifier3D_constant_AXIS_FLAG_Z: + +.. rst-class:: classref-enumeration-constant + +:ref:`AxisFlag` **AXIS_FLAG_Z** = ``4`` + +If set, allows to process the Z-axis. + +.. _class_CopyTransformModifier3D_constant_AXIS_FLAG_ALL: + +.. rst-class:: classref-enumeration-constant + +:ref:`AxisFlag` **AXIS_FLAG_ALL** = ``7`` + +If set, allows to process the all axes. + +.. rst-class:: classref-section-separator + +---- + +.. rst-class:: classref-descriptions-group + +Property Descriptions +--------------------- + +.. _class_CopyTransformModifier3D_property_setting_count: + +.. rst-class:: classref-property + +:ref:`int` **setting_count** = ``0`` :ref:`🔗` + +.. rst-class:: classref-property-setget + +- |void| **set_setting_count**\ (\ value\: :ref:`int`\ ) +- :ref:`int` **get_setting_count**\ (\ ) + +The number of settings in the modifier. + +.. rst-class:: classref-section-separator + +---- + +.. rst-class:: classref-descriptions-group + +Method Descriptions +------------------- + +.. _class_CopyTransformModifier3D_method_get_axis_flags: + +.. rst-class:: classref-method + +|bitfield|\[:ref:`AxisFlag`\] **get_axis_flags**\ (\ index\: :ref:`int`\ ) |const| :ref:`🔗` + +Returns the axis flags of the setting at ``index``. + +.. rst-class:: classref-item-separator + +---- + +.. _class_CopyTransformModifier3D_method_get_copy_flags: + +.. rst-class:: classref-method + +|bitfield|\[:ref:`TransformFlag`\] **get_copy_flags**\ (\ index\: :ref:`int`\ ) |const| :ref:`🔗` + +Returns the copy flags of the setting at ``index``. + +.. rst-class:: classref-item-separator + +---- + +.. _class_CopyTransformModifier3D_method_get_invert_flags: + +.. rst-class:: classref-method + +|bitfield|\[:ref:`AxisFlag`\] **get_invert_flags**\ (\ index\: :ref:`int`\ ) |const| :ref:`🔗` + +Returns the invert flags of the setting at ``index``. + +.. rst-class:: classref-item-separator + +---- + +.. _class_CopyTransformModifier3D_method_is_additive: + +.. rst-class:: classref-method + +:ref:`bool` **is_additive**\ (\ index\: :ref:`int`\ ) |const| :ref:`🔗` + +Returns ``true`` if the additive option is enabled in the setting at ``index``. + +.. rst-class:: classref-item-separator + +---- + +.. _class_CopyTransformModifier3D_method_is_axis_x_enabled: + +.. rst-class:: classref-method + +:ref:`bool` **is_axis_x_enabled**\ (\ index\: :ref:`int`\ ) |const| :ref:`🔗` + +Returns ``true`` if the enable flags has the flag for the X-axis in the setting at ``index``. See also :ref:`set_axis_flags()`. + +.. rst-class:: classref-item-separator + +---- + +.. _class_CopyTransformModifier3D_method_is_axis_x_inverted: + +.. rst-class:: classref-method + +:ref:`bool` **is_axis_x_inverted**\ (\ index\: :ref:`int`\ ) |const| :ref:`🔗` + +Returns ``true`` if the invert flags has the flag for the X-axis in the setting at ``index``. See also :ref:`set_invert_flags()`. + +.. rst-class:: classref-item-separator + +---- + +.. _class_CopyTransformModifier3D_method_is_axis_y_enabled: + +.. rst-class:: classref-method + +:ref:`bool` **is_axis_y_enabled**\ (\ index\: :ref:`int`\ ) |const| :ref:`🔗` + +Returns ``true`` if the enable flags has the flag for the Y-axis in the setting at ``index``. See also :ref:`set_axis_flags()`. + +.. rst-class:: classref-item-separator + +---- + +.. _class_CopyTransformModifier3D_method_is_axis_y_inverted: + +.. rst-class:: classref-method + +:ref:`bool` **is_axis_y_inverted**\ (\ index\: :ref:`int`\ ) |const| :ref:`🔗` + +Returns ``true`` if the invert flags has the flag for the Y-axis in the setting at ``index``. See also :ref:`set_invert_flags()`. + +.. rst-class:: classref-item-separator + +---- + +.. _class_CopyTransformModifier3D_method_is_axis_z_enabled: + +.. rst-class:: classref-method + +:ref:`bool` **is_axis_z_enabled**\ (\ index\: :ref:`int`\ ) |const| :ref:`🔗` + +Returns ``true`` if the enable flags has the flag for the Z-axis in the setting at ``index``. See also :ref:`set_axis_flags()`. + +.. rst-class:: classref-item-separator + +---- + +.. _class_CopyTransformModifier3D_method_is_axis_z_inverted: + +.. rst-class:: classref-method + +:ref:`bool` **is_axis_z_inverted**\ (\ index\: :ref:`int`\ ) |const| :ref:`🔗` + +Returns ``true`` if the invert flags has the flag for the Z-axis in the setting at ``index``. See also :ref:`set_invert_flags()`. + +.. rst-class:: classref-item-separator + +---- + +.. _class_CopyTransformModifier3D_method_is_position_copying: + +.. rst-class:: classref-method + +:ref:`bool` **is_position_copying**\ (\ index\: :ref:`int`\ ) |const| :ref:`🔗` + +Returns ``true`` if the copy flags has the flag for the position in the setting at ``index``. See also :ref:`set_copy_flags()`. + +.. rst-class:: classref-item-separator + +---- + +.. _class_CopyTransformModifier3D_method_is_relative: + +.. rst-class:: classref-method + +:ref:`bool` **is_relative**\ (\ index\: :ref:`int`\ ) |const| :ref:`🔗` + +Returns ``true`` if the relative option is enabled in the setting at ``index``. + +.. rst-class:: classref-item-separator + +---- + +.. _class_CopyTransformModifier3D_method_is_rotation_copying: + +.. rst-class:: classref-method + +:ref:`bool` **is_rotation_copying**\ (\ index\: :ref:`int`\ ) |const| :ref:`🔗` + +Returns ``true`` if the copy flags has the flag for the rotation in the setting at ``index``. See also :ref:`set_copy_flags()`. + +.. rst-class:: classref-item-separator + +---- + +.. _class_CopyTransformModifier3D_method_is_scale_copying: + +.. rst-class:: classref-method + +:ref:`bool` **is_scale_copying**\ (\ index\: :ref:`int`\ ) |const| :ref:`🔗` + +Returns ``true`` if the copy flags has the flag for the scale in the setting at ``index``. See also :ref:`set_copy_flags()`. + +.. rst-class:: classref-item-separator + +---- + +.. _class_CopyTransformModifier3D_method_set_additive: + +.. rst-class:: classref-method + +|void| **set_additive**\ (\ index\: :ref:`int`, enabled\: :ref:`bool`\ ) :ref:`🔗` + +Sets additive option in the setting at ``index`` to ``enabled``. This mainly affects the process of applying transform to the :ref:`BoneConstraint3D.set_apply_bone()`. + +If sets ``enabled`` to ``true``, the processed transform is added to the pose of the current apply bone. + +If sets ``enabled`` to ``false``, the pose of the current apply bone is replaced with the processed transform. However, if set :ref:`set_relative()` to ``true``, the transform is relative to rest. + +.. rst-class:: classref-item-separator + +---- + +.. _class_CopyTransformModifier3D_method_set_axis_flags: + +.. rst-class:: classref-method + +|void| **set_axis_flags**\ (\ index\: :ref:`int`, axis_flags\: |bitfield|\[:ref:`AxisFlag`\]\ ) :ref:`🔗` + +Sets the flags to copy axes. If the flag is valid, the axis is copied. + +.. rst-class:: classref-item-separator + +---- + +.. _class_CopyTransformModifier3D_method_set_axis_x_enabled: + +.. rst-class:: classref-method + +|void| **set_axis_x_enabled**\ (\ index\: :ref:`int`, enabled\: :ref:`bool`\ ) :ref:`🔗` + +If sets ``enabled`` to ``true``, the X-axis will be copied. + +.. rst-class:: classref-item-separator + +---- + +.. _class_CopyTransformModifier3D_method_set_axis_x_inverted: + +.. rst-class:: classref-method + +|void| **set_axis_x_inverted**\ (\ index\: :ref:`int`, enabled\: :ref:`bool`\ ) :ref:`🔗` + +If sets ``enabled`` to ``true``, the X-axis will be inverted. + +.. rst-class:: classref-item-separator + +---- + +.. _class_CopyTransformModifier3D_method_set_axis_y_enabled: + +.. rst-class:: classref-method + +|void| **set_axis_y_enabled**\ (\ index\: :ref:`int`, enabled\: :ref:`bool`\ ) :ref:`🔗` + +If sets ``enabled`` to ``true``, the Y-axis will be copied. + +.. rst-class:: classref-item-separator + +---- + +.. _class_CopyTransformModifier3D_method_set_axis_y_inverted: + +.. rst-class:: classref-method + +|void| **set_axis_y_inverted**\ (\ index\: :ref:`int`, enabled\: :ref:`bool`\ ) :ref:`🔗` + +If sets ``enabled`` to ``true``, the Y-axis will be inverted. + +.. rst-class:: classref-item-separator + +---- + +.. _class_CopyTransformModifier3D_method_set_axis_z_enabled: + +.. rst-class:: classref-method + +|void| **set_axis_z_enabled**\ (\ index\: :ref:`int`, enabled\: :ref:`bool`\ ) :ref:`🔗` + +If sets ``enabled`` to ``true``, the Z-axis will be copied. + +.. rst-class:: classref-item-separator + +---- + +.. _class_CopyTransformModifier3D_method_set_axis_z_inverted: + +.. rst-class:: classref-method + +|void| **set_axis_z_inverted**\ (\ index\: :ref:`int`, enabled\: :ref:`bool`\ ) :ref:`🔗` + +If sets ``enabled`` to ``true``, the Z-axis will be inverted. + +.. rst-class:: classref-item-separator + +---- + +.. _class_CopyTransformModifier3D_method_set_copy_flags: + +.. rst-class:: classref-method + +|void| **set_copy_flags**\ (\ index\: :ref:`int`, copy_flags\: |bitfield|\[:ref:`TransformFlag`\]\ ) :ref:`🔗` + +Sets the flags to process the transform operations. If the flag is valid, the transform operation is processed. + +\ **Note:** If the rotation is valid for only one axis, it respects the roll of the valid axis. If the rotation is valid for two axes, it discards the roll of the invalid axis. + +.. rst-class:: classref-item-separator + +---- + +.. _class_CopyTransformModifier3D_method_set_copy_position: + +.. rst-class:: classref-method + +|void| **set_copy_position**\ (\ index\: :ref:`int`, enabled\: :ref:`bool`\ ) :ref:`🔗` + +If sets ``enabled`` to ``true``, the position will be copied. + +.. rst-class:: classref-item-separator + +---- + +.. _class_CopyTransformModifier3D_method_set_copy_rotation: + +.. rst-class:: classref-method + +|void| **set_copy_rotation**\ (\ index\: :ref:`int`, enabled\: :ref:`bool`\ ) :ref:`🔗` + +If sets ``enabled`` to ``true``, the rotation will be copied. + +.. rst-class:: classref-item-separator + +---- + +.. _class_CopyTransformModifier3D_method_set_copy_scale: + +.. rst-class:: classref-method + +|void| **set_copy_scale**\ (\ index\: :ref:`int`, enabled\: :ref:`bool`\ ) :ref:`🔗` + +If sets ``enabled`` to ``true``, the scale will be copied. + +.. rst-class:: classref-item-separator + +---- + +.. _class_CopyTransformModifier3D_method_set_invert_flags: + +.. rst-class:: classref-method + +|void| **set_invert_flags**\ (\ index\: :ref:`int`, axis_flags\: |bitfield|\[:ref:`AxisFlag`\]\ ) :ref:`🔗` + +Sets the flags to inverte axes. If the flag is valid, the axis is copied. + +\ **Note:** An inverted scale means an inverse number, not a negative scale. For example, inverting ``2.0`` means ``0.5``. + +\ **Note:** An inverted rotation flips the elements of the quaternion. For example, a two-axis inversion will flip the roll of each axis, and a three-axis inversion will flip the final orientation. However, be aware that flipping only one axis may cause unintended rotation by the unflipped axes, due to the characteristics of the quaternion. + +.. rst-class:: classref-item-separator + +---- + +.. _class_CopyTransformModifier3D_method_set_relative: + +.. rst-class:: classref-method + +|void| **set_relative**\ (\ index\: :ref:`int`, enabled\: :ref:`bool`\ ) :ref:`🔗` + +Sets relative option in the setting at ``index`` to ``enabled``. + +If sets ``enabled`` to ``true``, the extracted and applying transform is relative to the rest. + +If sets ``enabled`` to ``false``, the extracted transform is absolute. + +.. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` +.. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` +.. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` +.. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` +.. |static| replace:: :abbr:`static (This method doesn't need an instance to be called, so it can be called directly using the class name.)` +.. |operator| replace:: :abbr:`operator (This method describes a valid operator to use with this type as left-hand operand.)` +.. |bitfield| replace:: :abbr:`BitField (This value is an integer composed as a bitmask of the following flags.)` +.. |void| replace:: :abbr:`void (No return value.)` diff --git a/classes/class_cpuparticles2d.rst b/classes/class_cpuparticles2d.rst index 1c4f90b7d..2fdeffdf1 100644 --- a/classes/class_cpuparticles2d.rst +++ b/classes/class_cpuparticles2d.rst @@ -840,7 +840,7 @@ Unit vector specifying the particles' emission direction. - |void| **set_draw_order**\ (\ value\: :ref:`DrawOrder`\ ) - :ref:`DrawOrder` **get_draw_order**\ (\ ) -Particle draw order. Uses :ref:`DrawOrder` values. +Particle draw order. .. rst-class:: classref-item-separator @@ -931,7 +931,7 @@ The rectangle's extents if :ref:`emission_shape`\ ) - :ref:`EmissionShape` **get_emission_shape**\ (\ ) -Particles will be emitted inside this region. See :ref:`EmissionShape` for possible values. +Particles will be emitted inside this region. .. rst-class:: classref-item-separator @@ -1697,7 +1697,7 @@ Returns the minimum value range for the given parameter. :ref:`bool` **get_particle_flag**\ (\ particle_flag\: :ref:`ParticleFlags`\ ) |const| :ref:`🔗` -Returns the enabled state of the given particle flag (see :ref:`ParticleFlags` for options). +Returns the enabled state of the given particle flag. .. rst-class:: classref-item-separator @@ -1773,9 +1773,10 @@ Sets the minimum value for the given parameter. |void| **set_particle_flag**\ (\ particle_flag\: :ref:`ParticleFlags`, enable\: :ref:`bool`\ ) :ref:`🔗` -Enables or disables the given flag (see :ref:`ParticleFlags` for options). +Enables or disables the given particle flag. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_cpuparticles3d.rst b/classes/class_cpuparticles3d.rst index 6f19a3d19..9f2786d24 100644 --- a/classes/class_cpuparticles3d.rst +++ b/classes/class_cpuparticles3d.rst @@ -880,7 +880,7 @@ Unit vector specifying the particles' emission direction. - |void| **set_draw_order**\ (\ value\: :ref:`DrawOrder`\ ) - :ref:`DrawOrder` **get_draw_order**\ (\ ) -Particle draw order. Uses :ref:`DrawOrder` values. +Particle draw order. .. rst-class:: classref-item-separator @@ -1060,7 +1060,7 @@ The radius of the ring when using the emitter :ref:`EMISSION_SHAPE_RING`\ ) - :ref:`EmissionShape` **get_emission_shape**\ (\ ) -Particles will be emitted inside this region. See :ref:`EmissionShape` for possible values. +Particles will be emitted inside this region. .. rst-class:: classref-item-separator @@ -1921,7 +1921,7 @@ Returns the minimum value range for the given parameter. :ref:`bool` **get_particle_flag**\ (\ particle_flag\: :ref:`ParticleFlags`\ ) |const| :ref:`🔗` -Returns the enabled state of the given particle flag (see :ref:`ParticleFlags` for options). +Returns the enabled state of the given particle flag. .. rst-class:: classref-item-separator @@ -1997,9 +1997,10 @@ Sets the minimum value for the given parameter. |void| **set_particle_flag**\ (\ particle_flag\: :ref:`ParticleFlags`, enable\: :ref:`bool`\ ) :ref:`🔗` -Enables or disables the given particle flag (see :ref:`ParticleFlags` for options). +Enables or disables the given particle flag. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_crypto.rst b/classes/class_crypto.rst index d3596a96b..c3f6272b9 100644 --- a/classes/class_crypto.rst +++ b/classes/class_crypto.rst @@ -29,30 +29,30 @@ Currently, this includes asymmetric key encryption/decryption, signing/verificat .. code-tab:: gdscript var crypto = Crypto.new() - + # Generate new RSA key. var key = crypto.generate_rsa(4096) - + # Generate new self-signed certificate with the given key. var cert = crypto.generate_self_signed_certificate(key, "CN=mydomain.com,O=My Game Company,C=IT") - + # Save key and certificate in the user folder. key.save("user://generated.key") cert.save("user://generated.crt") - + # Encryption var data = "Some data" var encrypted = crypto.encrypt(key, data.to_utf8_buffer()) - + # Decryption var decrypted = crypto.decrypt(key, encrypted) - + # Signing var signature = crypto.sign(HashingContext.HASH_SHA256, data.sha256_buffer(), key) - + # Verifying var verified = crypto.verify(HashingContext.HASH_SHA256, data.sha256_buffer(), signature, key) - + # Checks assert(verified) assert(data.to_utf8_buffer() == decrypted) @@ -61,32 +61,32 @@ Currently, this includes asymmetric key encryption/decryption, signing/verificat using Godot; using System.Diagnostics; - + Crypto crypto = new Crypto(); - + // Generate new RSA key. CryptoKey key = crypto.GenerateRsa(4096); - + // Generate new self-signed certificate with the given key. X509Certificate cert = crypto.GenerateSelfSignedCertificate(key, "CN=mydomain.com,O=My Game Company,C=IT"); - + // Save key and certificate in the user folder. key.Save("user://generated.key"); cert.Save("user://generated.crt"); - + // Encryption string data = "Some data"; byte[] encrypted = crypto.Encrypt(key, data.ToUtf8Buffer()); - + // Decryption byte[] decrypted = crypto.Decrypt(key, encrypted); - + // Signing byte[] signature = crypto.Sign(HashingContext.HashType.Sha256, Data.Sha256Buffer(), key); - + // Verifying bool verified = crypto.Verify(HashingContext.HashType.Sha256, Data.Sha256Buffer(), signature, key); - + // Checks Debug.Assert(verified); Debug.Assert(data.ToUtf8Buffer() == decrypted); @@ -266,6 +266,7 @@ Sign a given ``hash`` of type ``hash_type`` with the provided private ``key``. Verify that a given ``signature`` for ``hash`` of type ``hash_type`` against the provided public ``key``. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_cryptokey.rst b/classes/class_cryptokey.rst index 8153734aa..c869f81bd 100644 --- a/classes/class_cryptokey.rst +++ b/classes/class_cryptokey.rst @@ -120,6 +120,7 @@ Saves a key to the given ``path``. If ``public_only`` is ``true``, only the publ Returns a string containing the key in PEM format. If ``public_only`` is ``true``, only the public key will be included. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_csgbox3d.rst b/classes/class_csgbox3d.rst index a06d3d965..8eed955f6 100644 --- a/classes/class_csgbox3d.rst +++ b/classes/class_csgbox3d.rst @@ -84,6 +84,7 @@ The material used to render the box. The box's width, height and depth. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_csgcombiner3d.rst b/classes/class_csgcombiner3d.rst index f9243de08..3c0ded5de 100644 --- a/classes/class_csgcombiner3d.rst +++ b/classes/class_csgcombiner3d.rst @@ -31,6 +31,7 @@ Tutorials - :doc:`Prototyping levels with CSG <../tutorials/3d/csg_tools>` .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_csgcylinder3d.rst b/classes/class_csgcylinder3d.rst index 79dd0d5f1..270da5f3b 100644 --- a/classes/class_csgcylinder3d.rst +++ b/classes/class_csgcylinder3d.rst @@ -160,6 +160,7 @@ The number of sides of the cylinder, the higher this number the more detail ther If ``true`` the normals of the cylinder are set to give a smooth effect making the cylinder seem rounded. If ``false`` the cylinder will have a flat shaded look. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_csgmesh3d.rst b/classes/class_csgmesh3d.rst index 96f68bd77..8351d4550 100644 --- a/classes/class_csgmesh3d.rst +++ b/classes/class_csgmesh3d.rst @@ -90,6 +90,7 @@ The :ref:`Mesh` resource to use as a CSG shape. \ :ref:`Mesh.ARRAY_NORMAL` is only used to determine which faces require the use of flat shading. By default, CSGMesh will ignore the mesh's vertex normals, recalculate them for each vertex and use a smooth shader. If a flat shader is required for a face, ensure that all vertex normals of the face are approximately equal. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_csgpolygon3d.rst b/classes/class_csgpolygon3d.rst index 9f1438079..2f5c355bc 100644 --- a/classes/class_csgpolygon3d.rst +++ b/classes/class_csgpolygon3d.rst @@ -476,6 +476,7 @@ When :ref:`mode` is :ref:`MODE_SPIN` is :ref:`MODE_SPIN`, the number of extrusions made. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_csgprimitive3d.rst b/classes/class_csgprimitive3d.rst index 5d758d8f5..ffa9b5d14 100644 --- a/classes/class_csgprimitive3d.rst +++ b/classes/class_csgprimitive3d.rst @@ -67,6 +67,7 @@ Property Descriptions If set, the order of the vertices in each triangle are reversed resulting in the backside of the mesh being drawn. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_csgshape3d.rst b/classes/class_csgshape3d.rst index 399f7bf00..efdbcc8df 100644 --- a/classes/class_csgshape3d.rst +++ b/classes/class_csgshape3d.rst @@ -23,15 +23,13 @@ Description This is the CSG base class that provides CSG operation support to the various CSG nodes in Godot. -\ **Performance:** CSG nodes are only intended for prototyping as they have a significant CPU performance cost. - -Consider baking final CSG operation results into static geometry that replaces the CSG nodes. +\ **Performance:** CSG nodes are only intended for prototyping as they have a significant CPU performance cost. Consider baking final CSG operation results into static geometry that replaces the CSG nodes. Individual CSG root node results can be baked to nodes with static resources with the editor menu that appears when a CSG root node is selected. Individual CSG root nodes can also be baked to static resources with scripts by calling :ref:`bake_static_mesh()` for the visual mesh or :ref:`bake_collision_shape()` for the physics collision. -Entire scenes of CSG nodes can be baked to static geometry and exported with the editor gltf scene exporter. +Entire scenes of CSG nodes can be baked to static geometry and exported with the editor glTF scene exporter: **Scene > Export As... > glTF 2.0 Scene...** .. rst-class:: classref-introduction-group @@ -149,7 +147,7 @@ Property Descriptions - |void| **set_calculate_tangents**\ (\ value\: :ref:`bool`\ ) - :ref:`bool` **is_calculating_tangents**\ (\ ) -Calculate tangents for the CSG shape which allows the use of normal maps. This is only applied on the root shape, this setting is ignored on any child. +Calculate tangents for the CSG shape which allows the use of normal and height maps. This is only applied on the root shape, this setting is ignored on any child. Setting this to ``false`` can speed up shape generation slightly. .. rst-class:: classref-item-separator @@ -278,6 +276,8 @@ Returns a baked physics :ref:`ConcavePolygonShape3D \ **Performance:** If the CSG operation results in a very detailed geometry with many faces physics performance will be very slow. Concave shapes should in general only be used for static level geometry and not with dynamic objects that are moving. +\ **Note:** CSG mesh data updates are deferred, which means they are updated with a delay of one rendered frame. To avoid getting an empty shape or outdated mesh data, make sure to call ``await get_tree().process_frame`` before using :ref:`bake_collision_shape()` in :ref:`Node._ready()` or after changing properties on the **CSGShape3D**. + .. rst-class:: classref-item-separator ---- @@ -290,6 +290,8 @@ Returns a baked physics :ref:`ConcavePolygonShape3D Returns a baked static :ref:`ArrayMesh` of this node's CSG operation result. Materials from involved CSG nodes are added as extra mesh surfaces. Returns an empty mesh if the node is not a CSG root node or has no valid geometry. +\ **Note:** CSG mesh data updates are deferred, which means they are updated with a delay of one rendered frame. To avoid getting an empty mesh or outdated mesh data, make sure to call ``await get_tree().process_frame`` before using :ref:`bake_static_mesh()` in :ref:`Node._ready()` or after changing properties on the **CSGShape3D**. + .. rst-class:: classref-item-separator ---- @@ -326,6 +328,8 @@ Returns whether or not the specified layer of the :ref:`collision_mask` with two elements, the first is the :ref:`Transform3D` of this node and the second is the root :ref:`Mesh` of this node. Only works when this node is the root shape. +\ **Note:** CSG mesh data updates are deferred, which means they are updated with a delay of one rendered frame. To avoid getting an empty shape or outdated mesh data, make sure to call ``await get_tree().process_frame`` before using :ref:`get_meshes()` in :ref:`Node._ready()` or after changing properties on the **CSGShape3D**. + .. rst-class:: classref-item-separator ---- @@ -363,6 +367,7 @@ Based on ``value``, enables or disables the specified layer in the :ref:`collisi Based on ``value``, enables or disables the specified layer in the :ref:`collision_mask`, given a ``layer_number`` between 1 and 32. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_csgsphere3d.rst b/classes/class_csgsphere3d.rst index cf5011bad..a744b9b8e 100644 --- a/classes/class_csgsphere3d.rst +++ b/classes/class_csgsphere3d.rst @@ -141,6 +141,7 @@ Number of horizontal slices for the sphere. If ``true`` the normals of the sphere are set to give a smooth effect making the sphere seem rounded. If ``false`` the sphere will have a flat shaded look. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_csgtorus3d.rst b/classes/class_csgtorus3d.rst index 010ed505b..79b6c10fa 100644 --- a/classes/class_csgtorus3d.rst +++ b/classes/class_csgtorus3d.rst @@ -160,6 +160,7 @@ The number of slices the torus is constructed of. If ``true`` the normals of the torus are set to give a smooth effect making the torus seem rounded. If ``false`` the torus will have a flat shaded look. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_csharpscript.rst b/classes/class_csharpscript.rst index ea053a096..b8c6aa2d7 100644 --- a/classes/class_csharpscript.rst +++ b/classes/class_csharpscript.rst @@ -58,6 +58,7 @@ Method Descriptions Returns a new instance of the script. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_cubemap.rst b/classes/class_cubemap.rst index ef872185d..433337010 100644 --- a/classes/class_cubemap.rst +++ b/classes/class_cubemap.rst @@ -40,10 +40,10 @@ The expected image order is X+, X-, Y+, Y-, Z+, Z- (in Godot's coordinate system .. code:: text shader_type sky; - + uniform samplerCube source_panorama : filter_linear, source_color, hint_default_black; uniform float exposure : hint_range(0, 128) = 1.0; - + void sky() { // If importing a cubemap from another engine, you may need to flip one of the `EYEDIR` components below // by replacing it with `-EYEDIR`. @@ -85,6 +85,7 @@ Method Descriptions Creates a placeholder version of this resource (:ref:`PlaceholderCubemap`). .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_cubemaparray.rst b/classes/class_cubemaparray.rst index dc7960752..bce908165 100644 --- a/classes/class_cubemaparray.rst +++ b/classes/class_cubemaparray.rst @@ -37,7 +37,7 @@ The expected image order is X+, X-, Y+, Y-, Z+, Z- (in Godot's coordinate system - `6×1 cubemap template `__\ -Multiple layers are stacked on top of each other when using the default vertical import option (with the first layer at the top). Alternatively, you can choose an horizontal layout in the import options (with the first layer at the left). +Multiple layers are stacked on top of each other when using the default vertical import option (with the first layer at the top). Alternatively, you can choose a horizontal layout in the import options (with the first layer at the left). \ **Note:** **CubemapArray** is not supported in the Compatibility renderer due to graphics API limitations. @@ -71,6 +71,7 @@ Method Descriptions Creates a placeholder version of this resource (:ref:`PlaceholderCubemapArray`). .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_curve.rst b/classes/class_curve.rst index 847cd00d9..de49a893f 100644 --- a/classes/class_curve.rst +++ b/classes/class_curve.rst @@ -516,6 +516,7 @@ Sets the right tangent angle for the point at ``index`` to ``tangent``. Assigns the vertical position ``y`` to the point at ``index``. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_curve2d.rst b/classes/class_curve2d.rst index 18e27bc57..44bf17fa3 100644 --- a/classes/class_curve2d.rst +++ b/classes/class_curve2d.rst @@ -387,6 +387,7 @@ Returns a list of points along the curve, with almost uniform density. ``max_sta \ ``tolerance_length`` controls the maximal distance between two neighboring points, before the segment has to be subdivided. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_curve3d.rst b/classes/class_curve3d.rst index a5d77ffe4..6c14848d1 100644 --- a/classes/class_curve3d.rst +++ b/classes/class_curve3d.rst @@ -490,6 +490,7 @@ Returns a list of points along the curve, with almost uniform density. ``max_sta \ ``tolerance_length`` controls the maximal distance between two neighboring points, before the segment has to be subdivided. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_curvetexture.rst b/classes/class_curvetexture.rst index 39757dc6a..86d49417c 100644 --- a/classes/class_curvetexture.rst +++ b/classes/class_curvetexture.rst @@ -129,6 +129,7 @@ The format the texture should be generated with. When passing a CurveTexture as The width of the texture (in pixels). Higher values make it possible to represent high-frequency data better (such as sudden direction changes), at the cost of increased generation time and memory usage. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_curvexyztexture.rst b/classes/class_curvexyztexture.rst index 4d675adf5..7810289bb 100644 --- a/classes/class_curvexyztexture.rst +++ b/classes/class_curvexyztexture.rst @@ -117,6 +117,7 @@ The :ref:`Curve` that is rendered onto the texture's blue channel. The width of the texture (in pixels). Higher values make it possible to represent high-frequency data better (such as sudden direction changes), at the cost of increased generation time and memory usage. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_cylindermesh.rst b/classes/class_cylindermesh.rst index 89e42b5b7..be996f226 100644 --- a/classes/class_cylindermesh.rst +++ b/classes/class_cylindermesh.rst @@ -174,6 +174,7 @@ Number of edge rings along the height of the cylinder. Changing :ref:`rings`. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_cylindershape3d.rst b/classes/class_cylindershape3d.rst index bd33d1a93..9861936bd 100644 --- a/classes/class_cylindershape3d.rst +++ b/classes/class_cylindershape3d.rst @@ -90,6 +90,7 @@ The cylinder's height. The cylinder's radius. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_dampedspringjoint2d.rst b/classes/class_dampedspringjoint2d.rst index 768af8745..b677e3eee 100644 --- a/classes/class_dampedspringjoint2d.rst +++ b/classes/class_dampedspringjoint2d.rst @@ -19,7 +19,7 @@ A physics joint that connects two 2D physics bodies with a spring-like force. Description ----------- -A physics joint that connects two 2D physics bodies with a spring-like force. This resembles a spring that always wants to stretch to a given length. +A physics joint that connects two 2D physics bodies with a spring-like force. This behaves like a spring that always wants to stretch to a given length. .. rst-class:: classref-reftable-group @@ -113,6 +113,7 @@ When the bodies attached to the spring joint move they stretch or squash it. The The higher the value, the less the bodies attached to the joint will deform it. The joint applies an opposing force to the bodies, the product of the stiffness multiplied by the size difference from its resting length. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_decal.rst b/classes/class_decal.rst index 67564ad0d..cce137840 100644 --- a/classes/class_decal.rst +++ b/classes/class_decal.rst @@ -491,6 +491,7 @@ One case where this is better than accessing the texture directly is when you wa .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_dictionary.rst b/classes/class_dictionary.rst index cb1f17a6b..8ec473bfe 100644 --- a/classes/class_dictionary.rst +++ b/classes/class_dictionary.rst @@ -29,16 +29,16 @@ Creating a dictionary: .. code-tab:: gdscript var my_dict = {} # Creates an empty dictionary. - + var dict_variable_key = "Another key name" var dict_variable_value = "value2" var another_dict = { "Some key name": "value1", dict_variable_key: dict_variable_value, } - - var points_dict = {"White": 50, "Yellow": 75, "Orange": 100} - + + var points_dict = { "White": 50, "Yellow": 75, "Orange": 100 } + # Alternative Lua-style syntax. # Doesn't require quotes around keys, but only string constants can be used as key names. # Additionally, key names must start with a letter or an underscore. @@ -52,9 +52,9 @@ Creating a dictionary: var myDict = new Godot.Collections.Dictionary(); // Creates an empty dictionary. var pointsDict = new Godot.Collections.Dictionary { - {"White", 50}, - {"Yellow", 75}, - {"Orange", 100} + { "White", 50 }, + { "Yellow", 75 }, + { "Orange", 100 }, }; @@ -67,7 +67,7 @@ You can access a dictionary's value by referencing its corresponding key. In the .. code-tab:: gdscript @export_enum("White", "Yellow", "Orange") var my_color: String - var points_dict = {"White": 50, "Yellow": 75, "Orange": 100} + var points_dict = { "White": 50, "Yellow": 75, "Orange": 100 } func _ready(): # We can't use dot syntax here as `my_color` is a variable. var points = points_dict[my_color] @@ -78,11 +78,11 @@ You can access a dictionary's value by referencing its corresponding key. In the public string MyColor { get; set; } private Godot.Collections.Dictionary _pointsDict = new Godot.Collections.Dictionary { - {"White", 50}, - {"Yellow", 75}, - {"Orange", 100} + { "White", 50 }, + { "Yellow", 75 }, + { "Orange", 100 }, }; - + public override void _Ready() { int points = (int)_pointsDict[MyColor]; @@ -107,7 +107,7 @@ Dictionaries can contain more complex data: var myDict = new Godot.Collections.Dictionary { - {"First Array", new Godot.Collections.Array{1, 2, 3, 4}} + { "First Array", new Godot.Collections.Array { 1, 2, 3, 4 } } }; @@ -119,16 +119,16 @@ To add a key to an existing dictionary, access it like an existing key and assig .. code-tab:: gdscript - var points_dict = {"White": 50, "Yellow": 75, "Orange": 100} + var points_dict = { "White": 50, "Yellow": 75, "Orange": 100 } points_dict["Blue"] = 150 # Add "Blue" as a key and assign 150 as its value. .. code-tab:: csharp var pointsDict = new Godot.Collections.Dictionary { - {"White", 50}, - {"Yellow", 75}, - {"Orange", 100} + { "White", 50 }, + { "Yellow", 75 }, + { "Orange", 100 }, }; pointsDict["Blue"] = 150; // Add "Blue" as a key and assign 150 as its value. @@ -148,7 +148,7 @@ Finally, dictionaries can contain different types of keys and values in the same "String Key": 5, 4: [1, 2, 3], 7: "Hello", - "sub_dict": {"sub_key": "Nested value"}, + "sub_dict": { "sub_key": "Nested value" }, } .. code-tab:: csharp @@ -156,10 +156,10 @@ Finally, dictionaries can contain different types of keys and values in the same // This is a valid dictionary. // To access the string "Nested value" below, use `((Godot.Collections.Dictionary)myDict["sub_dict"])["sub_key"]`. var myDict = new Godot.Collections.Dictionary { - {"String Key", 5}, - {4, new Godot.Collections.Array{1,2,3}}, - {7, "Hello"}, - {"sub_dict", new Godot.Collections.Dictionary{{"sub_key", "Nested value"}}} + { "String Key", 5 }, + { 4, new Godot.Collections.Array { 1, 2, 3 } }, + { 7, "Hello" }, + { "sub_dict", new Godot.Collections.Dictionary { { "sub_key", "Nested value" } } }, }; @@ -171,13 +171,13 @@ The keys of a dictionary can be iterated with the ``for`` keyword: .. code-tab:: gdscript - var groceries = {"Orange": 20, "Apple": 2, "Banana": 4} + var groceries = { "Orange": 20, "Apple": 2, "Banana": 4 } for fruit in groceries: var amount = groceries[fruit] .. code-tab:: csharp - var groceries = new Godot.Collections.Dictionary{{"Orange", 20}, {"Apple", 2}, {"Banana", 4}}; + var groceries = new Godot.Collections.Dictionary { { "Orange", 20 }, { "Apple", 2 }, { "Banana", 4 } }; foreach (var (fruit, amount) in groceries) { // `fruit` is the key, `amount` is the value. @@ -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:`DeepDuplicateMode`. By default, only internal resources will be duplicated (recursively). .. rst-class:: classref-item-separator @@ -535,7 +555,7 @@ Returns ``true`` if the dictionary contains an entry with the given ``key``. "Godot" : 4, 210 : null, } - + print(my_dict.has("Godot")) # Prints true print(my_dict.has(210)) # Prints true print(my_dict.has(4)) # Prints false @@ -547,7 +567,7 @@ Returns ``true`` if the dictionary contains an entry with the given ``key``. { "Godot", 4 }, { 210, default }, }; - + GD.Print(myDict.ContainsKey("Godot")); // Prints True GD.Print(myDict.ContainsKey(210)); // Prints True GD.Print(myDict.ContainsKey(4)); // Prints False @@ -558,7 +578,7 @@ In GDScript, this is equivalent to the ``in`` operator: :: - if "Godot" in {"Godot": 4}: + if "Godot" in { "Godot": 4 }: print("The key is here!") # Will be printed. \ **Note:** This method returns ``true`` as long as the ``key`` exists, even if its corresponding value is ``null``. @@ -577,7 +597,7 @@ Returns ``true`` if the dictionary contains all keys in the given ``keys`` array :: - var data = {"width" : 10, "height" : 20} + var data = { "width": 10, "height": 20 } data.has_all(["height", "width"]) # Returns true .. rst-class:: classref-item-separator @@ -597,16 +617,16 @@ Returns a hashed 32-bit integer value representing the dictionary contents. .. code-tab:: gdscript - var dict1 = {"A": 10, "B": 2} - var dict2 = {"A": 10, "B": 2} - + var dict1 = { "A": 10, "B": 2 } + var dict2 = { "A": 10, "B": 2 } + print(dict1.hash() == dict2.hash()) # Prints true .. code-tab:: csharp - var dict1 = new Godot.Collections.Dictionary{{"A", 10}, {"B", 2}}; - var dict2 = new Godot.Collections.Dictionary{{"A", 10}, {"B", 2}}; - + var dict1 = new Godot.Collections.Dictionary { { "A", 10 }, { "B", 2 } }; + var dict2 = new Godot.Collections.Dictionary { { "A", 10 }, { "B", 2 } }; + // Godot.Collections.Dictionary has no Hash() method. Use GD.Hash() instead. GD.Print(GD.Hash(dict1) == GD.Hash(dict2)); // Prints True @@ -755,11 +775,11 @@ Adds entries from ``dictionary`` to this dictionary. By default, duplicate keys var dict = { "item": "sword", "quantity": 2 } var other_dict = { "quantity": 15, "color": "silver" } - + # Overwriting of existing keys is disabled by default. dict.merge(other_dict) print(dict) # { "item": "sword", "quantity": 2, "color": "silver" } - + # With overwriting of existing keys enabled. dict.merge(other_dict, true) print(dict) # { "item": "sword", "quantity": 15, "color": "silver" } @@ -771,17 +791,17 @@ Adds entries from ``dictionary`` to this dictionary. By default, duplicate keys ["item"] = "sword", ["quantity"] = 2, }; - + var otherDict = new Godot.Collections.Dictionary { ["quantity"] = 15, ["color"] = "silver", }; - + // Overwriting of existing keys is disabled by default. dict.Merge(otherDict); GD.Print(dict); // { "item": "sword", "quantity": 2, "color": "silver" } - + // With overwriting of existing keys enabled. dict.Merge(otherDict, true); GD.Print(dict); // { "item": "sword", "quantity": 15, "color": "silver" } @@ -859,7 +879,20 @@ Returns the number of entries in the dictionary. Empty dictionaries (``{ }``) al |void| **sort**\ (\ ) :ref:`🔗` -Sorts the dictionary in-place by key. This can be used to ensure dictionaries with the same contents produce equivalent results when getting the :ref:`keys()`, getting the :ref:`values()`, and converting to a string. This is also useful when wanting a JSON representation consistent with what is in memory, and useful for storing on a database that requires dictionaries to be sorted. +Sorts the dictionary in ascending order, by key. The final order is dependent on the "less than" (``<``) comparison between keys. + + +.. tabs:: + + .. code-tab:: gdscript + + var numbers = { "c": 2, "a": 0, "b": 1 } + numbers.sort() + print(numbers) # Prints { "a": 0, "b": 1, "c": 2 } + + + +This method ensures that the dictionary's entries are ordered consistently when :ref:`keys()` or :ref:`values()` are called, or when the dictionary needs to be converted to a string through :ref:`@GlobalScope.str()` or :ref:`JSON.stringify()`. .. rst-class:: classref-item-separator @@ -917,6 +950,7 @@ Returns ``true`` if the two dictionaries contain the same keys and values. The o Returns the corresponding value for the given ``key`` in the dictionary. If the entry does not exist, fails and returns ``null``. For safe access, use :ref:`get()` or :ref:`has()`. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_diraccess.rst b/classes/class_diraccess.rst index 1a7764015..14d4e8211 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| | @@ -165,6 +167,8 @@ Methods +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`is_case_sensitive`\ (\ path\: :ref:`String`\ ) |const| | +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`is_equivalent`\ (\ path_a\: :ref:`String`, path_b\: :ref:`String`\ ) |const| | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`is_link`\ (\ path\: :ref:`String`\ ) | +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`Error` | :ref:`list_dir_begin`\ (\ ) | @@ -442,7 +446,7 @@ Use :ref:`get_directories()` if you want On Windows, returns the number of drives (partitions) mounted on the current filesystem. -On macOS, returns the number of mounted volumes. +On macOS and Android, returns the number of mounted volumes. On Linux, returns the number of mounted volumes and GTK 3 bookmarks. @@ -464,6 +468,8 @@ On macOS, returns the path to the mounted volume passed as an argument. On Linux, returns the path to the mounted volume or GTK 3 bookmark passed as an argument. +On Android (API level 30+), returns the path to the mounted volume as an argument. + On other platforms, or if the requested drive does not exist, the method returns an empty String. .. rst-class:: classref-item-separator @@ -502,6 +508,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 @@ -568,6 +588,18 @@ Returns ``true`` if the file system or directory use case sensitive file names. ---- +.. _class_DirAccess_method_is_equivalent: + +.. rst-class:: classref-method + +:ref:`bool` **is_equivalent**\ (\ path_a\: :ref:`String`, path_b\: :ref:`String`\ ) |const| :ref:`🔗` + +Returns ``true`` if paths ``path_a`` and ``path_b`` resolve to the same file system object. Returns ``false`` otherwise, even if the files are bit-for-bit identical (e.g., identical copies of the file that are not symbolic links). + +.. rst-class:: classref-item-separator + +---- + .. _class_DirAccess_method_is_link: .. rst-class:: classref-method @@ -741,6 +773,7 @@ Returns one of the :ref:`Error` code constants (:ref:`@ Static version of :ref:`rename()`. Supports only absolute paths. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_directionallight2d.rst b/classes/class_directionallight2d.rst index cf3a13a4e..0db23a3ca 100644 --- a/classes/class_directionallight2d.rst +++ b/classes/class_directionallight2d.rst @@ -24,6 +24,8 @@ Description A directional light is a type of :ref:`Light2D` node that models an infinite number of parallel rays covering the entire scene. It is used for lights with strong intensity that are located far away from the scene (for example: to model sunlight or moonlight). +Light is emitted in the +Y direction of the node's global basis. For an unrotated light, this means that the light is emitted downwards. The position of the node is ignored; only the basis is used to determine light direction. + \ **Note:** **DirectionalLight2D** does not support light cull masks (but it supports shadow cull masks). It will always light up 2D nodes, regardless of the 2D node's :ref:`CanvasItem.light_mask`. .. rst-class:: classref-introduction-group @@ -87,6 +89,7 @@ The height of the light. Used with 2D normal mapping. Ranges from 0 (parallel to The maximum distance from the camera center objects can be before their shadows are culled (in pixels). Decreasing this value can prevent objects located outside the camera from casting shadows (while also improving performance). :ref:`Camera2D.zoom` is not taken into account by :ref:`max_distance`, which means that at higher zoom values, shadows will appear to fade out sooner when zooming onto a given point. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_directionallight3d.rst b/classes/class_directionallight3d.rst index 4417533af..520fe3d9a 100644 --- a/classes/class_directionallight3d.rst +++ b/classes/class_directionallight3d.rst @@ -22,7 +22,9 @@ Directional light from a distance, as from the Sun. Description ----------- -A directional light is a type of :ref:`Light3D` node that models an infinite number of parallel rays covering the entire scene. It is used for lights with strong intensity that are located far away from the scene to model sunlight or moonlight. The worldspace location of the DirectionalLight3D transform (origin) is ignored. Only the basis is used to determine light direction. +A directional light is a type of :ref:`Light3D` node that models an infinite number of parallel rays covering the entire scene. It is used for lights with strong intensity that are located far away from the scene to model sunlight or moonlight. + +Light is emitted in the -Z direction of the node's global basis. For an unrotated light, this means that the light is emitted forwards, illuminating the front side of a 3D model (see :ref:`Vector3.FORWARD` and :ref:`Vector3.MODEL_FRONT`). The position of the node is ignored; only the basis is used to determine light direction. .. rst-class:: classref-introduction-group @@ -205,7 +207,7 @@ The maximum distance for shadow splits. Increasing this value will make directio - |void| **set_shadow_mode**\ (\ value\: :ref:`ShadowMode`\ ) - :ref:`ShadowMode` **get_shadow_mode**\ (\ ) -The light's shadow rendering algorithm. See :ref:`ShadowMode`. +The light's shadow rendering algorithm. .. rst-class:: classref-item-separator @@ -290,9 +292,10 @@ The distance from shadow split 2 to split 3. Relative to :ref:`directional_shado - |void| **set_sky_mode**\ (\ value\: :ref:`SkyMode`\ ) - :ref:`SkyMode` **get_sky_mode**\ (\ ) -Set whether this **DirectionalLight3D** is visible in the sky, in the scene, or both in the sky and in the scene. See :ref:`SkyMode` for options. +Whether this **DirectionalLight3D** is visible in the sky, in the scene, or both in the sky and in the scene. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_displayserver.rst b/classes/class_displayserver.rst index 54857261e..5b4b5b478 100644 --- a/classes/class_displayserver.rst +++ b/classes/class_displayserver.rst @@ -31,387 +31,543 @@ Methods .. table:: :widths: auto - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`beep`\ (\ ) |const| | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`String` | :ref:`clipboard_get`\ (\ ) |const| | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Image` | :ref:`clipboard_get_image`\ (\ ) |const| | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`String` | :ref:`clipboard_get_primary`\ (\ ) |const| | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`clipboard_has`\ (\ ) |const| | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`clipboard_has_image`\ (\ ) |const| | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`clipboard_set`\ (\ clipboard\: :ref:`String`\ ) | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`clipboard_set_primary`\ (\ clipboard_primary\: :ref:`String`\ ) | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`create_status_indicator`\ (\ icon\: :ref:`Texture2D`, tooltip\: :ref:`String`, callback\: :ref:`Callable`\ ) | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`CursorShape` | :ref:`cursor_get_shape`\ (\ ) |const| | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`cursor_set_custom_image`\ (\ cursor\: :ref:`Resource`, shape\: :ref:`CursorShape` = 0, hotspot\: :ref:`Vector2` = Vector2(0, 0)\ ) | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`cursor_set_shape`\ (\ shape\: :ref:`CursorShape`\ ) | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`delete_status_indicator`\ (\ id\: :ref:`int`\ ) | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Error` | :ref:`dialog_input_text`\ (\ title\: :ref:`String`, description\: :ref:`String`, existing_text\: :ref:`String`, callback\: :ref:`Callable`\ ) | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Error` | :ref:`dialog_show`\ (\ title\: :ref:`String`, description\: :ref:`String`, buttons\: :ref:`PackedStringArray`, callback\: :ref:`Callable`\ ) | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`enable_for_stealing_focus`\ (\ process_id\: :ref:`int`\ ) | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Error` | :ref:`file_dialog_show`\ (\ title\: :ref:`String`, current_directory\: :ref:`String`, filename\: :ref:`String`, show_hidden\: :ref:`bool`, mode\: :ref:`FileDialogMode`, filters\: :ref:`PackedStringArray`, callback\: :ref:`Callable`\ ) | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Error` | :ref:`file_dialog_with_options_show`\ (\ title\: :ref:`String`, current_directory\: :ref:`String`, root\: :ref:`String`, filename\: :ref:`String`, show_hidden\: :ref:`bool`, mode\: :ref:`FileDialogMode`, filters\: :ref:`PackedStringArray`, options\: :ref:`Array`\[:ref:`Dictionary`\], callback\: :ref:`Callable`\ ) | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`force_process_and_drop_events`\ (\ ) | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Color` | :ref:`get_accent_color`\ (\ ) |const| | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Color` | :ref:`get_base_color`\ (\ ) |const| | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Array`\[:ref:`Rect2`\] | :ref:`get_display_cutouts`\ (\ ) |const| | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Rect2i` | :ref:`get_display_safe_area`\ (\ ) |const| | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`get_keyboard_focus_screen`\ (\ ) |const| | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`String` | :ref:`get_name`\ (\ ) |const| | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`get_primary_screen`\ (\ ) |const| | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`get_screen_count`\ (\ ) |const| | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`get_screen_from_rect`\ (\ rect\: :ref:`Rect2`\ ) |const| | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`get_swap_cancel_ok`\ (\ ) | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`get_window_at_screen_position`\ (\ position\: :ref:`Vector2i`\ ) |const| | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`PackedInt32Array` | :ref:`get_window_list`\ (\ ) |const| | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`global_menu_add_check_item`\ (\ menu_root\: :ref:`String`, label\: :ref:`String`, callback\: :ref:`Callable` = Callable(), key_callback\: :ref:`Callable` = Callable(), tag\: :ref:`Variant` = null, accelerator\: :ref:`Key` = 0, index\: :ref:`int` = -1\ ) | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`global_menu_add_icon_check_item`\ (\ menu_root\: :ref:`String`, icon\: :ref:`Texture2D`, label\: :ref:`String`, callback\: :ref:`Callable` = Callable(), key_callback\: :ref:`Callable` = Callable(), tag\: :ref:`Variant` = null, accelerator\: :ref:`Key` = 0, index\: :ref:`int` = -1\ ) | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`global_menu_add_icon_item`\ (\ menu_root\: :ref:`String`, icon\: :ref:`Texture2D`, label\: :ref:`String`, callback\: :ref:`Callable` = Callable(), key_callback\: :ref:`Callable` = Callable(), tag\: :ref:`Variant` = null, accelerator\: :ref:`Key` = 0, index\: :ref:`int` = -1\ ) | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`global_menu_add_icon_radio_check_item`\ (\ menu_root\: :ref:`String`, icon\: :ref:`Texture2D`, label\: :ref:`String`, callback\: :ref:`Callable` = Callable(), key_callback\: :ref:`Callable` = Callable(), tag\: :ref:`Variant` = null, accelerator\: :ref:`Key` = 0, index\: :ref:`int` = -1\ ) | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`global_menu_add_item`\ (\ menu_root\: :ref:`String`, label\: :ref:`String`, callback\: :ref:`Callable` = Callable(), key_callback\: :ref:`Callable` = Callable(), tag\: :ref:`Variant` = null, accelerator\: :ref:`Key` = 0, index\: :ref:`int` = -1\ ) | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`global_menu_add_multistate_item`\ (\ menu_root\: :ref:`String`, label\: :ref:`String`, max_states\: :ref:`int`, default_state\: :ref:`int`, callback\: :ref:`Callable` = Callable(), key_callback\: :ref:`Callable` = Callable(), tag\: :ref:`Variant` = null, accelerator\: :ref:`Key` = 0, index\: :ref:`int` = -1\ ) | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`global_menu_add_radio_check_item`\ (\ menu_root\: :ref:`String`, label\: :ref:`String`, callback\: :ref:`Callable` = Callable(), key_callback\: :ref:`Callable` = Callable(), tag\: :ref:`Variant` = null, accelerator\: :ref:`Key` = 0, index\: :ref:`int` = -1\ ) | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`global_menu_add_separator`\ (\ menu_root\: :ref:`String`, index\: :ref:`int` = -1\ ) | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`global_menu_add_submenu_item`\ (\ menu_root\: :ref:`String`, label\: :ref:`String`, submenu\: :ref:`String`, index\: :ref:`int` = -1\ ) | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`global_menu_clear`\ (\ menu_root\: :ref:`String`\ ) | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Key` | :ref:`global_menu_get_item_accelerator`\ (\ menu_root\: :ref:`String`, idx\: :ref:`int`\ ) |const| | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Callable` | :ref:`global_menu_get_item_callback`\ (\ menu_root\: :ref:`String`, idx\: :ref:`int`\ ) |const| | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`global_menu_get_item_count`\ (\ menu_root\: :ref:`String`\ ) |const| | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Texture2D` | :ref:`global_menu_get_item_icon`\ (\ menu_root\: :ref:`String`, idx\: :ref:`int`\ ) |const| | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`global_menu_get_item_indentation_level`\ (\ menu_root\: :ref:`String`, idx\: :ref:`int`\ ) |const| | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`global_menu_get_item_index_from_tag`\ (\ menu_root\: :ref:`String`, tag\: :ref:`Variant`\ ) |const| | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`global_menu_get_item_index_from_text`\ (\ menu_root\: :ref:`String`, text\: :ref:`String`\ ) |const| | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Callable` | :ref:`global_menu_get_item_key_callback`\ (\ menu_root\: :ref:`String`, idx\: :ref:`int`\ ) |const| | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`global_menu_get_item_max_states`\ (\ menu_root\: :ref:`String`, idx\: :ref:`int`\ ) |const| | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`global_menu_get_item_state`\ (\ menu_root\: :ref:`String`, idx\: :ref:`int`\ ) |const| | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`String` | :ref:`global_menu_get_item_submenu`\ (\ menu_root\: :ref:`String`, idx\: :ref:`int`\ ) |const| | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Variant` | :ref:`global_menu_get_item_tag`\ (\ menu_root\: :ref:`String`, idx\: :ref:`int`\ ) |const| | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`String` | :ref:`global_menu_get_item_text`\ (\ menu_root\: :ref:`String`, idx\: :ref:`int`\ ) |const| | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`String` | :ref:`global_menu_get_item_tooltip`\ (\ menu_root\: :ref:`String`, idx\: :ref:`int`\ ) |const| | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Dictionary` | :ref:`global_menu_get_system_menu_roots`\ (\ ) |const| | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`global_menu_is_item_checkable`\ (\ menu_root\: :ref:`String`, idx\: :ref:`int`\ ) |const| | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`global_menu_is_item_checked`\ (\ menu_root\: :ref:`String`, idx\: :ref:`int`\ ) |const| | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`global_menu_is_item_disabled`\ (\ menu_root\: :ref:`String`, idx\: :ref:`int`\ ) |const| | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`global_menu_is_item_hidden`\ (\ menu_root\: :ref:`String`, idx\: :ref:`int`\ ) |const| | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`global_menu_is_item_radio_checkable`\ (\ menu_root\: :ref:`String`, idx\: :ref:`int`\ ) |const| | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`global_menu_remove_item`\ (\ menu_root\: :ref:`String`, idx\: :ref:`int`\ ) | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`global_menu_set_item_accelerator`\ (\ menu_root\: :ref:`String`, idx\: :ref:`int`, keycode\: :ref:`Key`\ ) | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`global_menu_set_item_callback`\ (\ menu_root\: :ref:`String`, idx\: :ref:`int`, callback\: :ref:`Callable`\ ) | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`global_menu_set_item_checkable`\ (\ menu_root\: :ref:`String`, idx\: :ref:`int`, checkable\: :ref:`bool`\ ) | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`global_menu_set_item_checked`\ (\ menu_root\: :ref:`String`, idx\: :ref:`int`, checked\: :ref:`bool`\ ) | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`global_menu_set_item_disabled`\ (\ menu_root\: :ref:`String`, idx\: :ref:`int`, disabled\: :ref:`bool`\ ) | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`global_menu_set_item_hidden`\ (\ menu_root\: :ref:`String`, idx\: :ref:`int`, hidden\: :ref:`bool`\ ) | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`global_menu_set_item_hover_callbacks`\ (\ menu_root\: :ref:`String`, idx\: :ref:`int`, callback\: :ref:`Callable`\ ) | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`global_menu_set_item_icon`\ (\ menu_root\: :ref:`String`, idx\: :ref:`int`, icon\: :ref:`Texture2D`\ ) | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`global_menu_set_item_indentation_level`\ (\ menu_root\: :ref:`String`, idx\: :ref:`int`, level\: :ref:`int`\ ) | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`global_menu_set_item_key_callback`\ (\ menu_root\: :ref:`String`, idx\: :ref:`int`, key_callback\: :ref:`Callable`\ ) | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`global_menu_set_item_max_states`\ (\ menu_root\: :ref:`String`, idx\: :ref:`int`, max_states\: :ref:`int`\ ) | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`global_menu_set_item_radio_checkable`\ (\ menu_root\: :ref:`String`, idx\: :ref:`int`, checkable\: :ref:`bool`\ ) | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`global_menu_set_item_state`\ (\ menu_root\: :ref:`String`, idx\: :ref:`int`, state\: :ref:`int`\ ) | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`global_menu_set_item_submenu`\ (\ menu_root\: :ref:`String`, idx\: :ref:`int`, submenu\: :ref:`String`\ ) | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`global_menu_set_item_tag`\ (\ menu_root\: :ref:`String`, idx\: :ref:`int`, tag\: :ref:`Variant`\ ) | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`global_menu_set_item_text`\ (\ menu_root\: :ref:`String`, idx\: :ref:`int`, text\: :ref:`String`\ ) | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`global_menu_set_item_tooltip`\ (\ menu_root\: :ref:`String`, idx\: :ref:`int`, tooltip\: :ref:`String`\ ) | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`global_menu_set_popup_callbacks`\ (\ menu_root\: :ref:`String`, open_callback\: :ref:`Callable`, close_callback\: :ref:`Callable`\ ) | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`has_additional_outputs`\ (\ ) |const| | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`has_feature`\ (\ feature\: :ref:`Feature`\ ) |const| | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`has_hardware_keyboard`\ (\ ) |const| | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`help_set_search_callbacks`\ (\ search_callback\: :ref:`Callable`, action_callback\: :ref:`Callable`\ ) | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Vector2i` | :ref:`ime_get_selection`\ (\ ) |const| | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`String` | :ref:`ime_get_text`\ (\ ) |const| | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`is_dark_mode`\ (\ ) |const| | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`is_dark_mode_supported`\ (\ ) |const| | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`is_touchscreen_available`\ (\ ) |const| | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`is_window_transparency_available`\ (\ ) |const| | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`keyboard_get_current_layout`\ (\ ) |const| | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Key` | :ref:`keyboard_get_keycode_from_physical`\ (\ keycode\: :ref:`Key`\ ) |const| | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Key` | :ref:`keyboard_get_label_from_physical`\ (\ keycode\: :ref:`Key`\ ) |const| | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`keyboard_get_layout_count`\ (\ ) |const| | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`String` | :ref:`keyboard_get_layout_language`\ (\ index\: :ref:`int`\ ) |const| | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`String` | :ref:`keyboard_get_layout_name`\ (\ index\: :ref:`int`\ ) |const| | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`keyboard_set_current_layout`\ (\ index\: :ref:`int`\ ) | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |bitfield|\[:ref:`MouseButtonMask`\] | :ref:`mouse_get_button_state`\ (\ ) |const| | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`MouseMode` | :ref:`mouse_get_mode`\ (\ ) |const| | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Vector2i` | :ref:`mouse_get_position`\ (\ ) |const| | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`mouse_set_mode`\ (\ mouse_mode\: :ref:`MouseMode`\ ) | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`process_events`\ (\ ) | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`register_additional_output`\ (\ object\: :ref:`Object`\ ) | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`screen_get_dpi`\ (\ screen\: :ref:`int` = -1\ ) |const| | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Image` | :ref:`screen_get_image`\ (\ screen\: :ref:`int` = -1\ ) |const| | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Image` | :ref:`screen_get_image_rect`\ (\ rect\: :ref:`Rect2i`\ ) |const| | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`float` | :ref:`screen_get_max_scale`\ (\ ) |const| | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`ScreenOrientation` | :ref:`screen_get_orientation`\ (\ screen\: :ref:`int` = -1\ ) |const| | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Color` | :ref:`screen_get_pixel`\ (\ position\: :ref:`Vector2i`\ ) |const| | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Vector2i` | :ref:`screen_get_position`\ (\ screen\: :ref:`int` = -1\ ) |const| | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`float` | :ref:`screen_get_refresh_rate`\ (\ screen\: :ref:`int` = -1\ ) |const| | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`float` | :ref:`screen_get_scale`\ (\ screen\: :ref:`int` = -1\ ) |const| | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Vector2i` | :ref:`screen_get_size`\ (\ screen\: :ref:`int` = -1\ ) |const| | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Rect2i` | :ref:`screen_get_usable_rect`\ (\ screen\: :ref:`int` = -1\ ) |const| | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`screen_is_kept_on`\ (\ ) |const| | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`screen_set_keep_on`\ (\ enable\: :ref:`bool`\ ) | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`screen_set_orientation`\ (\ orientation\: :ref:`ScreenOrientation`, screen\: :ref:`int` = -1\ ) | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`set_icon`\ (\ image\: :ref:`Image`\ ) | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`set_native_icon`\ (\ filename\: :ref:`String`\ ) | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`set_system_theme_change_callback`\ (\ callable\: :ref:`Callable`\ ) | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`show_emoji_and_symbol_picker`\ (\ ) |const| | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Rect2` | :ref:`status_indicator_get_rect`\ (\ id\: :ref:`int`\ ) |const| | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`status_indicator_set_callback`\ (\ id\: :ref:`int`, callback\: :ref:`Callable`\ ) | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`status_indicator_set_icon`\ (\ id\: :ref:`int`, icon\: :ref:`Texture2D`\ ) | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`status_indicator_set_menu`\ (\ id\: :ref:`int`, menu_rid\: :ref:`RID`\ ) | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`status_indicator_set_tooltip`\ (\ id\: :ref:`int`, tooltip\: :ref:`String`\ ) | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`String` | :ref:`tablet_get_current_driver`\ (\ ) |const| | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`tablet_get_driver_count`\ (\ ) |const| | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`String` | :ref:`tablet_get_driver_name`\ (\ idx\: :ref:`int`\ ) |const| | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`tablet_set_current_driver`\ (\ name\: :ref:`String`\ ) | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Array`\[:ref:`Dictionary`\] | :ref:`tts_get_voices`\ (\ ) |const| | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`PackedStringArray` | :ref:`tts_get_voices_for_language`\ (\ language\: :ref:`String`\ ) |const| | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`tts_is_paused`\ (\ ) |const| | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`tts_is_speaking`\ (\ ) |const| | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`tts_pause`\ (\ ) | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`tts_resume`\ (\ ) | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`tts_set_utterance_callback`\ (\ event\: :ref:`TTSUtteranceEvent`, callable\: :ref:`Callable`\ ) | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`tts_speak`\ (\ text\: :ref:`String`, voice\: :ref:`String`, volume\: :ref:`int` = 50, pitch\: :ref:`float` = 1.0, rate\: :ref:`float` = 1.0, utterance_id\: :ref:`int` = 0, interrupt\: :ref:`bool` = false\ ) | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`tts_stop`\ (\ ) | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`unregister_additional_output`\ (\ object\: :ref:`Object`\ ) | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`virtual_keyboard_get_height`\ (\ ) |const| | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`virtual_keyboard_hide`\ (\ ) | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`virtual_keyboard_show`\ (\ existing_text\: :ref:`String`, position\: :ref:`Rect2` = Rect2(0, 0, 0, 0), type\: :ref:`VirtualKeyboardType` = 0, max_length\: :ref:`int` = -1, cursor_start\: :ref:`int` = -1, cursor_end\: :ref:`int` = -1\ ) | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`warp_mouse`\ (\ position\: :ref:`Vector2i`\ ) | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`window_can_draw`\ (\ window_id\: :ref:`int` = 0\ ) |const| | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`window_get_active_popup`\ (\ ) |const| | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`window_get_attached_instance_id`\ (\ window_id\: :ref:`int` = 0\ ) |const| | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`window_get_current_screen`\ (\ window_id\: :ref:`int` = 0\ ) |const| | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`window_get_flag`\ (\ flag\: :ref:`WindowFlags`, window_id\: :ref:`int` = 0\ ) |const| | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Vector2i` | :ref:`window_get_max_size`\ (\ window_id\: :ref:`int` = 0\ ) |const| | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Vector2i` | :ref:`window_get_min_size`\ (\ window_id\: :ref:`int` = 0\ ) |const| | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`WindowMode` | :ref:`window_get_mode`\ (\ window_id\: :ref:`int` = 0\ ) |const| | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`window_get_native_handle`\ (\ handle_type\: :ref:`HandleType`, window_id\: :ref:`int` = 0\ ) |const| | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Rect2i` | :ref:`window_get_popup_safe_rect`\ (\ window\: :ref:`int`\ ) |const| | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Vector2i` | :ref:`window_get_position`\ (\ window_id\: :ref:`int` = 0\ ) |const| | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Vector2i` | :ref:`window_get_position_with_decorations`\ (\ window_id\: :ref:`int` = 0\ ) |const| | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Vector3i` | :ref:`window_get_safe_title_margins`\ (\ window_id\: :ref:`int` = 0\ ) |const| | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Vector2i` | :ref:`window_get_size`\ (\ window_id\: :ref:`int` = 0\ ) |const| | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Vector2i` | :ref:`window_get_size_with_decorations`\ (\ window_id\: :ref:`int` = 0\ ) |const| | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Vector2i` | :ref:`window_get_title_size`\ (\ title\: :ref:`String`, window_id\: :ref:`int` = 0\ ) |const| | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`VSyncMode` | :ref:`window_get_vsync_mode`\ (\ window_id\: :ref:`int` = 0\ ) |const| | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`window_is_focused`\ (\ window_id\: :ref:`int` = 0\ ) |const| | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`window_is_maximize_allowed`\ (\ window_id\: :ref:`int` = 0\ ) |const| | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`window_maximize_on_title_dbl_click`\ (\ ) |const| | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`window_minimize_on_title_dbl_click`\ (\ ) |const| | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`window_move_to_foreground`\ (\ window_id\: :ref:`int` = 0\ ) | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`window_request_attention`\ (\ window_id\: :ref:`int` = 0\ ) | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`window_set_current_screen`\ (\ screen\: :ref:`int`, window_id\: :ref:`int` = 0\ ) | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`window_set_drop_files_callback`\ (\ callback\: :ref:`Callable`, window_id\: :ref:`int` = 0\ ) | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`window_set_exclusive`\ (\ window_id\: :ref:`int`, exclusive\: :ref:`bool`\ ) | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`window_set_flag`\ (\ flag\: :ref:`WindowFlags`, enabled\: :ref:`bool`, window_id\: :ref:`int` = 0\ ) | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`window_set_ime_active`\ (\ active\: :ref:`bool`, window_id\: :ref:`int` = 0\ ) | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`window_set_ime_position`\ (\ position\: :ref:`Vector2i`, window_id\: :ref:`int` = 0\ ) | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`window_set_input_event_callback`\ (\ callback\: :ref:`Callable`, window_id\: :ref:`int` = 0\ ) | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`window_set_input_text_callback`\ (\ callback\: :ref:`Callable`, window_id\: :ref:`int` = 0\ ) | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`window_set_max_size`\ (\ max_size\: :ref:`Vector2i`, window_id\: :ref:`int` = 0\ ) | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`window_set_min_size`\ (\ min_size\: :ref:`Vector2i`, window_id\: :ref:`int` = 0\ ) | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`window_set_mode`\ (\ mode\: :ref:`WindowMode`, window_id\: :ref:`int` = 0\ ) | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`window_set_mouse_passthrough`\ (\ region\: :ref:`PackedVector2Array`, window_id\: :ref:`int` = 0\ ) | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`window_set_popup_safe_rect`\ (\ window\: :ref:`int`, rect\: :ref:`Rect2i`\ ) | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`window_set_position`\ (\ position\: :ref:`Vector2i`, window_id\: :ref:`int` = 0\ ) | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`window_set_rect_changed_callback`\ (\ callback\: :ref:`Callable`, window_id\: :ref:`int` = 0\ ) | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`window_set_size`\ (\ size\: :ref:`Vector2i`, window_id\: :ref:`int` = 0\ ) | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`window_set_title`\ (\ title\: :ref:`String`, window_id\: :ref:`int` = 0\ ) | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`window_set_transient`\ (\ window_id\: :ref:`int`, parent_window_id\: :ref:`int`\ ) | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`window_set_vsync_mode`\ (\ vsync_mode\: :ref:`VSyncMode`, window_id\: :ref:`int` = 0\ ) | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`window_set_window_buttons_offset`\ (\ offset\: :ref:`Vector2i`, window_id\: :ref:`int` = 0\ ) | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`window_set_window_event_callback`\ (\ callback\: :ref:`Callable`, window_id\: :ref:`int` = 0\ ) | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`window_start_drag`\ (\ window_id\: :ref:`int` = 0\ ) | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`window_start_resize`\ (\ edge\: :ref:`WindowResizeEdge`, window_id\: :ref:`int` = 0\ ) | - +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`RID` | :ref:`accessibility_create_element`\ (\ window_id\: :ref:`int`, role\: :ref:`AccessibilityRole`\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`RID` | :ref:`accessibility_create_sub_element`\ (\ parent_rid\: :ref:`RID`, role\: :ref:`AccessibilityRole`, insert_pos\: :ref:`int` = -1\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`RID` | :ref:`accessibility_create_sub_text_edit_elements`\ (\ parent_rid\: :ref:`RID`, shaped_text\: :ref:`RID`, min_height\: :ref:`float`, insert_pos\: :ref:`int` = -1\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Variant` | :ref:`accessibility_element_get_meta`\ (\ id\: :ref:`RID`\ ) |const| | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`accessibility_element_set_meta`\ (\ id\: :ref:`RID`, meta\: :ref:`Variant`\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`accessibility_free_element`\ (\ id\: :ref:`RID`\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`RID` | :ref:`accessibility_get_window_root`\ (\ window_id\: :ref:`int`\ ) |const| | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`accessibility_has_element`\ (\ id\: :ref:`RID`\ ) |const| | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`accessibility_screen_reader_active`\ (\ ) |const| | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`accessibility_set_window_focused`\ (\ window_id\: :ref:`int`, focused\: :ref:`bool`\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`accessibility_set_window_rect`\ (\ window_id\: :ref:`int`, rect_out\: :ref:`Rect2`, rect_in\: :ref:`Rect2`\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`accessibility_should_increase_contrast`\ (\ ) |const| | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`accessibility_should_reduce_animation`\ (\ ) |const| | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`accessibility_should_reduce_transparency`\ (\ ) |const| | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`accessibility_update_add_action`\ (\ id\: :ref:`RID`, action\: :ref:`AccessibilityAction`, callable\: :ref:`Callable`\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`accessibility_update_add_child`\ (\ id\: :ref:`RID`, child_id\: :ref:`RID`\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`accessibility_update_add_custom_action`\ (\ id\: :ref:`RID`, action_id\: :ref:`int`, action_description\: :ref:`String`\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`accessibility_update_add_related_controls`\ (\ id\: :ref:`RID`, related_id\: :ref:`RID`\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`accessibility_update_add_related_described_by`\ (\ id\: :ref:`RID`, related_id\: :ref:`RID`\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`accessibility_update_add_related_details`\ (\ id\: :ref:`RID`, related_id\: :ref:`RID`\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`accessibility_update_add_related_flow_to`\ (\ id\: :ref:`RID`, related_id\: :ref:`RID`\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`accessibility_update_add_related_labeled_by`\ (\ id\: :ref:`RID`, related_id\: :ref:`RID`\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`accessibility_update_add_related_radio_group`\ (\ id\: :ref:`RID`, related_id\: :ref:`RID`\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`accessibility_update_set_active_descendant`\ (\ id\: :ref:`RID`, other_id\: :ref:`RID`\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`accessibility_update_set_background_color`\ (\ id\: :ref:`RID`, color\: :ref:`Color`\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`accessibility_update_set_bounds`\ (\ id\: :ref:`RID`, p_rect\: :ref:`Rect2`\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`accessibility_update_set_checked`\ (\ id\: :ref:`RID`, checekd\: :ref:`bool`\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`accessibility_update_set_classname`\ (\ id\: :ref:`RID`, classname\: :ref:`String`\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`accessibility_update_set_color_value`\ (\ id\: :ref:`RID`, color\: :ref:`Color`\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`accessibility_update_set_description`\ (\ id\: :ref:`RID`, description\: :ref:`String`\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`accessibility_update_set_error_message`\ (\ id\: :ref:`RID`, other_id\: :ref:`RID`\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`accessibility_update_set_extra_info`\ (\ id\: :ref:`RID`, name\: :ref:`String`\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`accessibility_update_set_flag`\ (\ id\: :ref:`RID`, flag\: :ref:`AccessibilityFlags`, value\: :ref:`bool`\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`accessibility_update_set_focus`\ (\ id\: :ref:`RID`\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`accessibility_update_set_foreground_color`\ (\ id\: :ref:`RID`, color\: :ref:`Color`\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`accessibility_update_set_in_page_link_target`\ (\ id\: :ref:`RID`, other_id\: :ref:`RID`\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`accessibility_update_set_language`\ (\ id\: :ref:`RID`, language\: :ref:`String`\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`accessibility_update_set_list_item_count`\ (\ id\: :ref:`RID`, size\: :ref:`int`\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`accessibility_update_set_list_item_expanded`\ (\ id\: :ref:`RID`, expanded\: :ref:`bool`\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`accessibility_update_set_list_item_index`\ (\ id\: :ref:`RID`, index\: :ref:`int`\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`accessibility_update_set_list_item_level`\ (\ id\: :ref:`RID`, level\: :ref:`int`\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`accessibility_update_set_list_item_selected`\ (\ id\: :ref:`RID`, selected\: :ref:`bool`\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`accessibility_update_set_list_orientation`\ (\ id\: :ref:`RID`, vertical\: :ref:`bool`\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`accessibility_update_set_live`\ (\ id\: :ref:`RID`, live\: :ref:`AccessibilityLiveMode`\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`accessibility_update_set_member_of`\ (\ id\: :ref:`RID`, group_id\: :ref:`RID`\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`accessibility_update_set_name`\ (\ id\: :ref:`RID`, name\: :ref:`String`\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`accessibility_update_set_next_on_line`\ (\ id\: :ref:`RID`, other_id\: :ref:`RID`\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`accessibility_update_set_num_jump`\ (\ id\: :ref:`RID`, jump\: :ref:`float`\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`accessibility_update_set_num_range`\ (\ id\: :ref:`RID`, min\: :ref:`float`, max\: :ref:`float`\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`accessibility_update_set_num_step`\ (\ id\: :ref:`RID`, step\: :ref:`float`\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`accessibility_update_set_num_value`\ (\ id\: :ref:`RID`, position\: :ref:`float`\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`accessibility_update_set_placeholder`\ (\ id\: :ref:`RID`, placeholder\: :ref:`String`\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`accessibility_update_set_popup_type`\ (\ id\: :ref:`RID`, popup\: :ref:`AccessibilityPopupType`\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`accessibility_update_set_previous_on_line`\ (\ id\: :ref:`RID`, other_id\: :ref:`RID`\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`accessibility_update_set_role`\ (\ id\: :ref:`RID`, role\: :ref:`AccessibilityRole`\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`accessibility_update_set_role_description`\ (\ id\: :ref:`RID`, description\: :ref:`String`\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`accessibility_update_set_scroll_x`\ (\ id\: :ref:`RID`, position\: :ref:`float`\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`accessibility_update_set_scroll_x_range`\ (\ id\: :ref:`RID`, min\: :ref:`float`, max\: :ref:`float`\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`accessibility_update_set_scroll_y`\ (\ id\: :ref:`RID`, position\: :ref:`float`\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`accessibility_update_set_scroll_y_range`\ (\ id\: :ref:`RID`, min\: :ref:`float`, max\: :ref:`float`\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`accessibility_update_set_shortcut`\ (\ id\: :ref:`RID`, shortcut\: :ref:`String`\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`accessibility_update_set_state_description`\ (\ id\: :ref:`RID`, description\: :ref:`String`\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`accessibility_update_set_table_cell_position`\ (\ id\: :ref:`RID`, row_index\: :ref:`int`, column_index\: :ref:`int`\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`accessibility_update_set_table_cell_span`\ (\ id\: :ref:`RID`, row_span\: :ref:`int`, column_span\: :ref:`int`\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`accessibility_update_set_table_column_count`\ (\ id\: :ref:`RID`, count\: :ref:`int`\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`accessibility_update_set_table_column_index`\ (\ id\: :ref:`RID`, index\: :ref:`int`\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`accessibility_update_set_table_row_count`\ (\ id\: :ref:`RID`, count\: :ref:`int`\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`accessibility_update_set_table_row_index`\ (\ id\: :ref:`RID`, index\: :ref:`int`\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`accessibility_update_set_text_align`\ (\ id\: :ref:`RID`, align\: :ref:`HorizontalAlignment`\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`accessibility_update_set_text_decorations`\ (\ id\: :ref:`RID`, underline\: :ref:`bool`, strikethrough\: :ref:`bool`, overline\: :ref:`bool`\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`accessibility_update_set_text_orientation`\ (\ id\: :ref:`RID`, vertical\: :ref:`bool`\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`accessibility_update_set_text_selection`\ (\ id\: :ref:`RID`, text_start_id\: :ref:`RID`, start_char\: :ref:`int`, text_end_id\: :ref:`RID`, end_char\: :ref:`int`\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`accessibility_update_set_tooltip`\ (\ id\: :ref:`RID`, tooltip\: :ref:`String`\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`accessibility_update_set_transform`\ (\ id\: :ref:`RID`, transform\: :ref:`Transform2D`\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`accessibility_update_set_url`\ (\ id\: :ref:`RID`, url\: :ref:`String`\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`accessibility_update_set_value`\ (\ id\: :ref:`RID`, value\: :ref:`String`\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`beep`\ (\ ) |const| | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`clipboard_get`\ (\ ) |const| | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Image` | :ref:`clipboard_get_image`\ (\ ) |const| | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`clipboard_get_primary`\ (\ ) |const| | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`clipboard_has`\ (\ ) |const| | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`clipboard_has_image`\ (\ ) |const| | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`clipboard_set`\ (\ clipboard\: :ref:`String`\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`clipboard_set_primary`\ (\ clipboard_primary\: :ref:`String`\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`color_picker`\ (\ callback\: :ref:`Callable`\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`create_status_indicator`\ (\ icon\: :ref:`Texture2D`, tooltip\: :ref:`String`, callback\: :ref:`Callable`\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`CursorShape` | :ref:`cursor_get_shape`\ (\ ) |const| | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`cursor_set_custom_image`\ (\ cursor\: :ref:`Resource`, shape\: :ref:`CursorShape` = 0, hotspot\: :ref:`Vector2` = Vector2(0, 0)\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`cursor_set_shape`\ (\ shape\: :ref:`CursorShape`\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`delete_status_indicator`\ (\ id\: :ref:`int`\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Error` | :ref:`dialog_input_text`\ (\ title\: :ref:`String`, description\: :ref:`String`, existing_text\: :ref:`String`, callback\: :ref:`Callable`\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Error` | :ref:`dialog_show`\ (\ title\: :ref:`String`, description\: :ref:`String`, buttons\: :ref:`PackedStringArray`, callback\: :ref:`Callable`\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`enable_for_stealing_focus`\ (\ process_id\: :ref:`int`\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Error` | :ref:`file_dialog_show`\ (\ title\: :ref:`String`, current_directory\: :ref:`String`, filename\: :ref:`String`, show_hidden\: :ref:`bool`, mode\: :ref:`FileDialogMode`, filters\: :ref:`PackedStringArray`, callback\: :ref:`Callable`, parent_window_id\: :ref:`int` = 0\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Error` | :ref:`file_dialog_with_options_show`\ (\ title\: :ref:`String`, current_directory\: :ref:`String`, root\: :ref:`String`, filename\: :ref:`String`, show_hidden\: :ref:`bool`, mode\: :ref:`FileDialogMode`, filters\: :ref:`PackedStringArray`, options\: :ref:`Array`\[:ref:`Dictionary`\], callback\: :ref:`Callable`, parent_window_id\: :ref:`int` = 0\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`force_process_and_drop_events`\ (\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Color` | :ref:`get_accent_color`\ (\ ) |const| | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Color` | :ref:`get_base_color`\ (\ ) |const| | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Array`\[:ref:`Rect2`\] | :ref:`get_display_cutouts`\ (\ ) |const| | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Rect2i` | :ref:`get_display_safe_area`\ (\ ) |const| | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`get_keyboard_focus_screen`\ (\ ) |const| | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`get_name`\ (\ ) |const| | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`get_primary_screen`\ (\ ) |const| | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`get_screen_count`\ (\ ) |const| | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`get_screen_from_rect`\ (\ rect\: :ref:`Rect2`\ ) |const| | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`get_swap_cancel_ok`\ (\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`get_window_at_screen_position`\ (\ position\: :ref:`Vector2i`\ ) |const| | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`PackedInt32Array` | :ref:`get_window_list`\ (\ ) |const| | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`global_menu_add_check_item`\ (\ menu_root\: :ref:`String`, label\: :ref:`String`, callback\: :ref:`Callable` = Callable(), key_callback\: :ref:`Callable` = Callable(), tag\: :ref:`Variant` = null, accelerator\: :ref:`Key` = 0, index\: :ref:`int` = -1\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`global_menu_add_icon_check_item`\ (\ menu_root\: :ref:`String`, icon\: :ref:`Texture2D`, label\: :ref:`String`, callback\: :ref:`Callable` = Callable(), key_callback\: :ref:`Callable` = Callable(), tag\: :ref:`Variant` = null, accelerator\: :ref:`Key` = 0, index\: :ref:`int` = -1\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`global_menu_add_icon_item`\ (\ menu_root\: :ref:`String`, icon\: :ref:`Texture2D`, label\: :ref:`String`, callback\: :ref:`Callable` = Callable(), key_callback\: :ref:`Callable` = Callable(), tag\: :ref:`Variant` = null, accelerator\: :ref:`Key` = 0, index\: :ref:`int` = -1\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`global_menu_add_icon_radio_check_item`\ (\ menu_root\: :ref:`String`, icon\: :ref:`Texture2D`, label\: :ref:`String`, callback\: :ref:`Callable` = Callable(), key_callback\: :ref:`Callable` = Callable(), tag\: :ref:`Variant` = null, accelerator\: :ref:`Key` = 0, index\: :ref:`int` = -1\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`global_menu_add_item`\ (\ menu_root\: :ref:`String`, label\: :ref:`String`, callback\: :ref:`Callable` = Callable(), key_callback\: :ref:`Callable` = Callable(), tag\: :ref:`Variant` = null, accelerator\: :ref:`Key` = 0, index\: :ref:`int` = -1\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`global_menu_add_multistate_item`\ (\ menu_root\: :ref:`String`, label\: :ref:`String`, max_states\: :ref:`int`, default_state\: :ref:`int`, callback\: :ref:`Callable` = Callable(), key_callback\: :ref:`Callable` = Callable(), tag\: :ref:`Variant` = null, accelerator\: :ref:`Key` = 0, index\: :ref:`int` = -1\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`global_menu_add_radio_check_item`\ (\ menu_root\: :ref:`String`, label\: :ref:`String`, callback\: :ref:`Callable` = Callable(), key_callback\: :ref:`Callable` = Callable(), tag\: :ref:`Variant` = null, accelerator\: :ref:`Key` = 0, index\: :ref:`int` = -1\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`global_menu_add_separator`\ (\ menu_root\: :ref:`String`, index\: :ref:`int` = -1\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`global_menu_add_submenu_item`\ (\ menu_root\: :ref:`String`, label\: :ref:`String`, submenu\: :ref:`String`, index\: :ref:`int` = -1\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`global_menu_clear`\ (\ menu_root\: :ref:`String`\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Key` | :ref:`global_menu_get_item_accelerator`\ (\ menu_root\: :ref:`String`, idx\: :ref:`int`\ ) |const| | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Callable` | :ref:`global_menu_get_item_callback`\ (\ menu_root\: :ref:`String`, idx\: :ref:`int`\ ) |const| | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`global_menu_get_item_count`\ (\ menu_root\: :ref:`String`\ ) |const| | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Texture2D` | :ref:`global_menu_get_item_icon`\ (\ menu_root\: :ref:`String`, idx\: :ref:`int`\ ) |const| | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`global_menu_get_item_indentation_level`\ (\ menu_root\: :ref:`String`, idx\: :ref:`int`\ ) |const| | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`global_menu_get_item_index_from_tag`\ (\ menu_root\: :ref:`String`, tag\: :ref:`Variant`\ ) |const| | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`global_menu_get_item_index_from_text`\ (\ menu_root\: :ref:`String`, text\: :ref:`String`\ ) |const| | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Callable` | :ref:`global_menu_get_item_key_callback`\ (\ menu_root\: :ref:`String`, idx\: :ref:`int`\ ) |const| | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`global_menu_get_item_max_states`\ (\ menu_root\: :ref:`String`, idx\: :ref:`int`\ ) |const| | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`global_menu_get_item_state`\ (\ menu_root\: :ref:`String`, idx\: :ref:`int`\ ) |const| | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`global_menu_get_item_submenu`\ (\ menu_root\: :ref:`String`, idx\: :ref:`int`\ ) |const| | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Variant` | :ref:`global_menu_get_item_tag`\ (\ menu_root\: :ref:`String`, idx\: :ref:`int`\ ) |const| | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`global_menu_get_item_text`\ (\ menu_root\: :ref:`String`, idx\: :ref:`int`\ ) |const| | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`global_menu_get_item_tooltip`\ (\ menu_root\: :ref:`String`, idx\: :ref:`int`\ ) |const| | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Dictionary` | :ref:`global_menu_get_system_menu_roots`\ (\ ) |const| | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`global_menu_is_item_checkable`\ (\ menu_root\: :ref:`String`, idx\: :ref:`int`\ ) |const| | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`global_menu_is_item_checked`\ (\ menu_root\: :ref:`String`, idx\: :ref:`int`\ ) |const| | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`global_menu_is_item_disabled`\ (\ menu_root\: :ref:`String`, idx\: :ref:`int`\ ) |const| | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`global_menu_is_item_hidden`\ (\ menu_root\: :ref:`String`, idx\: :ref:`int`\ ) |const| | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`global_menu_is_item_radio_checkable`\ (\ menu_root\: :ref:`String`, idx\: :ref:`int`\ ) |const| | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`global_menu_remove_item`\ (\ menu_root\: :ref:`String`, idx\: :ref:`int`\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`global_menu_set_item_accelerator`\ (\ menu_root\: :ref:`String`, idx\: :ref:`int`, keycode\: :ref:`Key`\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`global_menu_set_item_callback`\ (\ menu_root\: :ref:`String`, idx\: :ref:`int`, callback\: :ref:`Callable`\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`global_menu_set_item_checkable`\ (\ menu_root\: :ref:`String`, idx\: :ref:`int`, checkable\: :ref:`bool`\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`global_menu_set_item_checked`\ (\ menu_root\: :ref:`String`, idx\: :ref:`int`, checked\: :ref:`bool`\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`global_menu_set_item_disabled`\ (\ menu_root\: :ref:`String`, idx\: :ref:`int`, disabled\: :ref:`bool`\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`global_menu_set_item_hidden`\ (\ menu_root\: :ref:`String`, idx\: :ref:`int`, hidden\: :ref:`bool`\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`global_menu_set_item_hover_callbacks`\ (\ menu_root\: :ref:`String`, idx\: :ref:`int`, callback\: :ref:`Callable`\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`global_menu_set_item_icon`\ (\ menu_root\: :ref:`String`, idx\: :ref:`int`, icon\: :ref:`Texture2D`\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`global_menu_set_item_indentation_level`\ (\ menu_root\: :ref:`String`, idx\: :ref:`int`, level\: :ref:`int`\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`global_menu_set_item_key_callback`\ (\ menu_root\: :ref:`String`, idx\: :ref:`int`, key_callback\: :ref:`Callable`\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`global_menu_set_item_max_states`\ (\ menu_root\: :ref:`String`, idx\: :ref:`int`, max_states\: :ref:`int`\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`global_menu_set_item_radio_checkable`\ (\ menu_root\: :ref:`String`, idx\: :ref:`int`, checkable\: :ref:`bool`\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`global_menu_set_item_state`\ (\ menu_root\: :ref:`String`, idx\: :ref:`int`, state\: :ref:`int`\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`global_menu_set_item_submenu`\ (\ menu_root\: :ref:`String`, idx\: :ref:`int`, submenu\: :ref:`String`\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`global_menu_set_item_tag`\ (\ menu_root\: :ref:`String`, idx\: :ref:`int`, tag\: :ref:`Variant`\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`global_menu_set_item_text`\ (\ menu_root\: :ref:`String`, idx\: :ref:`int`, text\: :ref:`String`\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`global_menu_set_item_tooltip`\ (\ menu_root\: :ref:`String`, idx\: :ref:`int`, tooltip\: :ref:`String`\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`global_menu_set_popup_callbacks`\ (\ menu_root\: :ref:`String`, open_callback\: :ref:`Callable`, close_callback\: :ref:`Callable`\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`has_additional_outputs`\ (\ ) |const| | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`has_feature`\ (\ feature\: :ref:`Feature`\ ) |const| | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`has_hardware_keyboard`\ (\ ) |const| | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`help_set_search_callbacks`\ (\ search_callback\: :ref:`Callable`, action_callback\: :ref:`Callable`\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Vector2i` | :ref:`ime_get_selection`\ (\ ) |const| | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`ime_get_text`\ (\ ) |const| | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`is_dark_mode`\ (\ ) |const| | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`is_dark_mode_supported`\ (\ ) |const| | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`is_touchscreen_available`\ (\ ) |const| | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`is_window_transparency_available`\ (\ ) |const| | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`keyboard_get_current_layout`\ (\ ) |const| | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Key` | :ref:`keyboard_get_keycode_from_physical`\ (\ keycode\: :ref:`Key`\ ) |const| | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Key` | :ref:`keyboard_get_label_from_physical`\ (\ keycode\: :ref:`Key`\ ) |const| | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`keyboard_get_layout_count`\ (\ ) |const| | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`keyboard_get_layout_language`\ (\ index\: :ref:`int`\ ) |const| | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`keyboard_get_layout_name`\ (\ index\: :ref:`int`\ ) |const| | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`keyboard_set_current_layout`\ (\ index\: :ref:`int`\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |bitfield|\[:ref:`MouseButtonMask`\] | :ref:`mouse_get_button_state`\ (\ ) |const| | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`MouseMode` | :ref:`mouse_get_mode`\ (\ ) |const| | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Vector2i` | :ref:`mouse_get_position`\ (\ ) |const| | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`mouse_set_mode`\ (\ mouse_mode\: :ref:`MouseMode`\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`process_events`\ (\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`register_additional_output`\ (\ object\: :ref:`Object`\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`screen_get_dpi`\ (\ screen\: :ref:`int` = -1\ ) |const| | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Image` | :ref:`screen_get_image`\ (\ screen\: :ref:`int` = -1\ ) |const| | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Image` | :ref:`screen_get_image_rect`\ (\ rect\: :ref:`Rect2i`\ ) |const| | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`screen_get_max_scale`\ (\ ) |const| | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`ScreenOrientation` | :ref:`screen_get_orientation`\ (\ screen\: :ref:`int` = -1\ ) |const| | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Color` | :ref:`screen_get_pixel`\ (\ position\: :ref:`Vector2i`\ ) |const| | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Vector2i` | :ref:`screen_get_position`\ (\ screen\: :ref:`int` = -1\ ) |const| | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`screen_get_refresh_rate`\ (\ screen\: :ref:`int` = -1\ ) |const| | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`screen_get_scale`\ (\ screen\: :ref:`int` = -1\ ) |const| | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Vector2i` | :ref:`screen_get_size`\ (\ screen\: :ref:`int` = -1\ ) |const| | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Rect2i` | :ref:`screen_get_usable_rect`\ (\ screen\: :ref:`int` = -1\ ) |const| | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`screen_is_kept_on`\ (\ ) |const| | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`screen_set_keep_on`\ (\ enable\: :ref:`bool`\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`screen_set_orientation`\ (\ orientation\: :ref:`ScreenOrientation`, screen\: :ref:`int` = -1\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_hardware_keyboard_connection_change_callback`\ (\ callable\: :ref:`Callable`\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_icon`\ (\ image\: :ref:`Image`\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_native_icon`\ (\ filename\: :ref:`String`\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_system_theme_change_callback`\ (\ callable\: :ref:`Callable`\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`show_emoji_and_symbol_picker`\ (\ ) |const| | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Rect2` | :ref:`status_indicator_get_rect`\ (\ id\: :ref:`int`\ ) |const| | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`status_indicator_set_callback`\ (\ id\: :ref:`int`, callback\: :ref:`Callable`\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`status_indicator_set_icon`\ (\ id\: :ref:`int`, icon\: :ref:`Texture2D`\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`status_indicator_set_menu`\ (\ id\: :ref:`int`, menu_rid\: :ref:`RID`\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`status_indicator_set_tooltip`\ (\ id\: :ref:`int`, tooltip\: :ref:`String`\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`tablet_get_current_driver`\ (\ ) |const| | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`tablet_get_driver_count`\ (\ ) |const| | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`tablet_get_driver_name`\ (\ idx\: :ref:`int`\ ) |const| | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`tablet_set_current_driver`\ (\ name\: :ref:`String`\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Array`\[:ref:`Dictionary`\] | :ref:`tts_get_voices`\ (\ ) |const| | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`PackedStringArray` | :ref:`tts_get_voices_for_language`\ (\ language\: :ref:`String`\ ) |const| | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`tts_is_paused`\ (\ ) |const| | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`tts_is_speaking`\ (\ ) |const| | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`tts_pause`\ (\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`tts_resume`\ (\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`tts_set_utterance_callback`\ (\ event\: :ref:`TTSUtteranceEvent`, callable\: :ref:`Callable`\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`tts_speak`\ (\ text\: :ref:`String`, voice\: :ref:`String`, volume\: :ref:`int` = 50, pitch\: :ref:`float` = 1.0, rate\: :ref:`float` = 1.0, utterance_id\: :ref:`int` = 0, interrupt\: :ref:`bool` = false\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`tts_stop`\ (\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`unregister_additional_output`\ (\ object\: :ref:`Object`\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`virtual_keyboard_get_height`\ (\ ) |const| | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`virtual_keyboard_hide`\ (\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`virtual_keyboard_show`\ (\ existing_text\: :ref:`String`, position\: :ref:`Rect2` = Rect2(0, 0, 0, 0), type\: :ref:`VirtualKeyboardType` = 0, max_length\: :ref:`int` = -1, cursor_start\: :ref:`int` = -1, cursor_end\: :ref:`int` = -1\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`warp_mouse`\ (\ position\: :ref:`Vector2i`\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`window_can_draw`\ (\ window_id\: :ref:`int` = 0\ ) |const| | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`window_get_active_popup`\ (\ ) |const| | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`window_get_attached_instance_id`\ (\ window_id\: :ref:`int` = 0\ ) |const| | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`window_get_current_screen`\ (\ window_id\: :ref:`int` = 0\ ) |const| | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`window_get_flag`\ (\ flag\: :ref:`WindowFlags`, window_id\: :ref:`int` = 0\ ) |const| | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Vector2i` | :ref:`window_get_max_size`\ (\ window_id\: :ref:`int` = 0\ ) |const| | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Vector2i` | :ref:`window_get_min_size`\ (\ window_id\: :ref:`int` = 0\ ) |const| | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`WindowMode` | :ref:`window_get_mode`\ (\ window_id\: :ref:`int` = 0\ ) |const| | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`window_get_native_handle`\ (\ handle_type\: :ref:`HandleType`, window_id\: :ref:`int` = 0\ ) |const| | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Rect2i` | :ref:`window_get_popup_safe_rect`\ (\ window\: :ref:`int`\ ) |const| | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Vector2i` | :ref:`window_get_position`\ (\ window_id\: :ref:`int` = 0\ ) |const| | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Vector2i` | :ref:`window_get_position_with_decorations`\ (\ window_id\: :ref:`int` = 0\ ) |const| | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Vector3i` | :ref:`window_get_safe_title_margins`\ (\ window_id\: :ref:`int` = 0\ ) |const| | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Vector2i` | :ref:`window_get_size`\ (\ window_id\: :ref:`int` = 0\ ) |const| | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Vector2i` | :ref:`window_get_size_with_decorations`\ (\ window_id\: :ref:`int` = 0\ ) |const| | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Vector2i` | :ref:`window_get_title_size`\ (\ title\: :ref:`String`, window_id\: :ref:`int` = 0\ ) |const| | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`VSyncMode` | :ref:`window_get_vsync_mode`\ (\ window_id\: :ref:`int` = 0\ ) |const| | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`window_is_focused`\ (\ window_id\: :ref:`int` = 0\ ) |const| | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`window_is_maximize_allowed`\ (\ window_id\: :ref:`int` = 0\ ) |const| | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`window_maximize_on_title_dbl_click`\ (\ ) |const| | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`window_minimize_on_title_dbl_click`\ (\ ) |const| | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`window_move_to_foreground`\ (\ window_id\: :ref:`int` = 0\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`window_request_attention`\ (\ window_id\: :ref:`int` = 0\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`window_set_current_screen`\ (\ screen\: :ref:`int`, window_id\: :ref:`int` = 0\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`window_set_drop_files_callback`\ (\ callback\: :ref:`Callable`, window_id\: :ref:`int` = 0\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`window_set_exclusive`\ (\ window_id\: :ref:`int`, exclusive\: :ref:`bool`\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`window_set_flag`\ (\ flag\: :ref:`WindowFlags`, enabled\: :ref:`bool`, window_id\: :ref:`int` = 0\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`window_set_ime_active`\ (\ active\: :ref:`bool`, window_id\: :ref:`int` = 0\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`window_set_ime_position`\ (\ position\: :ref:`Vector2i`, window_id\: :ref:`int` = 0\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`window_set_input_event_callback`\ (\ callback\: :ref:`Callable`, window_id\: :ref:`int` = 0\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`window_set_input_text_callback`\ (\ callback\: :ref:`Callable`, window_id\: :ref:`int` = 0\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`window_set_max_size`\ (\ max_size\: :ref:`Vector2i`, window_id\: :ref:`int` = 0\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`window_set_min_size`\ (\ min_size\: :ref:`Vector2i`, window_id\: :ref:`int` = 0\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`window_set_mode`\ (\ mode\: :ref:`WindowMode`, window_id\: :ref:`int` = 0\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`window_set_mouse_passthrough`\ (\ region\: :ref:`PackedVector2Array`, window_id\: :ref:`int` = 0\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`window_set_popup_safe_rect`\ (\ window\: :ref:`int`, rect\: :ref:`Rect2i`\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`window_set_position`\ (\ position\: :ref:`Vector2i`, window_id\: :ref:`int` = 0\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`window_set_rect_changed_callback`\ (\ callback\: :ref:`Callable`, window_id\: :ref:`int` = 0\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`window_set_size`\ (\ size\: :ref:`Vector2i`, window_id\: :ref:`int` = 0\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`window_set_title`\ (\ title\: :ref:`String`, window_id\: :ref:`int` = 0\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`window_set_transient`\ (\ window_id\: :ref:`int`, parent_window_id\: :ref:`int`\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`window_set_vsync_mode`\ (\ vsync_mode\: :ref:`VSyncMode`, window_id\: :ref:`int` = 0\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`window_set_window_buttons_offset`\ (\ offset\: :ref:`Vector2i`, window_id\: :ref:`int` = 0\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`window_set_window_event_callback`\ (\ callback\: :ref:`Callable`, window_id\: :ref:`int` = 0\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`window_start_drag`\ (\ window_id\: :ref:`int` = 0\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`window_start_resize`\ (\ edge\: :ref:`WindowResizeEdge`, window_id\: :ref:`int` = 0\ ) | + +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ .. rst-class:: classref-section-separator @@ -524,7 +680,7 @@ Display server supports `Input Method Editor ` **FEATURE_WINDOW_TRANSPARENCY** = ``11`` -Display server supports windows can use per-pixel transparency to make windows behind them partially or fully visible. **Windows, macOS, Linux (X11/Wayland)** +Display server supports windows can use per-pixel transparency to make windows behind them partially or fully visible. **Windows, macOS, Linux (X11/Wayland), Android** .. _class_DisplayServer_constant_FEATURE_HIDPI: @@ -532,7 +688,7 @@ Display server supports windows can use per-pixel transparency to make windows b :ref:`Feature` **FEATURE_HIDPI** = ``12`` -Display server supports querying the operating system's display scale factor. This allows for *reliable* automatic hiDPI display detection, as opposed to guessing based on the screen resolution and reported display DPI (which can be unreliable due to broken monitor EDID). **Windows, Linux (Wayland), macOS** +Display server supports querying the operating system's display scale factor. This allows automatically detecting the hiDPI display *reliably*, instead of guessing based on the screen resolution and the display's reported DPI (which might be unreliable due to broken monitor EDID). **Windows, Linux (Wayland), macOS** .. _class_DisplayServer_constant_FEATURE_ICON: @@ -652,7 +808,7 @@ The display server supports initiating window drag and resize operations on dema :ref:`Feature` **FEATURE_SCREEN_EXCLUDE_FROM_CAPTURE** = ``28`` -Display server supports :ref:`WINDOW_FLAG_EXCLUDE_FROM_CAPTURE` window flag. +Display server supports :ref:`WINDOW_FLAG_EXCLUDE_FROM_CAPTURE` window flag. **Windows, macOS** .. _class_DisplayServer_constant_FEATURE_WINDOW_EMBEDDING: @@ -660,7 +816,7 @@ Display server supports :ref:`WINDOW_FLAG_EXCLUDE_FROM_CAPTURE` **FEATURE_WINDOW_EMBEDDING** = ``29`` -Display server supports embedding a window from another process. **Windows, Linux (X11)** +Display server supports embedding a window from another process. **Windows, Linux (X11), macOS** .. _class_DisplayServer_constant_FEATURE_NATIVE_DIALOG_FILE_MIME: @@ -678,6 +834,860 @@ Native file selection dialog supports MIME types as filters. Display server supports system emoji and symbol picker. **Windows, macOS** +.. _class_DisplayServer_constant_FEATURE_NATIVE_COLOR_PICKER: + +.. rst-class:: classref-enumeration-constant + +:ref:`Feature` **FEATURE_NATIVE_COLOR_PICKER** = ``32`` + +Display server supports native color picker. **Linux (X11/Wayland)** + +.. _class_DisplayServer_constant_FEATURE_SELF_FITTING_WINDOWS: + +.. rst-class:: classref-enumeration-constant + +:ref:`Feature` **FEATURE_SELF_FITTING_WINDOWS** = ``33`` + +Display server automatically fits popups according to the screen boundaries. Window nodes should not attempt to do that themselves. + +.. _class_DisplayServer_constant_FEATURE_ACCESSIBILITY_SCREEN_READER: + +.. rst-class:: classref-enumeration-constant + +:ref:`Feature` **FEATURE_ACCESSIBILITY_SCREEN_READER** = ``34`` + +Display server supports interaction with screen reader or Braille display. **Linux (X11/Wayland), macOS, Windows** + +.. rst-class:: classref-item-separator + +---- + +.. _enum_DisplayServer_AccessibilityRole: + +.. rst-class:: classref-enumeration + +enum **AccessibilityRole**: :ref:`🔗` + +.. _class_DisplayServer_constant_ROLE_UNKNOWN: + +.. rst-class:: classref-enumeration-constant + +:ref:`AccessibilityRole` **ROLE_UNKNOWN** = ``0`` + +Unknown or custom role. + +.. _class_DisplayServer_constant_ROLE_DEFAULT_BUTTON: + +.. rst-class:: classref-enumeration-constant + +:ref:`AccessibilityRole` **ROLE_DEFAULT_BUTTON** = ``1`` + +Default dialog button element. + +.. _class_DisplayServer_constant_ROLE_AUDIO: + +.. rst-class:: classref-enumeration-constant + +:ref:`AccessibilityRole` **ROLE_AUDIO** = ``2`` + +Audio player element. + +.. _class_DisplayServer_constant_ROLE_VIDEO: + +.. rst-class:: classref-enumeration-constant + +:ref:`AccessibilityRole` **ROLE_VIDEO** = ``3`` + +Video player element. + +.. _class_DisplayServer_constant_ROLE_STATIC_TEXT: + +.. rst-class:: classref-enumeration-constant + +:ref:`AccessibilityRole` **ROLE_STATIC_TEXT** = ``4`` + +Non-editable text label. + +.. _class_DisplayServer_constant_ROLE_CONTAINER: + +.. rst-class:: classref-enumeration-constant + +:ref:`AccessibilityRole` **ROLE_CONTAINER** = ``5`` + +Container element. Elements with this role are used for internal structure and ignored by screen readers. + +.. _class_DisplayServer_constant_ROLE_PANEL: + +.. rst-class:: classref-enumeration-constant + +:ref:`AccessibilityRole` **ROLE_PANEL** = ``6`` + +Panel container element. + +.. _class_DisplayServer_constant_ROLE_BUTTON: + +.. rst-class:: classref-enumeration-constant + +:ref:`AccessibilityRole` **ROLE_BUTTON** = ``7`` + +Button element. + +.. _class_DisplayServer_constant_ROLE_LINK: + +.. rst-class:: classref-enumeration-constant + +:ref:`AccessibilityRole` **ROLE_LINK** = ``8`` + +Link element. + +.. _class_DisplayServer_constant_ROLE_CHECK_BOX: + +.. rst-class:: classref-enumeration-constant + +:ref:`AccessibilityRole` **ROLE_CHECK_BOX** = ``9`` + +Check box element. + +.. _class_DisplayServer_constant_ROLE_RADIO_BUTTON: + +.. rst-class:: classref-enumeration-constant + +:ref:`AccessibilityRole` **ROLE_RADIO_BUTTON** = ``10`` + +Radio button element. + +.. _class_DisplayServer_constant_ROLE_CHECK_BUTTON: + +.. rst-class:: classref-enumeration-constant + +:ref:`AccessibilityRole` **ROLE_CHECK_BUTTON** = ``11`` + +Check button element. + +.. _class_DisplayServer_constant_ROLE_SCROLL_BAR: + +.. rst-class:: classref-enumeration-constant + +:ref:`AccessibilityRole` **ROLE_SCROLL_BAR** = ``12`` + +Scroll bar element. + +.. _class_DisplayServer_constant_ROLE_SCROLL_VIEW: + +.. rst-class:: classref-enumeration-constant + +:ref:`AccessibilityRole` **ROLE_SCROLL_VIEW** = ``13`` + +Scroll container element. + +.. _class_DisplayServer_constant_ROLE_SPLITTER: + +.. rst-class:: classref-enumeration-constant + +:ref:`AccessibilityRole` **ROLE_SPLITTER** = ``14`` + +Container splitter handle element. + +.. _class_DisplayServer_constant_ROLE_SLIDER: + +.. rst-class:: classref-enumeration-constant + +:ref:`AccessibilityRole` **ROLE_SLIDER** = ``15`` + +Slider element. + +.. _class_DisplayServer_constant_ROLE_SPIN_BUTTON: + +.. rst-class:: classref-enumeration-constant + +:ref:`AccessibilityRole` **ROLE_SPIN_BUTTON** = ``16`` + +Spin box element. + +.. _class_DisplayServer_constant_ROLE_PROGRESS_INDICATOR: + +.. rst-class:: classref-enumeration-constant + +:ref:`AccessibilityRole` **ROLE_PROGRESS_INDICATOR** = ``17`` + +Progress indicator element. + +.. _class_DisplayServer_constant_ROLE_TEXT_FIELD: + +.. rst-class:: classref-enumeration-constant + +:ref:`AccessibilityRole` **ROLE_TEXT_FIELD** = ``18`` + +Editable text field element. + +.. _class_DisplayServer_constant_ROLE_MULTILINE_TEXT_FIELD: + +.. rst-class:: classref-enumeration-constant + +:ref:`AccessibilityRole` **ROLE_MULTILINE_TEXT_FIELD** = ``19`` + +Multiline editable text field element. + +.. _class_DisplayServer_constant_ROLE_COLOR_PICKER: + +.. rst-class:: classref-enumeration-constant + +:ref:`AccessibilityRole` **ROLE_COLOR_PICKER** = ``20`` + +Color picker element. + +.. _class_DisplayServer_constant_ROLE_TABLE: + +.. rst-class:: classref-enumeration-constant + +:ref:`AccessibilityRole` **ROLE_TABLE** = ``21`` + +Table element. + +.. _class_DisplayServer_constant_ROLE_CELL: + +.. rst-class:: classref-enumeration-constant + +:ref:`AccessibilityRole` **ROLE_CELL** = ``22`` + +Table/tree cell element. + +.. _class_DisplayServer_constant_ROLE_ROW: + +.. rst-class:: classref-enumeration-constant + +:ref:`AccessibilityRole` **ROLE_ROW** = ``23`` + +Table/tree row element. + +.. _class_DisplayServer_constant_ROLE_ROW_GROUP: + +.. rst-class:: classref-enumeration-constant + +:ref:`AccessibilityRole` **ROLE_ROW_GROUP** = ``24`` + +Table/tree row group element. + +.. _class_DisplayServer_constant_ROLE_ROW_HEADER: + +.. rst-class:: classref-enumeration-constant + +:ref:`AccessibilityRole` **ROLE_ROW_HEADER** = ``25`` + +Table/tree row header element. + +.. _class_DisplayServer_constant_ROLE_COLUMN_HEADER: + +.. rst-class:: classref-enumeration-constant + +:ref:`AccessibilityRole` **ROLE_COLUMN_HEADER** = ``26`` + +Table/tree column header element. + +.. _class_DisplayServer_constant_ROLE_TREE: + +.. rst-class:: classref-enumeration-constant + +:ref:`AccessibilityRole` **ROLE_TREE** = ``27`` + +Tree view element. + +.. _class_DisplayServer_constant_ROLE_TREE_ITEM: + +.. rst-class:: classref-enumeration-constant + +:ref:`AccessibilityRole` **ROLE_TREE_ITEM** = ``28`` + +Tree view item element. + +.. _class_DisplayServer_constant_ROLE_LIST: + +.. rst-class:: classref-enumeration-constant + +:ref:`AccessibilityRole` **ROLE_LIST** = ``29`` + +List element. + +.. _class_DisplayServer_constant_ROLE_LIST_ITEM: + +.. rst-class:: classref-enumeration-constant + +:ref:`AccessibilityRole` **ROLE_LIST_ITEM** = ``30`` + +List item element. + +.. _class_DisplayServer_constant_ROLE_LIST_BOX: + +.. rst-class:: classref-enumeration-constant + +:ref:`AccessibilityRole` **ROLE_LIST_BOX** = ``31`` + +List view element. + +.. _class_DisplayServer_constant_ROLE_LIST_BOX_OPTION: + +.. rst-class:: classref-enumeration-constant + +:ref:`AccessibilityRole` **ROLE_LIST_BOX_OPTION** = ``32`` + +List view item element. + +.. _class_DisplayServer_constant_ROLE_TAB_BAR: + +.. rst-class:: classref-enumeration-constant + +:ref:`AccessibilityRole` **ROLE_TAB_BAR** = ``33`` + +Tab bar element. + +.. _class_DisplayServer_constant_ROLE_TAB: + +.. rst-class:: classref-enumeration-constant + +:ref:`AccessibilityRole` **ROLE_TAB** = ``34`` + +Tab bar item element. + +.. _class_DisplayServer_constant_ROLE_TAB_PANEL: + +.. rst-class:: classref-enumeration-constant + +:ref:`AccessibilityRole` **ROLE_TAB_PANEL** = ``35`` + +Tab panel element. + +.. _class_DisplayServer_constant_ROLE_MENU_BAR: + +.. rst-class:: classref-enumeration-constant + +:ref:`AccessibilityRole` **ROLE_MENU_BAR** = ``36`` + +Menu bar element. + +.. _class_DisplayServer_constant_ROLE_MENU: + +.. rst-class:: classref-enumeration-constant + +:ref:`AccessibilityRole` **ROLE_MENU** = ``37`` + +Popup menu element. + +.. _class_DisplayServer_constant_ROLE_MENU_ITEM: + +.. rst-class:: classref-enumeration-constant + +:ref:`AccessibilityRole` **ROLE_MENU_ITEM** = ``38`` + +Popup menu item element. + +.. _class_DisplayServer_constant_ROLE_MENU_ITEM_CHECK_BOX: + +.. rst-class:: classref-enumeration-constant + +:ref:`AccessibilityRole` **ROLE_MENU_ITEM_CHECK_BOX** = ``39`` + +Popup menu check button item element. + +.. _class_DisplayServer_constant_ROLE_MENU_ITEM_RADIO: + +.. rst-class:: classref-enumeration-constant + +:ref:`AccessibilityRole` **ROLE_MENU_ITEM_RADIO** = ``40`` + +Popup menu radio button item element. + +.. _class_DisplayServer_constant_ROLE_IMAGE: + +.. rst-class:: classref-enumeration-constant + +:ref:`AccessibilityRole` **ROLE_IMAGE** = ``41`` + +Image element. + +.. _class_DisplayServer_constant_ROLE_WINDOW: + +.. rst-class:: classref-enumeration-constant + +:ref:`AccessibilityRole` **ROLE_WINDOW** = ``42`` + +Window element. + +.. _class_DisplayServer_constant_ROLE_TITLE_BAR: + +.. rst-class:: classref-enumeration-constant + +:ref:`AccessibilityRole` **ROLE_TITLE_BAR** = ``43`` + +Embedded window title bar element. + +.. _class_DisplayServer_constant_ROLE_DIALOG: + +.. rst-class:: classref-enumeration-constant + +:ref:`AccessibilityRole` **ROLE_DIALOG** = ``44`` + +Dialog window element. + +.. _class_DisplayServer_constant_ROLE_TOOLTIP: + +.. rst-class:: classref-enumeration-constant + +:ref:`AccessibilityRole` **ROLE_TOOLTIP** = ``45`` + +Tooltip element. + +.. rst-class:: classref-item-separator + +---- + +.. _enum_DisplayServer_AccessibilityPopupType: + +.. rst-class:: classref-enumeration + +enum **AccessibilityPopupType**: :ref:`🔗` + +.. _class_DisplayServer_constant_POPUP_MENU: + +.. rst-class:: classref-enumeration-constant + +:ref:`AccessibilityPopupType` **POPUP_MENU** = ``0`` + +Popup menu. + +.. _class_DisplayServer_constant_POPUP_LIST: + +.. rst-class:: classref-enumeration-constant + +:ref:`AccessibilityPopupType` **POPUP_LIST** = ``1`` + +Popup list. + +.. _class_DisplayServer_constant_POPUP_TREE: + +.. rst-class:: classref-enumeration-constant + +:ref:`AccessibilityPopupType` **POPUP_TREE** = ``2`` + +Popup tree view. + +.. _class_DisplayServer_constant_POPUP_DIALOG: + +.. rst-class:: classref-enumeration-constant + +:ref:`AccessibilityPopupType` **POPUP_DIALOG** = ``3`` + +Popup dialog. + +.. rst-class:: classref-item-separator + +---- + +.. _enum_DisplayServer_AccessibilityFlags: + +.. rst-class:: classref-enumeration + +enum **AccessibilityFlags**: :ref:`🔗` + +.. _class_DisplayServer_constant_FLAG_HIDDEN: + +.. rst-class:: classref-enumeration-constant + +:ref:`AccessibilityFlags` **FLAG_HIDDEN** = ``0`` + +Element is hidden for accessibility tools. + +.. _class_DisplayServer_constant_FLAG_MULTISELECTABLE: + +.. rst-class:: classref-enumeration-constant + +:ref:`AccessibilityFlags` **FLAG_MULTISELECTABLE** = ``1`` + +Element is support multiple item selection. + +.. _class_DisplayServer_constant_FLAG_REQUIRED: + +.. rst-class:: classref-enumeration-constant + +:ref:`AccessibilityFlags` **FLAG_REQUIRED** = ``2`` + +Element require user input. + +.. _class_DisplayServer_constant_FLAG_VISITED: + +.. rst-class:: classref-enumeration-constant + +:ref:`AccessibilityFlags` **FLAG_VISITED** = ``3`` + +Element is a visited link. + +.. _class_DisplayServer_constant_FLAG_BUSY: + +.. rst-class:: classref-enumeration-constant + +:ref:`AccessibilityFlags` **FLAG_BUSY** = ``4`` + +Element content is not ready (e.g. loading). + +.. _class_DisplayServer_constant_FLAG_MODAL: + +.. rst-class:: classref-enumeration-constant + +:ref:`AccessibilityFlags` **FLAG_MODAL** = ``5`` + +Element is modal window. + +.. _class_DisplayServer_constant_FLAG_TOUCH_PASSTHROUGH: + +.. rst-class:: classref-enumeration-constant + +:ref:`AccessibilityFlags` **FLAG_TOUCH_PASSTHROUGH** = ``6`` + +Element allows touches to be passed through when a screen reader is in touch exploration mode. + +.. _class_DisplayServer_constant_FLAG_READONLY: + +.. rst-class:: classref-enumeration-constant + +:ref:`AccessibilityFlags` **FLAG_READONLY** = ``7`` + +Element is text field with selectable but read-only text. + +.. _class_DisplayServer_constant_FLAG_DISABLED: + +.. rst-class:: classref-enumeration-constant + +:ref:`AccessibilityFlags` **FLAG_DISABLED** = ``8`` + +Element is disabled. + +.. _class_DisplayServer_constant_FLAG_CLIPS_CHILDREN: + +.. rst-class:: classref-enumeration-constant + +:ref:`AccessibilityFlags` **FLAG_CLIPS_CHILDREN** = ``9`` + +Element clips children. + +.. rst-class:: classref-item-separator + +---- + +.. _enum_DisplayServer_AccessibilityAction: + +.. rst-class:: classref-enumeration + +enum **AccessibilityAction**: :ref:`🔗` + +.. _class_DisplayServer_constant_ACTION_CLICK: + +.. rst-class:: classref-enumeration-constant + +:ref:`AccessibilityAction` **ACTION_CLICK** = ``0`` + +Single click action, callback argument is not set. + +.. _class_DisplayServer_constant_ACTION_FOCUS: + +.. rst-class:: classref-enumeration-constant + +:ref:`AccessibilityAction` **ACTION_FOCUS** = ``1`` + +Focus action, callback argument is not set. + +.. _class_DisplayServer_constant_ACTION_BLUR: + +.. rst-class:: classref-enumeration-constant + +:ref:`AccessibilityAction` **ACTION_BLUR** = ``2`` + +Blur action, callback argument is not set. + +.. _class_DisplayServer_constant_ACTION_COLLAPSE: + +.. rst-class:: classref-enumeration-constant + +:ref:`AccessibilityAction` **ACTION_COLLAPSE** = ``3`` + +Collapse action, callback argument is not set. + +.. _class_DisplayServer_constant_ACTION_EXPAND: + +.. rst-class:: classref-enumeration-constant + +:ref:`AccessibilityAction` **ACTION_EXPAND** = ``4`` + +Expand action, callback argument is not set. + +.. _class_DisplayServer_constant_ACTION_DECREMENT: + +.. rst-class:: classref-enumeration-constant + +:ref:`AccessibilityAction` **ACTION_DECREMENT** = ``5`` + +Decrement action, callback argument is not set. + +.. _class_DisplayServer_constant_ACTION_INCREMENT: + +.. rst-class:: classref-enumeration-constant + +:ref:`AccessibilityAction` **ACTION_INCREMENT** = ``6`` + +Increment action, callback argument is not set. + +.. _class_DisplayServer_constant_ACTION_HIDE_TOOLTIP: + +.. rst-class:: classref-enumeration-constant + +:ref:`AccessibilityAction` **ACTION_HIDE_TOOLTIP** = ``7`` + +Hide tooltip action, callback argument is not set. + +.. _class_DisplayServer_constant_ACTION_SHOW_TOOLTIP: + +.. rst-class:: classref-enumeration-constant + +:ref:`AccessibilityAction` **ACTION_SHOW_TOOLTIP** = ``8`` + +Show tooltip action, callback argument is not set. + +.. _class_DisplayServer_constant_ACTION_SET_TEXT_SELECTION: + +.. rst-class:: classref-enumeration-constant + +:ref:`AccessibilityAction` **ACTION_SET_TEXT_SELECTION** = ``9`` + +Set text selection action, callback argument is set to :ref:`Dictionary` with the following keys: + +- ``"start_element"`` accessibility element of the selection start. + +- ``"start_char"`` character offset relative to the accessibility element of the selection start. + +- ``"end_element"`` accessibility element of the selection end. + +- ``"end_char"`` character offset relative to the accessibility element of the selection end. + +.. _class_DisplayServer_constant_ACTION_REPLACE_SELECTED_TEXT: + +.. rst-class:: classref-enumeration-constant + +:ref:`AccessibilityAction` **ACTION_REPLACE_SELECTED_TEXT** = ``10`` + +Replace text action, callback argument is set to :ref:`String` with the replacement text. + +.. _class_DisplayServer_constant_ACTION_SCROLL_BACKWARD: + +.. rst-class:: classref-enumeration-constant + +:ref:`AccessibilityAction` **ACTION_SCROLL_BACKWARD** = ``11`` + +Scroll backward action, callback argument is not set. + +.. _class_DisplayServer_constant_ACTION_SCROLL_DOWN: + +.. rst-class:: classref-enumeration-constant + +:ref:`AccessibilityAction` **ACTION_SCROLL_DOWN** = ``12`` + +Scroll down action, callback argument is set to :ref:`AccessibilityScrollUnit`. + +.. _class_DisplayServer_constant_ACTION_SCROLL_FORWARD: + +.. rst-class:: classref-enumeration-constant + +:ref:`AccessibilityAction` **ACTION_SCROLL_FORWARD** = ``13`` + +Scroll forward action, callback argument is not set. + +.. _class_DisplayServer_constant_ACTION_SCROLL_LEFT: + +.. rst-class:: classref-enumeration-constant + +:ref:`AccessibilityAction` **ACTION_SCROLL_LEFT** = ``14`` + +Scroll left action, callback argument is set to :ref:`AccessibilityScrollUnit`. + +.. _class_DisplayServer_constant_ACTION_SCROLL_RIGHT: + +.. rst-class:: classref-enumeration-constant + +:ref:`AccessibilityAction` **ACTION_SCROLL_RIGHT** = ``15`` + +Scroll right action, callback argument is set to :ref:`AccessibilityScrollUnit`. + +.. _class_DisplayServer_constant_ACTION_SCROLL_UP: + +.. rst-class:: classref-enumeration-constant + +:ref:`AccessibilityAction` **ACTION_SCROLL_UP** = ``16`` + +Scroll up action, callback argument is set to :ref:`AccessibilityScrollUnit`. + +.. _class_DisplayServer_constant_ACTION_SCROLL_INTO_VIEW: + +.. rst-class:: classref-enumeration-constant + +:ref:`AccessibilityAction` **ACTION_SCROLL_INTO_VIEW** = ``17`` + +Scroll into view action, callback argument is set to :ref:`AccessibilityScrollHint`. + +.. _class_DisplayServer_constant_ACTION_SCROLL_TO_POINT: + +.. rst-class:: classref-enumeration-constant + +:ref:`AccessibilityAction` **ACTION_SCROLL_TO_POINT** = ``18`` + +Scroll to point action, callback argument is set to :ref:`Vector2` with the relative point coordinates. + +.. _class_DisplayServer_constant_ACTION_SET_SCROLL_OFFSET: + +.. rst-class:: classref-enumeration-constant + +:ref:`AccessibilityAction` **ACTION_SET_SCROLL_OFFSET** = ``19`` + +Set scroll offset action, callback argument is set to :ref:`Vector2` with the scroll offset. + +.. _class_DisplayServer_constant_ACTION_SET_VALUE: + +.. rst-class:: classref-enumeration-constant + +:ref:`AccessibilityAction` **ACTION_SET_VALUE** = ``20`` + +Set value action, callback argument is set to :ref:`String` or number with the new value. + +.. _class_DisplayServer_constant_ACTION_SHOW_CONTEXT_MENU: + +.. rst-class:: classref-enumeration-constant + +:ref:`AccessibilityAction` **ACTION_SHOW_CONTEXT_MENU** = ``21`` + +Show context menu action, callback argument is not set. + +.. _class_DisplayServer_constant_ACTION_CUSTOM: + +.. rst-class:: classref-enumeration-constant + +:ref:`AccessibilityAction` **ACTION_CUSTOM** = ``22`` + +Custom action, callback argument is set to the integer action ID. + +.. rst-class:: classref-item-separator + +---- + +.. _enum_DisplayServer_AccessibilityLiveMode: + +.. rst-class:: classref-enumeration + +enum **AccessibilityLiveMode**: :ref:`🔗` + +.. _class_DisplayServer_constant_LIVE_OFF: + +.. rst-class:: classref-enumeration-constant + +:ref:`AccessibilityLiveMode` **LIVE_OFF** = ``0`` + +Indicates that updates to the live region should not be presented. + +.. _class_DisplayServer_constant_LIVE_POLITE: + +.. rst-class:: classref-enumeration-constant + +:ref:`AccessibilityLiveMode` **LIVE_POLITE** = ``1`` + +Indicates that updates to the live region should be presented at the next opportunity (for example at the end of speaking the current sentence). + +.. _class_DisplayServer_constant_LIVE_ASSERTIVE: + +.. rst-class:: classref-enumeration-constant + +:ref:`AccessibilityLiveMode` **LIVE_ASSERTIVE** = ``2`` + +Indicates that updates to the live region have the highest priority and should be presented immediately. + +.. rst-class:: classref-item-separator + +---- + +.. _enum_DisplayServer_AccessibilityScrollUnit: + +.. rst-class:: classref-enumeration + +enum **AccessibilityScrollUnit**: :ref:`🔗` + +.. _class_DisplayServer_constant_SCROLL_UNIT_ITEM: + +.. rst-class:: classref-enumeration-constant + +:ref:`AccessibilityScrollUnit` **SCROLL_UNIT_ITEM** = ``0`` + +The amount by which to scroll. A single item of a list, line of text. + +.. _class_DisplayServer_constant_SCROLL_UNIT_PAGE: + +.. rst-class:: classref-enumeration-constant + +:ref:`AccessibilityScrollUnit` **SCROLL_UNIT_PAGE** = ``1`` + +The amount by which to scroll. A single page. + +.. rst-class:: classref-item-separator + +---- + +.. _enum_DisplayServer_AccessibilityScrollHint: + +.. rst-class:: classref-enumeration + +enum **AccessibilityScrollHint**: :ref:`🔗` + +.. _class_DisplayServer_constant_SCROLL_HINT_TOP_LEFT: + +.. rst-class:: classref-enumeration-constant + +:ref:`AccessibilityScrollHint` **SCROLL_HINT_TOP_LEFT** = ``0`` + +A preferred position for the node scrolled into view. Top-left edge of the scroll container. + +.. _class_DisplayServer_constant_SCROLL_HINT_BOTTOM_RIGHT: + +.. rst-class:: classref-enumeration-constant + +:ref:`AccessibilityScrollHint` **SCROLL_HINT_BOTTOM_RIGHT** = ``1`` + +A preferred position for the node scrolled into view. Bottom-right edge of the scroll container. + +.. _class_DisplayServer_constant_SCROLL_HINT_TOP_EDGE: + +.. rst-class:: classref-enumeration-constant + +:ref:`AccessibilityScrollHint` **SCROLL_HINT_TOP_EDGE** = ``2`` + +A preferred position for the node scrolled into view. Top edge of the scroll container. + +.. _class_DisplayServer_constant_SCROLL_HINT_BOTTOM_EDGE: + +.. rst-class:: classref-enumeration-constant + +:ref:`AccessibilityScrollHint` **SCROLL_HINT_BOTTOM_EDGE** = ``3`` + +A preferred position for the node scrolled into view. Bottom edge of the scroll container. + +.. _class_DisplayServer_constant_SCROLL_HINT_LEFT_EDGE: + +.. rst-class:: classref-enumeration-constant + +:ref:`AccessibilityScrollHint` **SCROLL_HINT_LEFT_EDGE** = ``4`` + +A preferred position for the node scrolled into view. Left edge of the scroll container. + +.. _class_DisplayServer_constant_SCROLL_HINT_RIGHT_EDGE: + +.. rst-class:: classref-enumeration-constant + +:ref:`AccessibilityScrollHint` **SCROLL_HINT_RIGHT_EDGE** = ``5`` + +A preferred position for the node scrolled into view. Right edge of the scroll container. + .. rst-class:: classref-item-separator ---- @@ -1130,8 +2140,6 @@ Full screen window covers the entire display area of a screen and has no decorat \ **On Android:** This enables immersive mode. -\ **On Windows:** Multi-window full-screen mode has a 1px border of the :ref:`ProjectSettings.rendering/environment/defaults/default_clear_color` color. - \ **On macOS:** A new desktop is used to display the running project. \ **Note:** Regardless of the platform, enabling full screen will change the window size to match the monitor's size. Therefore, make sure your project supports :doc:`multiple resolutions <../tutorials/rendering/multiple_resolutions>` when enabling full screen mode. @@ -1146,6 +2154,8 @@ A single window full screen mode. This mode has less overhead, but only one wind Full screen window covers the entire display area of a screen and has no border or decorations. The display's video mode is not changed. +\ **Note:** This mode might not work with screen recording software. + \ **On Android:** This enables immersive mode. \ **On Windows:** Depending on video driver, full screen transition might cause screens to go black for a moment. @@ -1204,6 +2214,8 @@ The window background can be transparent. \ **Note:** Transparency support is implemented on Linux (X11/Wayland), macOS, and Windows, but availability might vary depending on GPU driver, display manager, and compositor capabilities. +\ **Note:** Transparency support is implemented on Android, but can only be enabled via :ref:`ProjectSettings.display/window/per_pixel_transparency/allowed`. This flag has no effect on Android. + .. _class_DisplayServer_constant_WINDOW_FLAG_NO_FOCUS: .. rst-class:: classref-enumeration-constant @@ -1258,17 +2270,45 @@ Window style is overridden, forcing sharp corners. :ref:`WindowFlags` **WINDOW_FLAG_EXCLUDE_FROM_CAPTURE** = ``9`` -Windows is excluded from screenshots taken by :ref:`screen_get_image()`, :ref:`screen_get_image_rect()`, and :ref:`screen_get_pixel()`. +Window is excluded from screenshots taken by :ref:`screen_get_image()`, :ref:`screen_get_image_rect()`, and :ref:`screen_get_pixel()`. + +\ **Note:** This flag is implemented on macOS and Windows (10, 20H1). + +\ **Note:** Setting this flag will prevent standard screenshot methods from capturing a window image, but does **NOT** guarantee that other apps won't be able to capture an image. It should not be used as a DRM or security measure. + +.. _class_DisplayServer_constant_WINDOW_FLAG_POPUP_WM_HINT: + +.. rst-class:: classref-enumeration-constant + +:ref:`WindowFlags` **WINDOW_FLAG_POPUP_WM_HINT** = ``10`` + +Signals the window manager that this window is supposed to be an implementation-defined "popup" (usually a floating, borderless, untileable and immovable child window). + +.. _class_DisplayServer_constant_WINDOW_FLAG_MINIMIZE_DISABLED: + +.. rst-class:: classref-enumeration-constant + +:ref:`WindowFlags` **WINDOW_FLAG_MINIMIZE_DISABLED** = ``11`` + +Window minimize button is disabled. \ **Note:** This flag is implemented on macOS and Windows. -\ **Note:** Setting this flag will **NOT** prevent other apps from capturing an image, it should not be used as a security measure. +.. _class_DisplayServer_constant_WINDOW_FLAG_MAXIMIZE_DISABLED: + +.. rst-class:: classref-enumeration-constant + +:ref:`WindowFlags` **WINDOW_FLAG_MAXIMIZE_DISABLED** = ``12`` + +Window maximize button is disabled. + +\ **Note:** This flag is implemented on macOS and Windows. .. _class_DisplayServer_constant_WINDOW_FLAG_MAX: .. rst-class:: classref-enumeration-constant -:ref:`WindowFlags` **WINDOW_FLAG_MAX** = ``10`` +:ref:`WindowFlags` **WINDOW_FLAG_MAX** = ``13`` Max value of the :ref:`WindowFlags`. @@ -1340,7 +2380,7 @@ Sent when the device "Back" button is pressed. Sent when the window is moved to the display with different DPI, or display DPI is changed. -\ **Note:** This flag is implemented only on macOS. +\ **Note:** This flag is implemented only on macOS and Linux (Wayland). .. _class_DisplayServer_constant_WINDOW_EVENT_TITLEBAR_CHANGE: @@ -1352,6 +2392,16 @@ Sent when the window title bar decoration is changed (e.g. :ref:`WINDOW_FLAG_EXT \ **Note:** This flag is implemented only on macOS. +.. _class_DisplayServer_constant_WINDOW_EVENT_FORCE_CLOSE: + +.. rst-class:: classref-enumeration-constant + +:ref:`WindowEvent` **WINDOW_EVENT_FORCE_CLOSE** = ``8`` + +Sent when the window has been forcibly closed by the Display Server. The window shall immediately hide and clean any internal rendering references. + +\ **Note:** This flag is implemented only on Linux (Wayland). + .. rst-class:: classref-item-separator ---- @@ -1629,6 +2679,14 @@ Utterance reached a word or sentence boundary. Constants --------- +.. _class_DisplayServer_constant_INVALID_SCREEN: + +.. rst-class:: classref-constant + +**INVALID_SCREEN** = ``-1`` :ref:`🔗` + +The ID that refers to a screen that does not exist. This is returned by some **DisplayServer** methods if no screen matches the requested result. + .. _class_DisplayServer_constant_SCREEN_WITH_MOUSE_FOCUS: .. rst-class:: classref-constant @@ -1637,7 +2695,7 @@ Constants Represents the screen containing the mouse pointer. -\ **Note:** On Linux (Wayland), this constant always represents the screen at index ``0``. +\ **Note:** On Android, iOS, Web, and Linux (Wayland), this constant always represents the screen at index ``0``. .. _class_DisplayServer_constant_SCREEN_WITH_KEYBOARD_FOCUS: @@ -1647,7 +2705,7 @@ Represents the screen containing the mouse pointer. Represents the screen containing the window with the keyboard focus. -\ **Note:** On Linux (Wayland), this constant always represents the screen at index ``0``. +\ **Note:** On Android, iOS, Web, and Linux (Wayland), this constant always represents the screen at index ``0``. .. _class_DisplayServer_constant_SCREEN_PRIMARY: @@ -1657,7 +2715,7 @@ Represents the screen containing the window with the keyboard focus. Represents the primary screen. -\ **Note:** On Linux (Wayland), this constant always represents the screen at index ``0``. +\ **Note:** On Android, iOS, Web, and Linux (Wayland), this constant always represents the screen at index ``0``. .. _class_DisplayServer_constant_SCREEN_OF_MAIN_WINDOW: @@ -1667,7 +2725,7 @@ Represents the primary screen. Represents the screen where the main window is located. This is usually the default value in functions that allow specifying one of several screens. -\ **Note:** On Linux (Wayland), this constant always represents the screen at index ``0``. +\ **Note:** On Android, iOS, Web, and Linux (Wayland), this constant always represents the screen at index ``0``. .. _class_DisplayServer_constant_MAIN_WINDOW_ID: @@ -1702,6 +2760,942 @@ The ID that refers to a nonexistent application status indicator. Method Descriptions ------------------- +.. _class_DisplayServer_method_accessibility_create_element: + +.. rst-class:: classref-method + +:ref:`RID` **accessibility_create_element**\ (\ window_id\: :ref:`int`, role\: :ref:`AccessibilityRole`\ ) :ref:`🔗` + +Creates a new, empty accessibility element resource. + +\ **Note:** An accessibility element is created and freed automatically for each :ref:`Node`. In general, this function should not be called manually. + +.. rst-class:: classref-item-separator + +---- + +.. _class_DisplayServer_method_accessibility_create_sub_element: + +.. rst-class:: classref-method + +:ref:`RID` **accessibility_create_sub_element**\ (\ parent_rid\: :ref:`RID`, role\: :ref:`AccessibilityRole`, insert_pos\: :ref:`int` = -1\ ) :ref:`🔗` + +Creates a new, empty accessibility sub-element resource. Sub-elements can be used to provide accessibility information for objects which are not :ref:`Node`\ s, such as list items, table cells, or menu items. Sub-elements are freed automatically when the parent element is freed, or can be freed early using the :ref:`accessibility_free_element()` method. + +.. rst-class:: classref-item-separator + +---- + +.. _class_DisplayServer_method_accessibility_create_sub_text_edit_elements: + +.. rst-class:: classref-method + +:ref:`RID` **accessibility_create_sub_text_edit_elements**\ (\ parent_rid\: :ref:`RID`, shaped_text\: :ref:`RID`, min_height\: :ref:`float`, insert_pos\: :ref:`int` = -1\ ) :ref:`🔗` + +Creates a new, empty accessibility sub-element from the shaped text buffer. Sub-elements are freed automatically when the parent element is freed, or can be freed early using the :ref:`accessibility_free_element()` method. + +.. rst-class:: classref-item-separator + +---- + +.. _class_DisplayServer_method_accessibility_element_get_meta: + +.. rst-class:: classref-method + +:ref:`Variant` **accessibility_element_get_meta**\ (\ id\: :ref:`RID`\ ) |const| :ref:`🔗` + +Returns the metadata of the accessibility element. + +.. rst-class:: classref-item-separator + +---- + +.. _class_DisplayServer_method_accessibility_element_set_meta: + +.. rst-class:: classref-method + +|void| **accessibility_element_set_meta**\ (\ id\: :ref:`RID`, meta\: :ref:`Variant`\ ) :ref:`🔗` + +Sets the metadata of the accessibility element. + +.. rst-class:: classref-item-separator + +---- + +.. _class_DisplayServer_method_accessibility_free_element: + +.. rst-class:: classref-method + +|void| **accessibility_free_element**\ (\ id\: :ref:`RID`\ ) :ref:`🔗` + +Frees an object created by :ref:`accessibility_create_element()`, :ref:`accessibility_create_sub_element()`, or :ref:`accessibility_create_sub_text_edit_elements()`. + +.. rst-class:: classref-item-separator + +---- + +.. _class_DisplayServer_method_accessibility_get_window_root: + +.. rst-class:: classref-method + +:ref:`RID` **accessibility_get_window_root**\ (\ window_id\: :ref:`int`\ ) |const| :ref:`🔗` + +Returns the main accessibility element of the OS native window. + +.. rst-class:: classref-item-separator + +---- + +.. _class_DisplayServer_method_accessibility_has_element: + +.. rst-class:: classref-method + +:ref:`bool` **accessibility_has_element**\ (\ id\: :ref:`RID`\ ) |const| :ref:`🔗` + +Returns ``true`` if ``id`` is a valid accessibility element. + +.. rst-class:: classref-item-separator + +---- + +.. _class_DisplayServer_method_accessibility_screen_reader_active: + +.. rst-class:: classref-method + +:ref:`int` **accessibility_screen_reader_active**\ (\ ) |const| :ref:`🔗` + +Returns ``1`` if a screen reader, Braille display or other assistive app is active, ``0`` otherwise. Returns ``-1`` if status is unknown. + +\ **Note:** This method is implemented on Linux, macOS, and Windows. + +\ **Note:** Accessibility debugging tools, such as Accessibility Insights for Windows, macOS Accessibility Inspector, or AT-SPI Browser do not count as assistive apps and will not affect this value. To test your app with these tools, set :ref:`ProjectSettings.accessibility/general/accessibility_support` to ``1``. + +.. rst-class:: classref-item-separator + +---- + +.. _class_DisplayServer_method_accessibility_set_window_focused: + +.. rst-class:: classref-method + +|void| **accessibility_set_window_focused**\ (\ window_id\: :ref:`int`, focused\: :ref:`bool`\ ) :ref:`🔗` + +Sets the window focused state for assistive apps. + +\ **Note:** This method is implemented on Linux, macOS, and Windows. + +\ **Note:** Advanced users only! :ref:`Window` objects call this method automatically. + +.. rst-class:: classref-item-separator + +---- + +.. _class_DisplayServer_method_accessibility_set_window_rect: + +.. rst-class:: classref-method + +|void| **accessibility_set_window_rect**\ (\ window_id\: :ref:`int`, rect_out\: :ref:`Rect2`, rect_in\: :ref:`Rect2`\ ) :ref:`🔗` + +Sets window outer (with decorations) and inner (without decorations) bounds for assistive apps. + +\ **Note:** This method is implemented on Linux, macOS, and Windows. + +\ **Note:** Advanced users only! :ref:`Window` objects call this method automatically. + +.. rst-class:: classref-item-separator + +---- + +.. _class_DisplayServer_method_accessibility_should_increase_contrast: + +.. rst-class:: classref-method + +:ref:`int` **accessibility_should_increase_contrast**\ (\ ) |const| :ref:`🔗` + +Returns ``1`` if a high-contrast user interface theme should be used, ``0`` otherwise. Returns ``-1`` if status is unknown. + +\ **Note:** This method is implemented on Linux (X11/Wayland, GNOME), macOS, and Windows. + +.. rst-class:: classref-item-separator + +---- + +.. _class_DisplayServer_method_accessibility_should_reduce_animation: + +.. rst-class:: classref-method + +:ref:`int` **accessibility_should_reduce_animation**\ (\ ) |const| :ref:`🔗` + +Returns ``1`` if flashing, blinking, and other moving content that can cause seizures in users with photosensitive epilepsy should be disabled, ``0`` otherwise. Returns ``-1`` if status is unknown. + +\ **Note:** This method is implemented on macOS and Windows. + +.. rst-class:: classref-item-separator + +---- + +.. _class_DisplayServer_method_accessibility_should_reduce_transparency: + +.. rst-class:: classref-method + +:ref:`int` **accessibility_should_reduce_transparency**\ (\ ) |const| :ref:`🔗` + +Returns ``1`` if background images, transparency, and other features that can reduce the contrast between the foreground and background should be disabled, ``0`` otherwise. Returns ``-1`` if status is unknown. + +\ **Note:** This method is implemented on macOS and Windows. + +.. rst-class:: classref-item-separator + +---- + +.. _class_DisplayServer_method_accessibility_update_add_action: + +.. rst-class:: classref-method + +|void| **accessibility_update_add_action**\ (\ id\: :ref:`RID`, action\: :ref:`AccessibilityAction`, callable\: :ref:`Callable`\ ) :ref:`🔗` + +Adds a callback for the accessibility action (action which can be performed by using a special screen reader command or buttons on the Braille display), and marks this action as supported. The action callback receives one :ref:`Variant` argument, which value depends on action type. + +.. rst-class:: classref-item-separator + +---- + +.. _class_DisplayServer_method_accessibility_update_add_child: + +.. rst-class:: classref-method + +|void| **accessibility_update_add_child**\ (\ id\: :ref:`RID`, child_id\: :ref:`RID`\ ) :ref:`🔗` + +Adds a child accessibility element. + +\ **Note:** :ref:`Node` children and sub-elements are added to the child list automatically. + +.. rst-class:: classref-item-separator + +---- + +.. _class_DisplayServer_method_accessibility_update_add_custom_action: + +.. rst-class:: classref-method + +|void| **accessibility_update_add_custom_action**\ (\ id\: :ref:`RID`, action_id\: :ref:`int`, action_description\: :ref:`String`\ ) :ref:`🔗` + +Adds support for a custom accessibility action. ``action_id`` is passed as an argument to the callback of :ref:`ACTION_CUSTOM` action. + +.. rst-class:: classref-item-separator + +---- + +.. _class_DisplayServer_method_accessibility_update_add_related_controls: + +.. rst-class:: classref-method + +|void| **accessibility_update_add_related_controls**\ (\ id\: :ref:`RID`, related_id\: :ref:`RID`\ ) :ref:`🔗` + +Adds an element that is controlled by this element. + +.. rst-class:: classref-item-separator + +---- + +.. _class_DisplayServer_method_accessibility_update_add_related_described_by: + +.. rst-class:: classref-method + +|void| **accessibility_update_add_related_described_by**\ (\ id\: :ref:`RID`, related_id\: :ref:`RID`\ ) :ref:`🔗` + +Adds an element that describes this element. + +.. rst-class:: classref-item-separator + +---- + +.. _class_DisplayServer_method_accessibility_update_add_related_details: + +.. rst-class:: classref-method + +|void| **accessibility_update_add_related_details**\ (\ id\: :ref:`RID`, related_id\: :ref:`RID`\ ) :ref:`🔗` + +Adds an element that details this element. + +.. rst-class:: classref-item-separator + +---- + +.. _class_DisplayServer_method_accessibility_update_add_related_flow_to: + +.. rst-class:: classref-method + +|void| **accessibility_update_add_related_flow_to**\ (\ id\: :ref:`RID`, related_id\: :ref:`RID`\ ) :ref:`🔗` + +Adds an element that this element flow into. + +.. rst-class:: classref-item-separator + +---- + +.. _class_DisplayServer_method_accessibility_update_add_related_labeled_by: + +.. rst-class:: classref-method + +|void| **accessibility_update_add_related_labeled_by**\ (\ id\: :ref:`RID`, related_id\: :ref:`RID`\ ) :ref:`🔗` + +Adds an element that labels this element. + +.. rst-class:: classref-item-separator + +---- + +.. _class_DisplayServer_method_accessibility_update_add_related_radio_group: + +.. rst-class:: classref-method + +|void| **accessibility_update_add_related_radio_group**\ (\ id\: :ref:`RID`, related_id\: :ref:`RID`\ ) :ref:`🔗` + +Adds an element that is part of the same radio group. + +\ **Note:** This method should be called on each element of the group, using all other elements as ``related_id``. + +.. rst-class:: classref-item-separator + +---- + +.. _class_DisplayServer_method_accessibility_update_set_active_descendant: + +.. rst-class:: classref-method + +|void| **accessibility_update_set_active_descendant**\ (\ id\: :ref:`RID`, other_id\: :ref:`RID`\ ) :ref:`🔗` + +Adds an element that is an active descendant of this element. + +.. rst-class:: classref-item-separator + +---- + +.. _class_DisplayServer_method_accessibility_update_set_background_color: + +.. rst-class:: classref-method + +|void| **accessibility_update_set_background_color**\ (\ id\: :ref:`RID`, color\: :ref:`Color`\ ) :ref:`🔗` + +Sets element background color. + +.. rst-class:: classref-item-separator + +---- + +.. _class_DisplayServer_method_accessibility_update_set_bounds: + +.. rst-class:: classref-method + +|void| **accessibility_update_set_bounds**\ (\ id\: :ref:`RID`, p_rect\: :ref:`Rect2`\ ) :ref:`🔗` + +Sets element bounding box, relative to the node position. + +.. rst-class:: classref-item-separator + +---- + +.. _class_DisplayServer_method_accessibility_update_set_checked: + +.. rst-class:: classref-method + +|void| **accessibility_update_set_checked**\ (\ id\: :ref:`RID`, checekd\: :ref:`bool`\ ) :ref:`🔗` + +Sets element checked state. + +.. rst-class:: classref-item-separator + +---- + +.. _class_DisplayServer_method_accessibility_update_set_classname: + +.. rst-class:: classref-method + +|void| **accessibility_update_set_classname**\ (\ id\: :ref:`RID`, classname\: :ref:`String`\ ) :ref:`🔗` + +Sets element class name. + +.. rst-class:: classref-item-separator + +---- + +.. _class_DisplayServer_method_accessibility_update_set_color_value: + +.. rst-class:: classref-method + +|void| **accessibility_update_set_color_value**\ (\ id\: :ref:`RID`, color\: :ref:`Color`\ ) :ref:`🔗` + +Sets element color value. + +.. rst-class:: classref-item-separator + +---- + +.. _class_DisplayServer_method_accessibility_update_set_description: + +.. rst-class:: classref-method + +|void| **accessibility_update_set_description**\ (\ id\: :ref:`RID`, description\: :ref:`String`\ ) :ref:`🔗` + +Sets element accessibility description. + +.. rst-class:: classref-item-separator + +---- + +.. _class_DisplayServer_method_accessibility_update_set_error_message: + +.. rst-class:: classref-method + +|void| **accessibility_update_set_error_message**\ (\ id\: :ref:`RID`, other_id\: :ref:`RID`\ ) :ref:`🔗` + +Sets an element which contains an error message for this element. + +.. rst-class:: classref-item-separator + +---- + +.. _class_DisplayServer_method_accessibility_update_set_extra_info: + +.. rst-class:: classref-method + +|void| **accessibility_update_set_extra_info**\ (\ id\: :ref:`RID`, name\: :ref:`String`\ ) :ref:`🔗` + +Sets element accessibility extra information added to the element name. + +.. rst-class:: classref-item-separator + +---- + +.. _class_DisplayServer_method_accessibility_update_set_flag: + +.. rst-class:: classref-method + +|void| **accessibility_update_set_flag**\ (\ id\: :ref:`RID`, flag\: :ref:`AccessibilityFlags`, value\: :ref:`bool`\ ) :ref:`🔗` + +Sets element flag. + +.. rst-class:: classref-item-separator + +---- + +.. _class_DisplayServer_method_accessibility_update_set_focus: + +.. rst-class:: classref-method + +|void| **accessibility_update_set_focus**\ (\ id\: :ref:`RID`\ ) :ref:`🔗` + +Sets currently focused element. + +.. rst-class:: classref-item-separator + +---- + +.. _class_DisplayServer_method_accessibility_update_set_foreground_color: + +.. rst-class:: classref-method + +|void| **accessibility_update_set_foreground_color**\ (\ id\: :ref:`RID`, color\: :ref:`Color`\ ) :ref:`🔗` + +Sets element foreground color. + +.. rst-class:: classref-item-separator + +---- + +.. _class_DisplayServer_method_accessibility_update_set_in_page_link_target: + +.. rst-class:: classref-method + +|void| **accessibility_update_set_in_page_link_target**\ (\ id\: :ref:`RID`, other_id\: :ref:`RID`\ ) :ref:`🔗` + +Sets target element for the link. + +.. rst-class:: classref-item-separator + +---- + +.. _class_DisplayServer_method_accessibility_update_set_language: + +.. rst-class:: classref-method + +|void| **accessibility_update_set_language**\ (\ id\: :ref:`RID`, language\: :ref:`String`\ ) :ref:`🔗` + +Sets element text language. + +.. rst-class:: classref-item-separator + +---- + +.. _class_DisplayServer_method_accessibility_update_set_list_item_count: + +.. rst-class:: classref-method + +|void| **accessibility_update_set_list_item_count**\ (\ id\: :ref:`RID`, size\: :ref:`int`\ ) :ref:`🔗` + +Sets number of items in the list. + +.. rst-class:: classref-item-separator + +---- + +.. _class_DisplayServer_method_accessibility_update_set_list_item_expanded: + +.. rst-class:: classref-method + +|void| **accessibility_update_set_list_item_expanded**\ (\ id\: :ref:`RID`, expanded\: :ref:`bool`\ ) :ref:`🔗` + +Sets list/tree item expanded status. + +.. rst-class:: classref-item-separator + +---- + +.. _class_DisplayServer_method_accessibility_update_set_list_item_index: + +.. rst-class:: classref-method + +|void| **accessibility_update_set_list_item_index**\ (\ id\: :ref:`RID`, index\: :ref:`int`\ ) :ref:`🔗` + +Sets the position of the element in the list. + +.. rst-class:: classref-item-separator + +---- + +.. _class_DisplayServer_method_accessibility_update_set_list_item_level: + +.. rst-class:: classref-method + +|void| **accessibility_update_set_list_item_level**\ (\ id\: :ref:`RID`, level\: :ref:`int`\ ) :ref:`🔗` + +Sets the hierarchical level of the element in the list. + +.. rst-class:: classref-item-separator + +---- + +.. _class_DisplayServer_method_accessibility_update_set_list_item_selected: + +.. rst-class:: classref-method + +|void| **accessibility_update_set_list_item_selected**\ (\ id\: :ref:`RID`, selected\: :ref:`bool`\ ) :ref:`🔗` + +Sets list/tree item selected status. + +.. rst-class:: classref-item-separator + +---- + +.. _class_DisplayServer_method_accessibility_update_set_list_orientation: + +.. rst-class:: classref-method + +|void| **accessibility_update_set_list_orientation**\ (\ id\: :ref:`RID`, vertical\: :ref:`bool`\ ) :ref:`🔗` + +Sets the orientation of the list elements. + +.. rst-class:: classref-item-separator + +---- + +.. _class_DisplayServer_method_accessibility_update_set_live: + +.. rst-class:: classref-method + +|void| **accessibility_update_set_live**\ (\ id\: :ref:`RID`, live\: :ref:`AccessibilityLiveMode`\ ) :ref:`🔗` + +Sets the priority of the live region updates. + +.. rst-class:: classref-item-separator + +---- + +.. _class_DisplayServer_method_accessibility_update_set_member_of: + +.. rst-class:: classref-method + +|void| **accessibility_update_set_member_of**\ (\ id\: :ref:`RID`, group_id\: :ref:`RID`\ ) :ref:`🔗` + +Sets the element to be a member of the group. + +.. rst-class:: classref-item-separator + +---- + +.. _class_DisplayServer_method_accessibility_update_set_name: + +.. rst-class:: classref-method + +|void| **accessibility_update_set_name**\ (\ id\: :ref:`RID`, name\: :ref:`String`\ ) :ref:`🔗` + +Sets element accessibility name. + +.. rst-class:: classref-item-separator + +---- + +.. _class_DisplayServer_method_accessibility_update_set_next_on_line: + +.. rst-class:: classref-method + +|void| **accessibility_update_set_next_on_line**\ (\ id\: :ref:`RID`, other_id\: :ref:`RID`\ ) :ref:`🔗` + +Sets next element on the line. + +.. rst-class:: classref-item-separator + +---- + +.. _class_DisplayServer_method_accessibility_update_set_num_jump: + +.. rst-class:: classref-method + +|void| **accessibility_update_set_num_jump**\ (\ id\: :ref:`RID`, jump\: :ref:`float`\ ) :ref:`🔗` + +Sets numeric value jump. + +.. rst-class:: classref-item-separator + +---- + +.. _class_DisplayServer_method_accessibility_update_set_num_range: + +.. rst-class:: classref-method + +|void| **accessibility_update_set_num_range**\ (\ id\: :ref:`RID`, min\: :ref:`float`, max\: :ref:`float`\ ) :ref:`🔗` + +Sets numeric value range. + +.. rst-class:: classref-item-separator + +---- + +.. _class_DisplayServer_method_accessibility_update_set_num_step: + +.. rst-class:: classref-method + +|void| **accessibility_update_set_num_step**\ (\ id\: :ref:`RID`, step\: :ref:`float`\ ) :ref:`🔗` + +Sets numeric value step. + +.. rst-class:: classref-item-separator + +---- + +.. _class_DisplayServer_method_accessibility_update_set_num_value: + +.. rst-class:: classref-method + +|void| **accessibility_update_set_num_value**\ (\ id\: :ref:`RID`, position\: :ref:`float`\ ) :ref:`🔗` + +Sets numeric value. + +.. rst-class:: classref-item-separator + +---- + +.. _class_DisplayServer_method_accessibility_update_set_placeholder: + +.. rst-class:: classref-method + +|void| **accessibility_update_set_placeholder**\ (\ id\: :ref:`RID`, placeholder\: :ref:`String`\ ) :ref:`🔗` + +Sets placeholder text. + +.. rst-class:: classref-item-separator + +---- + +.. _class_DisplayServer_method_accessibility_update_set_popup_type: + +.. rst-class:: classref-method + +|void| **accessibility_update_set_popup_type**\ (\ id\: :ref:`RID`, popup\: :ref:`AccessibilityPopupType`\ ) :ref:`🔗` + +Sets popup type for popup buttons. + +.. rst-class:: classref-item-separator + +---- + +.. _class_DisplayServer_method_accessibility_update_set_previous_on_line: + +.. rst-class:: classref-method + +|void| **accessibility_update_set_previous_on_line**\ (\ id\: :ref:`RID`, other_id\: :ref:`RID`\ ) :ref:`🔗` + +Sets previous element on the line. + +.. rst-class:: classref-item-separator + +---- + +.. _class_DisplayServer_method_accessibility_update_set_role: + +.. rst-class:: classref-method + +|void| **accessibility_update_set_role**\ (\ id\: :ref:`RID`, role\: :ref:`AccessibilityRole`\ ) :ref:`🔗` + +Sets element accessibility role. + +.. rst-class:: classref-item-separator + +---- + +.. _class_DisplayServer_method_accessibility_update_set_role_description: + +.. rst-class:: classref-method + +|void| **accessibility_update_set_role_description**\ (\ id\: :ref:`RID`, description\: :ref:`String`\ ) :ref:`🔗` + +Sets element accessibility role description text. + +.. rst-class:: classref-item-separator + +---- + +.. _class_DisplayServer_method_accessibility_update_set_scroll_x: + +.. rst-class:: classref-method + +|void| **accessibility_update_set_scroll_x**\ (\ id\: :ref:`RID`, position\: :ref:`float`\ ) :ref:`🔗` + +Sets scroll bar x position. + +.. rst-class:: classref-item-separator + +---- + +.. _class_DisplayServer_method_accessibility_update_set_scroll_x_range: + +.. rst-class:: classref-method + +|void| **accessibility_update_set_scroll_x_range**\ (\ id\: :ref:`RID`, min\: :ref:`float`, max\: :ref:`float`\ ) :ref:`🔗` + +Sets scroll bar x range. + +.. rst-class:: classref-item-separator + +---- + +.. _class_DisplayServer_method_accessibility_update_set_scroll_y: + +.. rst-class:: classref-method + +|void| **accessibility_update_set_scroll_y**\ (\ id\: :ref:`RID`, position\: :ref:`float`\ ) :ref:`🔗` + +Sets scroll bar y position. + +.. rst-class:: classref-item-separator + +---- + +.. _class_DisplayServer_method_accessibility_update_set_scroll_y_range: + +.. rst-class:: classref-method + +|void| **accessibility_update_set_scroll_y_range**\ (\ id\: :ref:`RID`, min\: :ref:`float`, max\: :ref:`float`\ ) :ref:`🔗` + +Sets scroll bar y range. + +.. rst-class:: classref-item-separator + +---- + +.. _class_DisplayServer_method_accessibility_update_set_shortcut: + +.. rst-class:: classref-method + +|void| **accessibility_update_set_shortcut**\ (\ id\: :ref:`RID`, shortcut\: :ref:`String`\ ) :ref:`🔗` + +Sets the list of keyboard shortcuts used by element. + +.. rst-class:: classref-item-separator + +---- + +.. _class_DisplayServer_method_accessibility_update_set_state_description: + +.. rst-class:: classref-method + +|void| **accessibility_update_set_state_description**\ (\ id\: :ref:`RID`, description\: :ref:`String`\ ) :ref:`🔗` + +Sets human-readable description of the current checked state. + +.. rst-class:: classref-item-separator + +---- + +.. _class_DisplayServer_method_accessibility_update_set_table_cell_position: + +.. rst-class:: classref-method + +|void| **accessibility_update_set_table_cell_position**\ (\ id\: :ref:`RID`, row_index\: :ref:`int`, column_index\: :ref:`int`\ ) :ref:`🔗` + +Sets cell position in the table. + +.. rst-class:: classref-item-separator + +---- + +.. _class_DisplayServer_method_accessibility_update_set_table_cell_span: + +.. rst-class:: classref-method + +|void| **accessibility_update_set_table_cell_span**\ (\ id\: :ref:`RID`, row_span\: :ref:`int`, column_span\: :ref:`int`\ ) :ref:`🔗` + +Sets cell row/column span. + +.. rst-class:: classref-item-separator + +---- + +.. _class_DisplayServer_method_accessibility_update_set_table_column_count: + +.. rst-class:: classref-method + +|void| **accessibility_update_set_table_column_count**\ (\ id\: :ref:`RID`, count\: :ref:`int`\ ) :ref:`🔗` + +Sets number of columns in the table. + +.. rst-class:: classref-item-separator + +---- + +.. _class_DisplayServer_method_accessibility_update_set_table_column_index: + +.. rst-class:: classref-method + +|void| **accessibility_update_set_table_column_index**\ (\ id\: :ref:`RID`, index\: :ref:`int`\ ) :ref:`🔗` + +Sets position of the column. + +.. rst-class:: classref-item-separator + +---- + +.. _class_DisplayServer_method_accessibility_update_set_table_row_count: + +.. rst-class:: classref-method + +|void| **accessibility_update_set_table_row_count**\ (\ id\: :ref:`RID`, count\: :ref:`int`\ ) :ref:`🔗` + +Sets number of rows in the table. + +.. rst-class:: classref-item-separator + +---- + +.. _class_DisplayServer_method_accessibility_update_set_table_row_index: + +.. rst-class:: classref-method + +|void| **accessibility_update_set_table_row_index**\ (\ id\: :ref:`RID`, index\: :ref:`int`\ ) :ref:`🔗` + +Sets position of the row in the table. + +.. rst-class:: classref-item-separator + +---- + +.. _class_DisplayServer_method_accessibility_update_set_text_align: + +.. rst-class:: classref-method + +|void| **accessibility_update_set_text_align**\ (\ id\: :ref:`RID`, align\: :ref:`HorizontalAlignment`\ ) :ref:`🔗` + +Sets element text alignment. + +.. rst-class:: classref-item-separator + +---- + +.. _class_DisplayServer_method_accessibility_update_set_text_decorations: + +.. rst-class:: classref-method + +|void| **accessibility_update_set_text_decorations**\ (\ id\: :ref:`RID`, underline\: :ref:`bool`, strikethrough\: :ref:`bool`, overline\: :ref:`bool`\ ) :ref:`🔗` + +Sets text underline/overline/strikethrough. + +.. rst-class:: classref-item-separator + +---- + +.. _class_DisplayServer_method_accessibility_update_set_text_orientation: + +.. rst-class:: classref-method + +|void| **accessibility_update_set_text_orientation**\ (\ id\: :ref:`RID`, vertical\: :ref:`bool`\ ) :ref:`🔗` + +Sets text orientation. + +.. rst-class:: classref-item-separator + +---- + +.. _class_DisplayServer_method_accessibility_update_set_text_selection: + +.. rst-class:: classref-method + +|void| **accessibility_update_set_text_selection**\ (\ id\: :ref:`RID`, text_start_id\: :ref:`RID`, start_char\: :ref:`int`, text_end_id\: :ref:`RID`, end_char\: :ref:`int`\ ) :ref:`🔗` + +Sets text selection to the text field. ``text_start_id`` and ``text_end_id`` should be elements created by :ref:`accessibility_create_sub_text_edit_elements()`. Character offsets are relative to the corresponding element. + +.. rst-class:: classref-item-separator + +---- + +.. _class_DisplayServer_method_accessibility_update_set_tooltip: + +.. rst-class:: classref-method + +|void| **accessibility_update_set_tooltip**\ (\ id\: :ref:`RID`, tooltip\: :ref:`String`\ ) :ref:`🔗` + +Sets tooltip text. + +.. rst-class:: classref-item-separator + +---- + +.. _class_DisplayServer_method_accessibility_update_set_transform: + +.. rst-class:: classref-method + +|void| **accessibility_update_set_transform**\ (\ id\: :ref:`RID`, transform\: :ref:`Transform2D`\ ) :ref:`🔗` + +Sets element 2D transform. + +.. rst-class:: classref-item-separator + +---- + +.. _class_DisplayServer_method_accessibility_update_set_url: + +.. rst-class:: classref-method + +|void| **accessibility_update_set_url**\ (\ id\: :ref:`RID`, url\: :ref:`String`\ ) :ref:`🔗` + +Sets link URL. + +.. rst-class:: classref-item-separator + +---- + +.. _class_DisplayServer_method_accessibility_update_set_value: + +.. rst-class:: classref-method + +|void| **accessibility_update_set_value**\ (\ id\: :ref:`RID`, value\: :ref:`String`\ ) :ref:`🔗` + +Sets element text value. + +.. rst-class:: classref-item-separator + +---- + .. _class_DisplayServer_method_beep: .. rst-class:: classref-method @@ -1736,7 +3730,7 @@ Returns the user's clipboard as a string if possible. Returns the user's clipboard as an image if possible. -\ **Note:** This method uses the copied pixel data, e.g. from a image editing software or a web browser, not an image file copied from file explorer. +\ **Note:** This method uses the copied pixel data, e.g. from an image editing software or a web browser, not an image file copied from file explorer. .. rst-class:: classref-item-separator @@ -1806,6 +3800,24 @@ Sets the user's `primary ` **color_picker**\ (\ callback\: :ref:`Callable`\ ) :ref:`🔗` + +Displays OS native color picker. + +Callbacks have the following arguments: ``status: bool, color: Color``. + +\ **Note:** This method is implemented if the display server has the :ref:`FEATURE_NATIVE_COLOR_PICKER` feature. + +\ **Note:** This method is only implemented on Linux (X11/Wayland). + +.. rst-class:: classref-item-separator + +---- + .. _class_DisplayServer_method_create_status_indicator: .. rst-class:: classref-method @@ -1916,15 +3928,15 @@ Allows the ``process_id`` PID to steal focus from this window. In other words, t .. rst-class:: classref-method -:ref:`Error` **file_dialog_show**\ (\ title\: :ref:`String`, current_directory\: :ref:`String`, filename\: :ref:`String`, show_hidden\: :ref:`bool`, mode\: :ref:`FileDialogMode`, filters\: :ref:`PackedStringArray`, callback\: :ref:`Callable`\ ) :ref:`🔗` +:ref:`Error` **file_dialog_show**\ (\ title\: :ref:`String`, current_directory\: :ref:`String`, filename\: :ref:`String`, show_hidden\: :ref:`bool`, mode\: :ref:`FileDialogMode`, filters\: :ref:`PackedStringArray`, callback\: :ref:`Callable`, parent_window_id\: :ref:`int` = 0\ ) :ref:`🔗` Displays OS native dialog for selecting files or directories in the file system. Each filter string in the ``filters`` array should be formatted like this: ``*.png,*.jpg,*.jpeg;Image Files;image/png,image/jpeg``. The description text of the filter is optional and can be omitted. It is recommended to set both file extension and MIME type. See also :ref:`FileDialog.filters`. -Callbacks have the following arguments: ``status: bool, selected_paths: PackedStringArray, selected_filter_index: int``. **On Android,** callback argument ``selected_filter_index`` is always zero. +Callbacks have the following arguments: ``status: bool, selected_paths: PackedStringArray, selected_filter_index: int``. **On Android,** the third callback argument (``selected_filter_index``) is always ``0``. -\ **Note:** This method is implemented if the display server has the :ref:`FEATURE_NATIVE_DIALOG_FILE` feature. Supported platforms include Linux (X11/Wayland), Windows, macOS, and Android. +\ **Note:** This method is implemented if the display server has the :ref:`FEATURE_NATIVE_DIALOG_FILE` feature. Supported platforms include Linux (X11/Wayland), Windows, macOS, and Android (API level 29+). \ **Note:** ``current_directory`` might be ignored. @@ -1944,7 +3956,7 @@ Callbacks have the following arguments: ``status: bool, selected_paths: PackedSt .. rst-class:: classref-method -:ref:`Error` **file_dialog_with_options_show**\ (\ title\: :ref:`String`, current_directory\: :ref:`String`, root\: :ref:`String`, filename\: :ref:`String`, show_hidden\: :ref:`bool`, mode\: :ref:`FileDialogMode`, filters\: :ref:`PackedStringArray`, options\: :ref:`Array`\[:ref:`Dictionary`\], callback\: :ref:`Callable`\ ) :ref:`🔗` +:ref:`Error` **file_dialog_with_options_show**\ (\ title\: :ref:`String`, current_directory\: :ref:`String`, root\: :ref:`String`, filename\: :ref:`String`, show_hidden\: :ref:`bool`, mode\: :ref:`FileDialogMode`, filters\: :ref:`PackedStringArray`, options\: :ref:`Array`\[:ref:`Dictionary`\], callback\: :ref:`Callable`, parent_window_id\: :ref:`int` = 0\ ) :ref:`🔗` Displays OS native dialog for selecting files or directories in the file system with additional user selectable options. @@ -1998,7 +4010,7 @@ Forces window manager processing while ignoring all :ref:`InputEvent` **get_screen_from_rect**\ (\ rect\: :ref:`Rect2`\ ) |const| :ref:`🔗` -Returns the index of the screen that overlaps the most with the given rectangle. Returns ``-1`` if the rectangle doesn't overlap with any screen or has no area. +Returns the index of the screen that overlaps the most with the given rectangle. Returns :ref:`INVALID_SCREEN` if the rectangle doesn't overlap with any screen or has no area. .. rst-class:: classref-item-separator @@ -3141,9 +5159,9 @@ Returns ``true`` if the specified ``feature`` is supported by the current **Disp :ref:`bool` **has_hardware_keyboard**\ (\ ) |const| :ref:`🔗` -Returns ``true`` if hardware keyboard is connected. +Returns ``true`` if a hardware keyboard is connected. -\ **Note:** This method is implemented on Android and iOS, on other platforms this method always returns ``true``. +\ **Note:** This method is implemented on Android and iOS. On other platforms, this method always returns ``true``. .. rst-class:: classref-item-separator @@ -3425,7 +5443,9 @@ This can be used to prevent Godot from skipping rendering when no normal windows :ref:`int` **screen_get_dpi**\ (\ screen\: :ref:`int` = -1\ ) |const| :ref:`🔗` -Returns the dots per inch density of the specified screen. If ``screen`` is :ref:`SCREEN_OF_MAIN_WINDOW` (the default value), a screen with the main window will be used. +Returns the dots per inch density of the specified screen. Returns platform specific default value if ``screen`` is invalid. + +\ **Note:** One of the following constants can be used as ``screen``: :ref:`SCREEN_OF_MAIN_WINDOW`, :ref:`SCREEN_PRIMARY`, :ref:`SCREEN_WITH_MOUSE_FOCUS`, or :ref:`SCREEN_WITH_KEYBOARD_FOCUS`. \ **Note:** On macOS, returned value is inaccurate if fractional display scaling mode is used. @@ -3440,7 +5460,7 @@ Returns the dots per inch density of the specified screen. If ``screen`` is :ref xxhdpi - 480 dpi xxxhdpi - 640 dpi -\ **Note:** This method is implemented on Android, Linux (X11/Wayland), macOS and Windows. Returns ``72`` on unsupported platforms. +\ **Note:** This method is implemented on Android, iOS, Linux (X11/Wayland), macOS, Web, and Windows. On other platforms, this method always returns ``72``. .. rst-class:: classref-item-separator @@ -3452,11 +5472,13 @@ Returns the dots per inch density of the specified screen. If ``screen`` is :ref :ref:`Image` **screen_get_image**\ (\ screen\: :ref:`int` = -1\ ) |const| :ref:`🔗` -Returns screenshot of the ``screen``. +Returns a screenshot of the ``screen``. Returns ``null`` if ``screen`` is invalid or the **DisplayServer** fails to capture screenshot. -\ **Note:** This method is implemented on Linux (X11), macOS, and Windows. +\ **Note:** One of the following constants can be used as ``screen``: :ref:`SCREEN_OF_MAIN_WINDOW`, :ref:`SCREEN_PRIMARY`, :ref:`SCREEN_WITH_MOUSE_FOCUS`, or :ref:`SCREEN_WITH_KEYBOARD_FOCUS`. -\ **Note:** On macOS, this method requires "Screen Recording" permission, if permission is not granted it will return desktop wallpaper color. +\ **Note:** This method is implemented on Linux (X11, excluding XWayland), macOS, and Windows. On other platforms, this method always returns ``null``. + +\ **Note:** On macOS, this method requires the "Screen Recording" permission. If permission is not granted, this method returns a screenshot that will not include other application windows or OS elements not related to the application. .. rst-class:: classref-item-separator @@ -3468,11 +5490,11 @@ Returns screenshot of the ``screen``. :ref:`Image` **screen_get_image_rect**\ (\ rect\: :ref:`Rect2i`\ ) |const| :ref:`🔗` -Returns screenshot of the screen ``rect``. +Returns a screenshot of the screen region defined by ``rect``. Returns ``null`` if ``rect`` is outside screen bounds or the **DisplayServer** fails to capture screenshot. -\ **Note:** This method is implemented on macOS and Windows. +\ **Note:** This method is implemented on macOS and Windows. On other platforms, this method always returns ``null``. -\ **Note:** On macOS, this method requires "Screen Recording" permission, if permission is not granted it will return desktop wallpaper color. +\ **Note:** On macOS, this method requires the "Screen Recording" permission. If permission is not granted, this method returns a screenshot that will not include other application windows or OS elements not related to the application. .. rst-class:: classref-item-separator @@ -3500,9 +5522,11 @@ Returns the greatest scale factor of all screens. :ref:`ScreenOrientation` **screen_get_orientation**\ (\ screen\: :ref:`int` = -1\ ) |const| :ref:`🔗` -Returns the ``screen``'s current orientation. See also :ref:`screen_set_orientation()`. +Returns the ``screen``'s current orientation. See also :ref:`screen_set_orientation()`. Returns :ref:`SCREEN_LANDSCAPE` if ``screen`` is invalid. -\ **Note:** This method is implemented on Android and iOS. +\ **Note:** One of the following constants can be used as ``screen``: :ref:`SCREEN_OF_MAIN_WINDOW`, :ref:`SCREEN_PRIMARY`, :ref:`SCREEN_WITH_MOUSE_FOCUS`, or :ref:`SCREEN_WITH_KEYBOARD_FOCUS`. + +\ **Note:** This method is implemented on Android and iOS. On other platforms, this method always returns :ref:`SCREEN_LANDSCAPE`. .. rst-class:: classref-item-separator @@ -3516,9 +5540,9 @@ Returns the ``screen``'s current orientation. See also :ref:`screen_set_orientat Returns color of the display pixel at the ``position``. -\ **Note:** This method is implemented on Linux (X11), macOS, and Windows. +\ **Note:** This method is implemented on Linux (X11, excluding XWayland), macOS, and Windows. On other platforms, this method always returns :ref:`Color`. -\ **Note:** On macOS, this method requires "Screen Recording" permission, if permission is not granted it will return desktop wallpaper color. +\ **Note:** On macOS, this method requires the "Screen Recording" permission. If permission is not granted, this method returns a screenshot that will only contain the desktop wallpaper, the current application's window, and other related UI elements. .. rst-class:: classref-item-separator @@ -3530,7 +5554,7 @@ Returns color of the display pixel at the ``position``. :ref:`Vector2i` **screen_get_position**\ (\ screen\: :ref:`int` = -1\ ) |const| :ref:`🔗` -Returns the screen's top-left corner position in pixels. On multi-monitor setups, the screen position is relative to the virtual desktop area. On multi-monitor setups with different screen resolutions or orientations, the origin may be located outside any display like this: +Returns the screen's top-left corner position in pixels. Returns :ref:`Vector2i.ZERO` if ``screen`` is invalid. On multi-monitor setups, the screen position is relative to the virtual desktop area. On multi-monitor setups with different screen resolutions or orientations, the origin might be located outside any display like this: .. code:: text @@ -3543,7 +5567,7 @@ Returns the screen's top-left corner position in pixels. On multi-monitor setups See also :ref:`screen_get_size()`. -\ **Note:** On Linux (Wayland) this method always returns ``(0, 0)``. +\ **Note:** One of the following constants can be used as ``screen``: :ref:`SCREEN_OF_MAIN_WINDOW`, :ref:`SCREEN_PRIMARY`, :ref:`SCREEN_WITH_MOUSE_FOCUS`, or :ref:`SCREEN_WITH_KEYBOARD_FOCUS`. .. rst-class:: classref-item-separator @@ -3555,9 +5579,7 @@ See also :ref:`screen_get_size()`. :ref:`float` **screen_get_refresh_rate**\ (\ screen\: :ref:`int` = -1\ ) |const| :ref:`🔗` -Returns the current refresh rate of the specified screen. If ``screen`` is :ref:`SCREEN_OF_MAIN_WINDOW` (the default value), a screen with the main window will be used. - -\ **Note:** Returns ``-1.0`` if the DisplayServer fails to find the refresh rate for the specified screen. On Web, :ref:`screen_get_refresh_rate()` will always return ``-1.0`` as there is no way to retrieve the refresh rate on that platform. +Returns the current refresh rate of the specified screen. Returns ``-1.0`` if ``screen`` is invalid or the **DisplayServer** fails to find the refresh rate for the specified screen. To fallback to a default refresh rate if the method fails, try: @@ -3567,6 +5589,10 @@ To fallback to a default refresh rate if the method fails, try: if refresh_rate < 0: refresh_rate = 60.0 +\ **Note:** One of the following constants can be used as ``screen``: :ref:`SCREEN_OF_MAIN_WINDOW`, :ref:`SCREEN_PRIMARY`, :ref:`SCREEN_WITH_MOUSE_FOCUS`, or :ref:`SCREEN_WITH_KEYBOARD_FOCUS`. + +\ **Note:** This method is implemented on Android, iOS, macOS, Linux (X11 and Wayland), and Windows. On other platforms, this method always returns ``-1.0``. + .. rst-class:: classref-item-separator ---- @@ -3577,13 +5603,15 @@ To fallback to a default refresh rate if the method fails, try: :ref:`float` **screen_get_scale**\ (\ screen\: :ref:`int` = -1\ ) |const| :ref:`🔗` -Returns the scale factor of the specified screen by index. +Returns the scale factor of the specified screen by index. Returns ``1.0`` if ``screen`` is invalid. + +\ **Note:** One of the following constants can be used as ``screen``: :ref:`SCREEN_OF_MAIN_WINDOW`, :ref:`SCREEN_PRIMARY`, :ref:`SCREEN_WITH_MOUSE_FOCUS`, or :ref:`SCREEN_WITH_KEYBOARD_FOCUS`. \ **Note:** On macOS, the returned value is ``2.0`` for hiDPI (Retina) screens, and ``1.0`` for all other cases. \ **Note:** On Linux (Wayland), the returned value is accurate only when ``screen`` is :ref:`SCREEN_OF_MAIN_WINDOW`. Due to API limitations, passing a direct index will return a rounded-up integer, if the screen has a fractional scale (e.g. ``1.25`` would get rounded up to ``2.0``). -\ **Note:** This method is implemented on Android, iOS, Web, macOS, and Linux (Wayland). +\ **Note:** This method is implemented on Android, iOS, Web, macOS, and Linux (Wayland). On other platforms, this method always returns ``1.0``. .. rst-class:: classref-item-separator @@ -3595,7 +5623,9 @@ Returns the scale factor of the specified screen by index. :ref:`Vector2i` **screen_get_size**\ (\ screen\: :ref:`int` = -1\ ) |const| :ref:`🔗` -Returns the screen's size in pixels. See also :ref:`screen_get_position()` and :ref:`screen_get_usable_rect()`. +Returns the screen's size in pixels. See also :ref:`screen_get_position()` and :ref:`screen_get_usable_rect()`. Returns :ref:`Vector2i.ZERO` if ``screen`` is invalid. + +\ **Note:** One of the following constants can be used as ``screen``: :ref:`SCREEN_OF_MAIN_WINDOW`, :ref:`SCREEN_PRIMARY`, :ref:`SCREEN_WITH_MOUSE_FOCUS`, or :ref:`SCREEN_WITH_KEYBOARD_FOCUS`. .. rst-class:: classref-item-separator @@ -3609,6 +5639,10 @@ Returns the screen's size in pixels. See also :ref:`screen_get_position()`. +\ **Note:** One of the following constants can be used as ``screen``: :ref:`SCREEN_OF_MAIN_WINDOW`, :ref:`SCREEN_PRIMARY`, :ref:`SCREEN_WITH_MOUSE_FOCUS`, or :ref:`SCREEN_WITH_KEYBOARD_FOCUS`. + +\ **Note:** This method is implemented on Linux/X11, macOS, and Windows. On other platforms, this method always returns ``Rect2i(screen_get_position(screen), screen_get_size(screen))``. + .. rst-class:: classref-item-separator ---- @@ -3645,12 +5679,30 @@ Sets whether the screen should never be turned off by the operating system's pow Sets the ``screen``'s ``orientation``. See also :ref:`screen_get_orientation()`. +\ **Note:** One of the following constants can be used as ``screen``: :ref:`SCREEN_OF_MAIN_WINDOW`, :ref:`SCREEN_PRIMARY`, :ref:`SCREEN_WITH_MOUSE_FOCUS`, or :ref:`SCREEN_WITH_KEYBOARD_FOCUS`. + +\ **Note:** This method is implemented on Android and iOS. + \ **Note:** On iOS, this method has no effect if :ref:`ProjectSettings.display/window/handheld/orientation` is not set to :ref:`SCREEN_SENSOR`. .. rst-class:: classref-item-separator ---- +.. _class_DisplayServer_method_set_hardware_keyboard_connection_change_callback: + +.. rst-class:: classref-method + +|void| **set_hardware_keyboard_connection_change_callback**\ (\ callable\: :ref:`Callable`\ ) :ref:`🔗` + +Sets the ``callable`` that should be called when hardware keyboard is connected/disconnected. ``callable`` should accept a single :ref:`bool` parameter indicating whether the keyboard is connected (true) or disconnected (false). + +\ **Note:** This method is only implemented on Android. + +.. rst-class:: classref-item-separator + +---- + .. _class_DisplayServer_method_set_icon: .. rst-class:: classref-method @@ -3833,7 +5885,7 @@ Set active tablet driver name. Supported drivers: -- ``winink``: Windows Ink API, default (Windows 8.1+ required). +- ``winink``: Windows Ink API, default. - ``wintab``: Wacom Wintab API (compatible device driver required). @@ -3865,8 +5917,6 @@ Note that Godot depends on system libraries for text-to-speech functionality. Th \ **Note:** This method is implemented on Android, iOS, Web, Linux (X11/Wayland), macOS, and Windows. -\ **Note:** :ref:`ProjectSettings.audio/general/text_to_speech` should be ``true`` to use text-to-speech. - .. rst-class:: classref-item-separator ---- @@ -3877,12 +5927,10 @@ Note that Godot depends on system libraries for text-to-speech functionality. Th :ref:`PackedStringArray` **tts_get_voices_for_language**\ (\ language\: :ref:`String`\ ) |const| :ref:`🔗` -Returns an :ref:`PackedStringArray` of voice identifiers for the ``language``. +Returns a :ref:`PackedStringArray` of voice identifiers for the ``language``. \ **Note:** This method is implemented on Android, iOS, Web, Linux (X11/Wayland), macOS, and Windows. -\ **Note:** :ref:`ProjectSettings.audio/general/text_to_speech` should be ``true`` to use text-to-speech. - .. rst-class:: classref-item-separator ---- @@ -3897,8 +5945,6 @@ Returns ``true`` if the synthesizer is in a paused state. \ **Note:** This method is implemented on Android, iOS, Web, Linux (X11/Wayland), macOS, and Windows. -\ **Note:** :ref:`ProjectSettings.audio/general/text_to_speech` should be ``true`` to use text-to-speech. - .. rst-class:: classref-item-separator ---- @@ -3913,8 +5959,6 @@ Returns ``true`` if the synthesizer is generating speech, or have utterance wait \ **Note:** This method is implemented on Android, iOS, Web, Linux (X11/Wayland), macOS, and Windows. -\ **Note:** :ref:`ProjectSettings.audio/general/text_to_speech` should be ``true`` to use text-to-speech. - .. rst-class:: classref-item-separator ---- @@ -3929,8 +5973,6 @@ Puts the synthesizer into a paused state. \ **Note:** This method is implemented on Android, iOS, Web, Linux (X11/Wayland), macOS, and Windows. -\ **Note:** :ref:`ProjectSettings.audio/general/text_to_speech` should be ``true`` to use text-to-speech. - .. rst-class:: classref-item-separator ---- @@ -3945,8 +5987,6 @@ Resumes the synthesizer if it was paused. \ **Note:** This method is implemented on Android, iOS, Web, Linux (X11/Wayland), macOS, and Windows. -\ **Note:** :ref:`ProjectSettings.audio/general/text_to_speech` should be ``true`` to use text-to-speech. - .. rst-class:: classref-item-separator ---- @@ -3967,8 +6007,6 @@ Adds a callback, which is called when the utterance has started, finished, cance \ **Note:** This method is implemented on Android, iOS, Web, Linux (X11/Wayland), macOS, and Windows. -\ **Note:** :ref:`ProjectSettings.audio/general/text_to_speech` should be ``true`` to use text-to-speech. - .. rst-class:: classref-item-separator ---- @@ -3997,8 +6035,6 @@ Adds an utterance to the queue. If ``interrupt`` is ``true``, the queue is clear \ **Note:** This method is implemented on Android, iOS, Web, Linux (X11/Wayland), macOS, and Windows. -\ **Note:** :ref:`ProjectSettings.audio/general/text_to_speech` should be ``true`` to use text-to-speech. - .. rst-class:: classref-item-separator ---- @@ -4011,9 +6047,7 @@ Adds an utterance to the queue. If ``interrupt`` is ``true``, the queue is clear Stops synthesis in progress and removes all utterances from the queue. -\ **Note:** This method is implemented on Android, iOS, Web, Linux (X11/Linux), macOS, and Windows. - -\ **Note:** :ref:`ProjectSettings.audio/general/text_to_speech` should be ``true`` to use text-to-speech. +\ **Note:** This method is implemented on Android, iOS, Web, Linux (X11/Wayland), macOS, and Windows. .. rst-class:: classref-item-separator @@ -4039,6 +6073,8 @@ Unregisters an :ref:`Object` representing an additional output, th Returns the on-screen keyboard's height in pixels. Returns 0 if there is no keyboard or if it is currently hidden. +\ **Note:** On Android 7 and 8, the keyboard height may return 0 the first time the keyboard is opened in non-immersive mode. This behavior does not occur in immersive mode. + .. rst-class:: classref-item-separator ---- @@ -4137,7 +6173,9 @@ Returns the :ref:`Object.get_instance_id()` :ref:`int` **window_get_current_screen**\ (\ window_id\: :ref:`int` = 0\ ) |const| :ref:`🔗` -Returns the screen the window specified by ``window_id`` is currently positioned on. If the screen overlaps multiple displays, the screen where the window's center is located is returned. See also :ref:`window_set_current_screen()`. +Returns the screen the window specified by ``window_id`` is currently positioned on. If the screen overlaps multiple displays, the screen where the window's center is located is returned. See also :ref:`window_set_current_screen()`. Returns :ref:`INVALID_SCREEN` if ``window_id`` is invalid. + +\ **Note:** This method is implemented on Linux/X11, macOS, and Windows. On other platforms, this method always returns ``0``. .. rst-class:: classref-item-separator @@ -4387,6 +6425,10 @@ Makes the window specified by ``window_id`` request attention, which is material Moves the window specified by ``window_id`` to the specified ``screen``. See also :ref:`window_get_current_screen()`. +\ **Note:** One of the following constants can be used as ``screen``: :ref:`SCREEN_OF_MAIN_WINDOW`, :ref:`SCREEN_PRIMARY`, :ref:`SCREEN_WITH_MOUSE_FOCUS`, or :ref:`SCREEN_WITH_KEYBOARD_FOCUS`. + +\ **Note:** This method is implemented on Linux/X11, macOS, and Windows. + .. rst-class:: classref-item-separator ---- @@ -4429,7 +6471,7 @@ If set to ``true``, this window will always stay on top of its parent window, pa |void| **window_set_flag**\ (\ flag\: :ref:`WindowFlags`, enabled\: :ref:`bool`, window_id\: :ref:`int` = 0\ ) :ref:`🔗` -Enables or disables the given window's given ``flag``. See :ref:`WindowFlags` for possible values and their behavior. +Enables or disables the given window's given ``flag``. .. rst-class:: classref-item-separator @@ -4527,7 +6569,7 @@ Sets the minimum size for the given window to ``min_size`` in pixels. Normally, |void| **window_set_mode**\ (\ mode\: :ref:`WindowMode`, window_id\: :ref:`int` = 0\ ) :ref:`🔗` -Sets window mode for the given window to ``mode``. See :ref:`WindowMode` for possible values and how each mode behaves. +Sets window mode for the given window to ``mode``. \ **Note:** On Android, setting it to :ref:`WINDOW_MODE_FULLSCREEN` or :ref:`WINDOW_MODE_EXCLUSIVE_FULLSCREEN` will enable immersive mode. @@ -4554,10 +6596,10 @@ Passing an empty array will disable passthrough support (all mouse events will b # Set region, using Path2D node. DisplayServer.window_set_mouse_passthrough($Path2D.curve.get_baked_points()) - + # Set region, using Polygon2D node. DisplayServer.window_set_mouse_passthrough($Polygon2D.polygon) - + # Reset region to default. DisplayServer.window_set_mouse_passthrough([]) @@ -4565,10 +6607,10 @@ Passing an empty array will disable passthrough support (all mouse events will b // Set region, using Path2D node. DisplayServer.WindowSetMousePassthrough(GetNode("Path2D").Curve.GetBakedPoints()); - + // Set region, using Polygon2D node. DisplayServer.WindowSetMousePassthrough(GetNode("Polygon2D").Polygon); - + // Reset region to default. DisplayServer.WindowSetMousePassthrough([]); @@ -4689,8 +6731,6 @@ Sets window transient parent. Transient window will be destroyed with its transi Sets the V-Sync mode of the given window. See also :ref:`ProjectSettings.display/window/vsync/vsync_mode`. -See :ref:`VSyncMode` for possible values and how they affect the behavior of your application. - Depending on the platform and used renderer, the engine will fall back to :ref:`VSYNC_ENABLED` if the desired mode is not supported. \ **Note:** V-Sync modes other than :ref:`VSYNC_ENABLED` are only supported in the Forward+ and Mobile rendering methods, not Compatibility. @@ -4752,6 +6792,7 @@ Starts an interactive resize operation on the window with the given ``window_id` \ **Note:** This method is implemented on Linux (X11/Wayland), macOS, and Windows. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_dpitexture.rst b/classes/class_dpitexture.rst new file mode 100644 index 000000000..8c688ab79 --- /dev/null +++ b/classes/class_dpitexture.rst @@ -0,0 +1,193 @@ +:github_url: hide + +.. DO NOT EDIT THIS FILE!!! +.. Generated automatically from Godot engine sources. +.. Generator: https://github.com/godotengine/godot/tree/master/doc/tools/make_rst.py. +.. XML source: https://github.com/godotengine/godot/tree/master/doc/classes/DPITexture.xml. + +.. _class_DPITexture: + +DPITexture +========== + +**Experimental:** This class may be changed or removed in future versions. + +**Inherits:** :ref:`Texture2D` **<** :ref:`Texture` **<** :ref:`Resource` **<** :ref:`RefCounted` **<** :ref:`Object` + +An automatically scalable :ref:`Texture2D` based on an SVG image. + +.. rst-class:: classref-introduction-group + +Description +----------- + +An automatically scalable :ref:`Texture2D` based on an SVG image. **DPITexture**\ s are used to automatically re-rasterize icons and other texture based UI theme elements to match viewport scale and font oversampling. See also :ref:`ProjectSettings.display/window/stretch/mode` ("canvas_items" mode) and :ref:`Viewport.oversampling_override`. + +.. rst-class:: classref-reftable-group + +Properties +---------- + +.. table:: + :widths: auto + + +-------------------------------------+---------------------------------------------------------+----------------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`base_scale` | ``1.0`` | + +-------------------------------------+---------------------------------------------------------+----------------------------------------------------------------------------------------+ + | :ref:`Dictionary` | :ref:`color_map` | ``{}`` | + +-------------------------------------+---------------------------------------------------------+----------------------------------------------------------------------------------------+ + | :ref:`bool` | resource_local_to_scene | ``false`` (overrides :ref:`Resource`) | + +-------------------------------------+---------------------------------------------------------+----------------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`saturation` | ``1.0`` | + +-------------------------------------+---------------------------------------------------------+----------------------------------------------------------------------------------------+ + +.. rst-class:: classref-reftable-group + +Methods +------- + +.. table:: + :widths: auto + + +-------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`DPITexture` | :ref:`create_from_string`\ (\ source\: :ref:`String`, scale\: :ref:`float` = 1.0, saturation\: :ref:`float` = 1.0, color_map\: :ref:`Dictionary` = {}\ ) |static| | + +-------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`RID` | :ref:`get_scaled_rid`\ (\ ) |const| | + +-------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`get_source`\ (\ ) |const| | + +-------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_size_override`\ (\ size\: :ref:`Vector2i`\ ) | + +-------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_source`\ (\ source\: :ref:`String`\ ) | + +-------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + +.. rst-class:: classref-section-separator + +---- + +.. rst-class:: classref-descriptions-group + +Property Descriptions +--------------------- + +.. _class_DPITexture_property_base_scale: + +.. rst-class:: classref-property + +:ref:`float` **base_scale** = ``1.0`` :ref:`🔗` + +.. rst-class:: classref-property-setget + +- |void| **set_base_scale**\ (\ value\: :ref:`float`\ ) +- :ref:`float` **get_base_scale**\ (\ ) + +Texture scale. ``1.0`` is the original SVG size. Higher values result in a larger image. + +.. rst-class:: classref-item-separator + +---- + +.. _class_DPITexture_property_color_map: + +.. rst-class:: classref-property + +:ref:`Dictionary` **color_map** = ``{}`` :ref:`🔗` + +.. rst-class:: classref-property-setget + +- |void| **set_color_map**\ (\ value\: :ref:`Dictionary`\ ) +- :ref:`Dictionary` **get_color_map**\ (\ ) + +If set, remaps texture colors according to :ref:`Color`-:ref:`Color` map. + +.. rst-class:: classref-item-separator + +---- + +.. _class_DPITexture_property_saturation: + +.. rst-class:: classref-property + +:ref:`float` **saturation** = ``1.0`` :ref:`🔗` + +.. rst-class:: classref-property-setget + +- |void| **set_saturation**\ (\ value\: :ref:`float`\ ) +- :ref:`float` **get_saturation**\ (\ ) + +Overrides texture saturation. + +.. rst-class:: classref-section-separator + +---- + +.. rst-class:: classref-descriptions-group + +Method Descriptions +------------------- + +.. _class_DPITexture_method_create_from_string: + +.. rst-class:: classref-method + +:ref:`DPITexture` **create_from_string**\ (\ source\: :ref:`String`, scale\: :ref:`float` = 1.0, saturation\: :ref:`float` = 1.0, color_map\: :ref:`Dictionary` = {}\ ) |static| :ref:`🔗` + +Creates a new **DPITexture** and initializes it by allocating and setting the SVG data from string. + +.. rst-class:: classref-item-separator + +---- + +.. _class_DPITexture_method_get_scaled_rid: + +.. rst-class:: classref-method + +:ref:`RID` **get_scaled_rid**\ (\ ) |const| :ref:`🔗` + +Returns the :ref:`RID` of the texture rasterized to match the oversampling of the currently drawn canvas item. + +.. rst-class:: classref-item-separator + +---- + +.. _class_DPITexture_method_get_source: + +.. rst-class:: classref-method + +:ref:`String` **get_source**\ (\ ) |const| :ref:`🔗` + +Returns SVG source code. + +.. rst-class:: classref-item-separator + +---- + +.. _class_DPITexture_method_set_size_override: + +.. rst-class:: classref-method + +|void| **set_size_override**\ (\ size\: :ref:`Vector2i`\ ) :ref:`🔗` + +Resizes the texture to the specified dimensions. + +.. rst-class:: classref-item-separator + +---- + +.. _class_DPITexture_method_set_source: + +.. rst-class:: classref-method + +|void| **set_source**\ (\ source\: :ref:`String`\ ) :ref:`🔗` + +Sets SVG source code. + +.. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` +.. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` +.. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` +.. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` +.. |static| replace:: :abbr:`static (This method doesn't need an instance to be called, so it can be called directly using the class name.)` +.. |operator| replace:: :abbr:`operator (This method describes a valid operator to use with this type as left-hand operand.)` +.. |bitfield| replace:: :abbr:`BitField (This value is an integer composed as a bitmask of the following flags.)` +.. |void| replace:: :abbr:`void (No return value.)` diff --git a/classes/class_dtlsserver.rst b/classes/class_dtlsserver.rst index c5a057718..eb1e1a264 100644 --- a/classes/class_dtlsserver.rst +++ b/classes/class_dtlsserver.rst @@ -30,17 +30,17 @@ Below a small example of how to use it: # server_node.gd extends Node - + var dtls = DTLSServer.new() var server = UDPServer.new() var peers = [] - + func _ready(): server.listen(4242) var key = load("key.key") # Your private key. var cert = load("cert.crt") # Your X509 certificate. dtls.setup(TlsOptions.server(key, cert)) - + func _process(delta): while server.is_connection_available(): var peer = server.take_connection() @@ -49,7 +49,7 @@ Below a small example of how to use it: continue # It is normal that 50% of the connections fails due to cookie exchange. print("Peer connected!") peers.append(dtls_peer) - + for p in peers: p.poll() # Must poll to update the state. if p.get_status() == PacketPeerDTLS.STATUS_CONNECTED: @@ -61,13 +61,13 @@ Below a small example of how to use it: // ServerNode.cs using Godot; - + public partial class ServerNode : Node { private DtlsServer _dtls = new DtlsServer(); private UdpServer _server = new UdpServer(); private Godot.Collections.Array _peers = []; - + public override void _Ready() { _server.Listen(4242); @@ -75,7 +75,7 @@ Below a small example of how to use it: var cert = GD.Load("cert.crt"); // Your X509 certificate. _dtls.Setup(TlsOptions.Server(key, cert)); } - + public override void _Process(double delta) { while (_server.IsConnectionAvailable()) @@ -89,7 +89,7 @@ Below a small example of how to use it: GD.Print("Peer connected!"); _peers.Add(dtlsPeer); } - + foreach (var p in _peers) { p.Poll(); // Must poll to update the state. @@ -114,15 +114,15 @@ Below a small example of how to use it: # client_node.gd extends Node - + var dtls = PacketPeerDTLS.new() var udp = PacketPeerUDP.new() var connected = false - + func _ready(): udp.connect_to_host("127.0.0.1", 4242) dtls.connect_to_peer(udp, false) # Use true in production for certificate validation! - + func _process(delta): dtls.poll() if dtls.get_status() == PacketPeerDTLS.STATUS_CONNECTED: @@ -138,19 +138,19 @@ Below a small example of how to use it: // ClientNode.cs using Godot; using System.Text; - + public partial class ClientNode : Node { private PacketPeerDtls _dtls = new PacketPeerDtls(); private PacketPeerUdp _udp = new PacketPeerUdp(); private bool _connected = false; - + public override void _Ready() { _udp.ConnectToHost("127.0.0.1", 4242); _dtls.ConnectToPeer(_udp, validateCerts: false); // Use true in production for certificate validation! } - + public override void _Process(double delta) { _dtls.Poll(); @@ -218,6 +218,7 @@ Try to initiate the DTLS handshake with the given ``udp_peer`` which must be alr \ **Note:** You must check that the state of the return PacketPeerUDP is :ref:`PacketPeerDTLS.STATUS_HANDSHAKING`, as it is normal that 50% of the new connections will be invalid due to cookie exchange. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_editorcommandpalette.rst b/classes/class_editorcommandpalette.rst index 31dd64984..9332b04a8 100644 --- a/classes/class_editorcommandpalette.rst +++ b/classes/class_editorcommandpalette.rst @@ -110,6 +110,7 @@ Removes the custom command from EditorCommandPalette. - ``key_name``: :ref:`String` (Name of the key for a particular **Command**.) .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_editorcontextmenuplugin.rst b/classes/class_editorcontextmenuplugin.rst index e34453973..86d07c9b4 100644 --- a/classes/class_editorcontextmenuplugin.rst +++ b/classes/class_editorcontextmenuplugin.rst @@ -88,7 +88,15 @@ 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 the path of the currently selected folder. When clicking the empty space, the list of paths for popup method will be empty. + +:: + + func _popup_menu(paths): + if paths.is_empty(): + add_context_menu_item("New Image File...", create_image) + else: + add_context_menu_item("Image File...", create_image) .. _class_EditorContextMenuPlugin_constant_CONTEXT_SLOT_SCRIPT_EDITOR_CODE: @@ -180,7 +188,7 @@ Add custom option to the context menu of the plugin's specified slot. The option func _init(): add_menu_shortcut(SHORTCUT, handle) - + func _popup_menu(paths): add_context_menu_item_from_shortcut("File Custom options", SHORTCUT, ICON) @@ -203,7 +211,7 @@ Add a submenu to the context menu of the plugin's specified slot. The submenu is popup_menu.add_item("Blue") popup_menu.add_item("White") popup_menu.id_pressed.connect(_on_color_submenu_option) - + add_context_submenu_item("Set Node Color", popup_menu) .. rst-class:: classref-item-separator @@ -224,6 +232,7 @@ Registers a shortcut associated with the plugin's context menu. This method shou add_menu_shortcut(SHORTCUT, handle) .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_editordebuggerplugin.rst b/classes/class_editordebuggerplugin.rst index 5e06056f1..a8630b2c3 100644 --- a/classes/class_editordebuggerplugin.rst +++ b/classes/class_editordebuggerplugin.rst @@ -34,19 +34,19 @@ You can retrieve the available :ref:`EditorDebuggerSession` cu \ **Note:** Sessions in the array may be inactive, check their state via :ref:`EditorDebuggerSession.is_active()`. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_editordebuggersession.rst b/classes/class_editordebuggersession.rst index 4c1066e22..6ed604311 100644 --- a/classes/class_editordebuggersession.rst +++ b/classes/class_editordebuggersession.rst @@ -19,7 +19,7 @@ A class to interact with the editor debugger. Description ----------- -This class cannot be directly instantiated and must be retrieved via a :ref:`EditorDebuggerPlugin`. +This class cannot be directly instantiated and must be retrieved via an :ref:`EditorDebuggerPlugin`. You can add tabs to the session UI via :ref:`add_session_tab()`, send messages via :ref:`send_message()`, and toggle :ref:`EngineProfiler`\ s via :ref:`toggle_profiler()`. @@ -204,6 +204,7 @@ Enables or disables a specific breakpoint based on ``enabled``, updating the Edi Toggle the given ``profiler`` on the attached remote instance, optionally passing additionally ``data``. See :ref:`EngineProfiler` for more details. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_editorexportplatform.rst b/classes/class_editorexportplatform.rst index 6d3cce9ab..ed17727ed 100644 --- a/classes/class_editorexportplatform.rst +++ b/classes/class_editorexportplatform.rst @@ -12,7 +12,7 @@ EditorExportPlatform **Inherits:** :ref:`RefCounted` **<** :ref:`Object` -**Inherited By:** :ref:`EditorExportPlatformAndroid`, :ref:`EditorExportPlatformExtension`, :ref:`EditorExportPlatformIOS`, :ref:`EditorExportPlatformMacOS`, :ref:`EditorExportPlatformPC`, :ref:`EditorExportPlatformWeb` +**Inherited By:** :ref:`EditorExportPlatformAndroid`, :ref:`EditorExportPlatformAppleEmbedded`, :ref:`EditorExportPlatformExtension`, :ref:`EditorExportPlatformMacOS`, :ref:`EditorExportPlatformPC`, :ref:`EditorExportPlatformWeb` Identifies a supported export platform, and internally provides the functionality of exporting to that platform. @@ -65,7 +65,7 @@ Methods +-----------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`Array` | :ref:`get_current_presets`\ (\ ) |const| | +-----------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`PackedStringArray` | :ref:`get_forced_export_files`\ (\ ) |static| | + | :ref:`PackedStringArray` | :ref:`get_forced_export_files`\ (\ preset\: :ref:`EditorExportPreset` = null\ ) |static| | +-----------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`Dictionary` | :ref:`get_internal_export_files`\ (\ preset\: :ref:`EditorExportPreset`, debug\: :ref:`bool`\ ) | +-----------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ @@ -159,7 +159,7 @@ flags **DebugFlags**: :ref:`🔗` :ref:`DebugFlags` **DEBUG_FLAG_DUMB_CLIENT** = ``1`` -Flag is set if remotely debugged project is expected to use remote file system. If set, :ref:`gen_export_flags()` will add ``--remove-fs`` and ``--remote-fs-password`` (if password is set in the editor settings) command line arguments to the list. +Flag is set if the remotely debugged project is expected to use the remote file system. If set, :ref:`gen_export_flags()` will append ``--remote-fs`` and ``--remote-fs-password`` (if :ref:`EditorSettings.filesystem/file_server/password` is defined) command line arguments to the returned list. .. _class_EditorExportPlatform_constant_DEBUG_FLAG_REMOTE_DEBUG: @@ -167,7 +167,7 @@ Flag is set if remotely debugged project is expected to use remote file system. :ref:`DebugFlags` **DEBUG_FLAG_REMOTE_DEBUG** = ``2`` -Flag is set if remote debug is enabled. If set, :ref:`gen_export_flags()` will add ``--remote-debug`` and ``--breakpoints`` (if breakpoints are selected in the script editor or added by the plugin) command line arguments to the list. +Flag is set if remote debug is enabled. If set, :ref:`gen_export_flags()` will append ``--remote-debug`` and ``--breakpoints`` (if breakpoints are selected in the script editor or added by the plugin) command line arguments to the returned list. .. _class_EditorExportPlatform_constant_DEBUG_FLAG_REMOTE_DEBUG_LOCALHOST: @@ -183,7 +183,7 @@ Flag is set if remotely debugged project is running on the localhost. If set, :r :ref:`DebugFlags` **DEBUG_FLAG_VIEW_COLLISIONS** = ``8`` -Flag is set if "Visible Collision Shapes" remote debug option is enabled. If set, :ref:`gen_export_flags()` will add ``--debug-collisions`` command line arguments to the list. +Flag is set if the "Visible Collision Shapes" remote debug option is enabled. If set, :ref:`gen_export_flags()` will append the ``--debug-collisions`` command line argument to the returned list. .. _class_EditorExportPlatform_constant_DEBUG_FLAG_VIEW_NAVIGATION: @@ -191,7 +191,7 @@ Flag is set if "Visible Collision Shapes" remote debug option is enabled. If set :ref:`DebugFlags` **DEBUG_FLAG_VIEW_NAVIGATION** = ``16`` -Flag is set if Visible Navigation" remote debug option is enabled. If set, :ref:`gen_export_flags()` will add ``--debug-navigation`` command line arguments to the list. +Flag is set if the "Visible Navigation" remote debug option is enabled. If set, :ref:`gen_export_flags()` will append the ``--debug-navigation`` command line argument to the returned list. .. rst-class:: classref-section-separator @@ -288,7 +288,7 @@ Exports project files for the specified preset. This method can be used to imple \ ``shared_cb`` is called for exported native shared/static libraries and have the following arguments: ``file_path: String``, ``tags: PackedStringArray``, ``target_folder: String``. -\ **Note:** ``file_index`` and ``file_count`` are intended for progress tracking only and aren't necesserely unique and precise. +\ **Note:** ``file_index`` and ``file_count`` are intended for progress tracking only and aren't necessarily unique and precise. .. rst-class:: classref-item-separator @@ -360,7 +360,7 @@ Returns array of :ref:`EditorExportPreset`\ s for this .. rst-class:: classref-method -:ref:`PackedStringArray` **get_forced_export_files**\ (\ ) |static| :ref:`🔗` +:ref:`PackedStringArray` **get_forced_export_files**\ (\ preset\: :ref:`EditorExportPreset` = null\ ) |static| :ref:`🔗` Returns array of core file names that always should be exported regardless of preset config. @@ -535,6 +535,7 @@ Executes specified command on the remote host via SSH protocol and returns comma Executes specified command on the remote host via SSH protocol and returns process ID (on the remote host) without waiting for command to finish. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_editorexportplatformandroid.rst b/classes/class_editorexportplatformandroid.rst index 02993a625..e087460b2 100644 --- a/classes/class_editorexportplatformandroid.rst +++ b/classes/class_editorexportplatformandroid.rst @@ -60,6 +60,8 @@ Properties +---------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`gradle_build/compress_native_libraries` | +---------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Dictionary` | :ref:`gradle_build/custom_theme_attributes` | + +---------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`gradle_build/export_format` | +---------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`String` | :ref:`gradle_build/gradle_build_directory` | @@ -416,6 +418,10 @@ Properties +---------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`permissions/write_user_dictionary` | +---------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Color` | :ref:`screen/background_color` | + +---------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`screen/edge_to_edge` | + +---------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`screen/immersive_mode` | +---------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`screen/support_large` | @@ -426,6 +432,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` | @@ -606,7 +614,27 @@ Path to a ZIP file holding the source for the export template used in a Gradle b If ``true``, native libraries are compressed when performing a Gradle build. -\ **Note:** Although your binary may be smaller, your application may load slower because the native libraries are not loaded directly from the binary at runtime. +\ **Note:** While enabling compression can reduce the size of the binary, it may result in slower application startup because the native libraries must be extracted before use, rather than being loaded directly. + +If you're distributing your app via the Play Store, it's generally recommended to keep this option ``false``, see `official documentation `__. + +.. rst-class:: classref-item-separator + +---- + +.. _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 @@ -2782,13 +2810,39 @@ Allows an application to write to the user dictionary. ---- +.. _class_EditorExportPlatformAndroid_property_screen/background_color: + +.. rst-class:: classref-property + +:ref:`Color` **screen/background_color** :ref:`🔗` + +The background color used for the root window. Default is ``black``. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformAndroid_property_screen/edge_to_edge: + +.. rst-class:: classref-property + +:ref:`bool` **screen/edge_to_edge** :ref:`🔗` + +If ``true``, this makes the navigation and status bars translucent and allows the application content to extend edge to edge. + +\ **Note:** You should ensure that none of the application content is occluded by system elements by using the :ref:`DisplayServer.get_display_safe_area()` and :ref:`DisplayServer.get_display_cutouts()` methods. + +.. rst-class:: classref-item-separator + +---- + .. _class_EditorExportPlatformAndroid_property_screen/immersive_mode: .. rst-class:: classref-property :ref:`bool` **screen/immersive_mode** :ref:`🔗` -If ``true``, hides navigation and status bar. See :ref:`DisplayServer.window_set_mode()` to toggle it at runtime. +If ``true``, hides the navigation and status bar. Set :ref:`DisplayServer.window_set_mode()` to change this at runtime. .. rst-class:: classref-item-separator @@ -2842,6 +2896,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 @@ -2887,6 +2953,7 @@ Application version visible to the user. Falls back to :ref:`ProjectSettings.app The extended reality (XR) mode for this application. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_editorexportplatformappleembedded.rst b/classes/class_editorexportplatformappleembedded.rst new file mode 100644 index 000000000..5da8f2891 --- /dev/null +++ b/classes/class_editorexportplatformappleembedded.rst @@ -0,0 +1,43 @@ +:github_url: hide + +.. DO NOT EDIT THIS FILE!!! +.. Generated automatically from Godot engine sources. +.. Generator: https://github.com/godotengine/godot/tree/master/doc/tools/make_rst.py. +.. XML source: https://github.com/godotengine/godot/tree/master/doc/classes/EditorExportPlatformAppleEmbedded.xml. + +.. _class_EditorExportPlatformAppleEmbedded: + +EditorExportPlatformAppleEmbedded +================================= + +**Inherits:** :ref:`EditorExportPlatform` **<** :ref:`RefCounted` **<** :ref:`Object` + +**Inherited By:** :ref:`EditorExportPlatformIOS`, :ref:`EditorExportPlatformVisionOS` + +Base class for the Apple embedded platform exporters (iOS and visionOS). + +.. rst-class:: classref-introduction-group + +Description +----------- + +The base class for Apple embedded platform exporters. These include iOS and visionOS, but not macOS. See the classes inheriting from this one for more details. + +.. rst-class:: classref-introduction-group + +Tutorials +--------- + +- :doc:`Exporting for iOS <../tutorials/export/exporting_for_ios>` + +- :doc:`iOS plugins documentation index <../tutorials/platform/ios/index>` + +.. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` +.. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` +.. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` +.. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` +.. |static| replace:: :abbr:`static (This method doesn't need an instance to be called, so it can be called directly using the class name.)` +.. |operator| replace:: :abbr:`operator (This method describes a valid operator to use with this type as left-hand operand.)` +.. |bitfield| replace:: :abbr:`BitField (This value is an integer composed as a bitmask of the following flags.)` +.. |void| replace:: :abbr:`void (No return value.)` diff --git a/classes/class_editorexportplatformextension.rst b/classes/class_editorexportplatformextension.rst index 5295a9039..c33dd2289 100644 --- a/classes/class_editorexportplatformextension.rst +++ b/classes/class_editorexportplatformextension.rst @@ -40,13 +40,13 @@ Methods +------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`Error` | :ref:`_export_pack_patch`\ (\ preset\: :ref:`EditorExportPreset`, debug\: :ref:`bool`, path\: :ref:`String`, patches\: :ref:`PackedStringArray`, flags\: |bitfield|\[:ref:`DebugFlags`\]\ ) |virtual| | +------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Error` | :ref:`_export_project`\ (\ preset\: :ref:`EditorExportPreset`, debug\: :ref:`bool`, path\: :ref:`String`, flags\: |bitfield|\[:ref:`DebugFlags`\]\ ) |virtual| | + | :ref:`Error` | :ref:`_export_project`\ (\ preset\: :ref:`EditorExportPreset`, debug\: :ref:`bool`, path\: :ref:`String`, flags\: |bitfield|\[:ref:`DebugFlags`\]\ ) |virtual| |required| | +------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`Error` | :ref:`_export_zip`\ (\ preset\: :ref:`EditorExportPreset`, debug\: :ref:`bool`, path\: :ref:`String`, flags\: |bitfield|\[:ref:`DebugFlags`\]\ ) |virtual| | +------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`Error` | :ref:`_export_zip_patch`\ (\ preset\: :ref:`EditorExportPreset`, debug\: :ref:`bool`, path\: :ref:`String`, patches\: :ref:`PackedStringArray`, flags\: |bitfield|\[:ref:`DebugFlags`\]\ ) |virtual| | +------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`PackedStringArray` | :ref:`_get_binary_extensions`\ (\ preset\: :ref:`EditorExportPreset`\ ) |virtual| |const| | + | :ref:`PackedStringArray` | :ref:`_get_binary_extensions`\ (\ preset\: :ref:`EditorExportPreset`\ ) |virtual| |required| |const| | +------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`String` | :ref:`_get_debug_protocol`\ (\ ) |virtual| |const| | +------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ @@ -58,11 +58,11 @@ Methods +------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`Array`\[:ref:`Dictionary`\] | :ref:`_get_export_options`\ (\ ) |virtual| |const| | +------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Texture2D` | :ref:`_get_logo`\ (\ ) |virtual| |const| | + | :ref:`Texture2D` | :ref:`_get_logo`\ (\ ) |virtual| |required| |const| | +------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`String` | :ref:`_get_name`\ (\ ) |virtual| |const| | + | :ref:`String` | :ref:`_get_name`\ (\ ) |virtual| |required| |const| | +------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`ImageTexture` | :ref:`_get_option_icon`\ (\ device\: :ref:`int`\ ) |virtual| |const| | + | :ref:`Texture2D` | :ref:`_get_option_icon`\ (\ device\: :ref:`int`\ ) |virtual| |const| | +------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`String` | :ref:`_get_option_label`\ (\ device\: :ref:`int`\ ) |virtual| |const| | +------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ @@ -72,17 +72,17 @@ Methods +------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`String` | :ref:`_get_options_tooltip`\ (\ ) |virtual| |const| | +------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`String` | :ref:`_get_os_name`\ (\ ) |virtual| |const| | + | :ref:`String` | :ref:`_get_os_name`\ (\ ) |virtual| |required| |const| | +------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`PackedStringArray` | :ref:`_get_platform_features`\ (\ ) |virtual| |const| | + | :ref:`PackedStringArray` | :ref:`_get_platform_features`\ (\ ) |virtual| |required| |const| | +------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`PackedStringArray` | :ref:`_get_preset_features`\ (\ preset\: :ref:`EditorExportPreset`\ ) |virtual| |const| | + | :ref:`PackedStringArray` | :ref:`_get_preset_features`\ (\ preset\: :ref:`EditorExportPreset`\ ) |virtual| |required| |const| | +------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`Texture2D` | :ref:`_get_run_icon`\ (\ ) |virtual| |const| | +------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`_has_valid_export_configuration`\ (\ preset\: :ref:`EditorExportPreset`, debug\: :ref:`bool`\ ) |virtual| |const| | + | :ref:`bool` | :ref:`_has_valid_export_configuration`\ (\ preset\: :ref:`EditorExportPreset`, debug\: :ref:`bool`\ ) |virtual| |required| |const| | +------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`_has_valid_project_configuration`\ (\ preset\: :ref:`EditorExportPreset`\ ) |virtual| |const| | + | :ref:`bool` | :ref:`_has_valid_project_configuration`\ (\ preset\: :ref:`EditorExportPreset`\ ) |virtual| |required| |const| | +------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`_is_executable`\ (\ path\: :ref:`String`\ ) |virtual| |const| | +------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ @@ -116,8 +116,6 @@ Method Descriptions :ref:`bool` **_can_export**\ (\ preset\: :ref:`EditorExportPreset`, debug\: :ref:`bool`\ ) |virtual| |const| :ref:`🔗` -**Optional.**\ - Returns ``true``, if specified ``preset`` is valid and can be exported. Use :ref:`set_config_error()` and :ref:`set_config_missing_templates()` to set error details. Usual implementation can call :ref:`_has_valid_export_configuration()` and :ref:`_has_valid_project_configuration()` to determine if export is possible. @@ -132,8 +130,6 @@ Usual implementation can call :ref:`_has_valid_export_configuration()` -**Optional.**\ - Called by the editor before platform is unregistered. .. rst-class:: classref-item-separator @@ -146,8 +142,6 @@ Called by the editor before platform is unregistered. :ref:`Error` **_export_pack**\ (\ preset\: :ref:`EditorExportPreset`, debug\: :ref:`bool`, path\: :ref:`String`, flags\: |bitfield|\[:ref:`DebugFlags`\]\ ) |virtual| :ref:`🔗` -**Optional.**\ - Creates a PCK archive at ``path`` for the specified ``preset``. This method is called when "Export PCK/ZIP" button is pressed in the export dialog, with "Export as Patch" disabled, and PCK is selected as a file type. @@ -162,8 +156,6 @@ This method is called when "Export PCK/ZIP" button is pressed in the export dial :ref:`Error` **_export_pack_patch**\ (\ preset\: :ref:`EditorExportPreset`, debug\: :ref:`bool`, path\: :ref:`String`, patches\: :ref:`PackedStringArray`, flags\: |bitfield|\[:ref:`DebugFlags`\]\ ) |virtual| :ref:`🔗` -**Optional.**\ - Creates a patch PCK archive at ``path`` for the specified ``preset``, containing only the files that have changed since the last patch. This method is called when "Export PCK/ZIP" button is pressed in the export dialog, with "Export as Patch" enabled, and PCK is selected as a file type. @@ -178,9 +170,7 @@ This method is called when "Export PCK/ZIP" button is pressed in the export dial .. rst-class:: classref-method -:ref:`Error` **_export_project**\ (\ preset\: :ref:`EditorExportPreset`, debug\: :ref:`bool`, path\: :ref:`String`, flags\: |bitfield|\[:ref:`DebugFlags`\]\ ) |virtual| :ref:`🔗` - -**Required.**\ +:ref:`Error` **_export_project**\ (\ preset\: :ref:`EditorExportPreset`, debug\: :ref:`bool`, path\: :ref:`String`, flags\: |bitfield|\[:ref:`DebugFlags`\]\ ) |virtual| |required| :ref:`🔗` Creates a full project at ``path`` for the specified ``preset``. @@ -198,8 +188,6 @@ This method implementation can call :ref:`EditorExportPlatform.save_pack()` **_export_zip**\ (\ preset\: :ref:`EditorExportPreset`, debug\: :ref:`bool`, path\: :ref:`String`, flags\: |bitfield|\[:ref:`DebugFlags`\]\ ) |virtual| :ref:`🔗` -**Optional.**\ - Create a ZIP archive at ``path`` for the specified ``preset``. This method is called when "Export PCK/ZIP" button is pressed in the export dialog, with "Export as Patch" disabled, and ZIP is selected as a file type. @@ -214,8 +202,6 @@ This method is called when "Export PCK/ZIP" button is pressed in the export dial :ref:`Error` **_export_zip_patch**\ (\ preset\: :ref:`EditorExportPreset`, debug\: :ref:`bool`, path\: :ref:`String`, patches\: :ref:`PackedStringArray`, flags\: |bitfield|\[:ref:`DebugFlags`\]\ ) |virtual| :ref:`🔗` -**Optional.**\ - Create a ZIP archive at ``path`` for the specified ``preset``, containing only the files that have changed since the last patch. This method is called when "Export PCK/ZIP" button is pressed in the export dialog, with "Export as Patch" enabled, and ZIP is selected as a file type. @@ -230,9 +216,7 @@ This method is called when "Export PCK/ZIP" button is pressed in the export dial .. rst-class:: classref-method -:ref:`PackedStringArray` **_get_binary_extensions**\ (\ preset\: :ref:`EditorExportPreset`\ ) |virtual| |const| :ref:`🔗` - -**Required.**\ +:ref:`PackedStringArray` **_get_binary_extensions**\ (\ preset\: :ref:`EditorExportPreset`\ ) |virtual| |required| |const| :ref:`🔗` Returns array of supported binary extensions for the full project export. @@ -246,8 +230,6 @@ Returns array of supported binary extensions for the full project export. :ref:`String` **_get_debug_protocol**\ (\ ) |virtual| |const| :ref:`🔗` -**Optional.**\ - Returns protocol used for remote debugging. Default implementation return ``tcp://``. .. rst-class:: classref-item-separator @@ -260,8 +242,6 @@ Returns protocol used for remote debugging. Default implementation return ``tcp: :ref:`String` **_get_device_architecture**\ (\ device\: :ref:`int`\ ) |virtual| |const| :ref:`🔗` -**Optional.**\ - Returns device architecture for one-click deploy. .. rst-class:: classref-item-separator @@ -274,8 +254,6 @@ Returns device architecture for one-click deploy. :ref:`bool` **_get_export_option_visibility**\ (\ preset\: :ref:`EditorExportPreset`, option\: :ref:`String`\ ) |virtual| |const| :ref:`🔗` -**Optional.**\ - Validates ``option`` and returns visibility for the specified ``preset``. Default implementation return ``true`` for all options. .. rst-class:: classref-item-separator @@ -288,8 +266,6 @@ Validates ``option`` and returns visibility for the specified ``preset``. Defaul :ref:`String` **_get_export_option_warning**\ (\ preset\: :ref:`EditorExportPreset`, option\: :ref:`StringName`\ ) |virtual| |const| :ref:`🔗` -**Optional.**\ - Validates ``option`` and returns warning message for the specified ``preset``. Default implementation return empty string for all options. .. rst-class:: classref-item-separator @@ -302,8 +278,6 @@ Validates ``option`` and returns warning message for the specified ``preset``. D :ref:`Array`\[:ref:`Dictionary`\] **_get_export_options**\ (\ ) |virtual| |const| :ref:`🔗` -**Optional.**\ - Returns a property list, as an :ref:`Array` of dictionaries. Each :ref:`Dictionary` must at least contain the ``name: StringName`` and ``type: Variant.Type`` entries. Additionally, the following keys are supported: @@ -332,11 +306,9 @@ See also :ref:`Object._get_property_list()` **_get_logo**\ (\ ) |virtual| |const| :ref:`🔗` +:ref:`Texture2D` **_get_logo**\ (\ ) |virtual| |required| |const| :ref:`🔗` -**Required.**\ - -Returns platform logo displayed in the export dialog, logo should be 32x32 adjusted to the current editor scale, see :ref:`EditorInterface.get_editor_scale()`. +Returns the platform logo displayed in the export dialog. The logo should be 32×32 pixels, adjusted for the current editor scale (see :ref:`EditorInterface.get_editor_scale()`). .. rst-class:: classref-item-separator @@ -346,9 +318,7 @@ Returns platform logo displayed in the export dialog, logo should be 32x32 adjus .. rst-class:: classref-method -:ref:`String` **_get_name**\ (\ ) |virtual| |const| :ref:`🔗` - -**Required.**\ +:ref:`String` **_get_name**\ (\ ) |virtual| |required| |const| :ref:`🔗` Returns export platform name. @@ -360,11 +330,9 @@ Returns export platform name. .. rst-class:: classref-method -:ref:`ImageTexture` **_get_option_icon**\ (\ device\: :ref:`int`\ ) |virtual| |const| :ref:`🔗` +:ref:`Texture2D` **_get_option_icon**\ (\ device\: :ref:`int`\ ) |virtual| |const| :ref:`🔗` -**Optional.**\ - -Returns one-click deploy menu item icon for the specified ``device``, icon should be 16x16 adjusted to the current editor scale, see :ref:`EditorInterface.get_editor_scale()`. +Returns the item icon for the specified ``device`` in the one-click deploy menu. The icon should be 16×16 pixels, adjusted for the current editor scale (see :ref:`EditorInterface.get_editor_scale()`). .. rst-class:: classref-item-separator @@ -376,8 +344,6 @@ Returns one-click deploy menu item icon for the specified ``device``, icon shoul :ref:`String` **_get_option_label**\ (\ device\: :ref:`int`\ ) |virtual| |const| :ref:`🔗` -**Optional.**\ - Returns one-click deploy menu item label for the specified ``device``. .. rst-class:: classref-item-separator @@ -390,8 +356,6 @@ Returns one-click deploy menu item label for the specified ``device``. :ref:`String` **_get_option_tooltip**\ (\ device\: :ref:`int`\ ) |virtual| |const| :ref:`🔗` -**Optional.**\ - Returns one-click deploy menu item tooltip for the specified ``device``. .. rst-class:: classref-item-separator @@ -404,9 +368,7 @@ Returns one-click deploy menu item tooltip for the specified ``device``. :ref:`int` **_get_options_count**\ (\ ) |virtual| |const| :ref:`🔗` -**Optional.**\ - -Returns number one-click deploy devices (or other one-click option displayed in the menu). +Returns the number of devices (or other options) available in the one-click deploy menu. .. rst-class:: classref-item-separator @@ -418,8 +380,6 @@ Returns number one-click deploy devices (or other one-click option displayed in :ref:`String` **_get_options_tooltip**\ (\ ) |virtual| |const| :ref:`🔗` -**Optional.**\ - Returns tooltip of the one-click deploy menu button. .. rst-class:: classref-item-separator @@ -430,9 +390,7 @@ Returns tooltip of the one-click deploy menu button. .. rst-class:: classref-method -:ref:`String` **_get_os_name**\ (\ ) |virtual| |const| :ref:`🔗` - -**Required.**\ +:ref:`String` **_get_os_name**\ (\ ) |virtual| |required| |const| :ref:`🔗` Returns target OS name. @@ -444,9 +402,7 @@ Returns target OS name. .. rst-class:: classref-method -:ref:`PackedStringArray` **_get_platform_features**\ (\ ) |virtual| |const| :ref:`🔗` - -**Required.**\ +:ref:`PackedStringArray` **_get_platform_features**\ (\ ) |virtual| |required| |const| :ref:`🔗` Returns array of platform specific features. @@ -458,9 +414,7 @@ Returns array of platform specific features. .. rst-class:: classref-method -:ref:`PackedStringArray` **_get_preset_features**\ (\ preset\: :ref:`EditorExportPreset`\ ) |virtual| |const| :ref:`🔗` - -**Required.**\ +:ref:`PackedStringArray` **_get_preset_features**\ (\ preset\: :ref:`EditorExportPreset`\ ) |virtual| |required| |const| :ref:`🔗` Returns array of platform specific features for the specified ``preset``. @@ -474,9 +428,7 @@ Returns array of platform specific features for the specified ``preset``. :ref:`Texture2D` **_get_run_icon**\ (\ ) |virtual| |const| :ref:`🔗` -**Optional.**\ - -Returns icon of the one-click deploy menu button, icon should be 16x16 adjusted to the current editor scale, see :ref:`EditorInterface.get_editor_scale()`. +Returns the icon of the one-click deploy menu button. The icon should be 16×16 pixels, adjusted for the current editor scale (see :ref:`EditorInterface.get_editor_scale()`). .. rst-class:: classref-item-separator @@ -486,9 +438,7 @@ Returns icon of the one-click deploy menu button, icon should be 16x16 adjusted .. rst-class:: classref-method -:ref:`bool` **_has_valid_export_configuration**\ (\ preset\: :ref:`EditorExportPreset`, debug\: :ref:`bool`\ ) |virtual| |const| :ref:`🔗` - -**Required.**\ +:ref:`bool` **_has_valid_export_configuration**\ (\ preset\: :ref:`EditorExportPreset`, debug\: :ref:`bool`\ ) |virtual| |required| |const| :ref:`🔗` Returns ``true`` if export configuration is valid. @@ -500,9 +450,7 @@ Returns ``true`` if export configuration is valid. .. rst-class:: classref-method -:ref:`bool` **_has_valid_project_configuration**\ (\ preset\: :ref:`EditorExportPreset`\ ) |virtual| |const| :ref:`🔗` - -**Required.**\ +:ref:`bool` **_has_valid_project_configuration**\ (\ preset\: :ref:`EditorExportPreset`\ ) |virtual| |required| |const| :ref:`🔗` Returns ``true`` if project configuration is valid. @@ -516,8 +464,6 @@ Returns ``true`` if project configuration is valid. :ref:`bool` **_is_executable**\ (\ path\: :ref:`String`\ ) |virtual| |const| :ref:`🔗` -**Optional.**\ - Returns ``true`` if specified file is a valid executable (native executable or script) for the target platform. .. rst-class:: classref-item-separator @@ -530,8 +476,6 @@ Returns ``true`` if specified file is a valid executable (native executable or s :ref:`bool` **_poll_export**\ (\ ) |virtual| :ref:`🔗` -**Optional.**\ - Returns ``true`` if one-click deploy options are changed and editor interface should be updated. .. rst-class:: classref-item-separator @@ -544,8 +488,6 @@ Returns ``true`` if one-click deploy options are changed and editor interface sh :ref:`Error` **_run**\ (\ preset\: :ref:`EditorExportPreset`, device\: :ref:`int`, debug_flags\: |bitfield|\[:ref:`DebugFlags`\]\ ) |virtual| :ref:`🔗` -**Optional.**\ - This method is called when ``device`` one-click deploy menu option is selected. Implementation should export project to a temporary location, upload and run it on the specific ``device``, or perform another action associated with the menu item. @@ -560,8 +502,6 @@ Implementation should export project to a temporary location, upload and run it :ref:`bool` **_should_update_export_options**\ (\ ) |virtual| :ref:`🔗` -**Optional.**\ - Returns ``true`` if export options list is changed and presets should be updated. .. rst-class:: classref-item-separator @@ -613,6 +553,7 @@ Sets current configuration error message text. This method should be called only Set to ``true`` is export templates are missing from the current configuration. This method should be called only from the :ref:`_can_export()`, :ref:`_has_valid_export_configuration()`, or :ref:`_has_valid_project_configuration()` implementations. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_editorexportplatformios.rst b/classes/class_editorexportplatformios.rst index fdca9c045..cc02be81b 100644 --- a/classes/class_editorexportplatformios.rst +++ b/classes/class_editorexportplatformios.rst @@ -10,7 +10,7 @@ EditorExportPlatformIOS ======================= -**Inherits:** :ref:`EditorExportPlatform` **<** :ref:`RefCounted` **<** :ref:`Object` +**Inherits:** :ref:`EditorExportPlatformAppleEmbedded` **<** :ref:`EditorExportPlatform` **<** :ref:`RefCounted` **<** :ref:`Object` Exporter for iOS. @@ -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` | @@ -571,7 +573,7 @@ Unique application identifier in a reverse-DNS format, can only contain alphanum :ref:`String` **application/code_sign_identity_debug** :ref:`🔗` -The "Full Name", "Common Name" or SHA-1 hash of the signing identity used for debug export. +The "Full Name", "Common Name", or SHA-1 hash of the signing identity used for debug export. .. rst-class:: classref-item-separator @@ -583,7 +585,7 @@ The "Full Name", "Common Name" or SHA-1 hash of the signing identity used for de :ref:`String` **application/code_sign_identity_release** :ref:`🔗` -The "Full Name", "Common Name" or SHA-1 hash of the signing identity used for release export. +The "Full Name", "Common Name", or SHA-1 hash of the signing identity used for release export. .. rst-class:: classref-item-separator @@ -667,9 +669,9 @@ Minimum version of iOS required for this application to run in the ``major.minor :ref:`String` **application/provisioning_profile_specifier_debug** :ref:`🔗` -Name of the provisioning profile. Sets XCode PROVISIONING_PROFILE_SPECIFIER for debug. `Used for manual provisioning `__. +Name of the provisioning profile. Sets Xcode PROVISIONING_PROFILE_SPECIFIER for debug. `Used for manual provisioning `__. -Can be overridden with the environment variable ``GODOT_IOS_PROFILE_SPECIFIER_DEBUG``. +Can be overridden with the environment variable ``GODOT_APPLE_PLATFORM_PROFILE_SPECIFIER_DEBUG``. .. rst-class:: classref-item-separator @@ -681,9 +683,9 @@ Can be overridden with the environment variable ``GODOT_IOS_PROFILE_SPECIFIER_DE :ref:`String` **application/provisioning_profile_specifier_release** :ref:`🔗` -Name of the provisioning profile. Sets XCode PROVISIONING_PROFILE_SPECIFIER for release. `Used for manual provisioning `__. +Name of the provisioning profile. Sets Xcode PROVISIONING_PROFILE_SPECIFIER for release. `Used for manual provisioning `__. -Can be overridden with the environment variable ``GODOT_IOS_PROFILE_SPECIFIER_RELEASE``. +Can be overridden with the environment variable ``GODOT_APPLE_PLATFORM_PROFILE_SPECIFIER_RELEASE``. .. rst-class:: classref-item-separator @@ -697,7 +699,7 @@ Can be overridden with the environment variable ``GODOT_IOS_PROFILE_SPECIFIER_RE UUID of the provisioning profile. If left empty, Xcode will download or create a provisioning profile automatically. See `Edit, download, or delete provisioning profiles `__. -Can be overridden with the environment variable ``GODOT_IOS_PROVISIONING_PROFILE_UUID_DEBUG``. +Can be overridden with the environment variable ``GODOT_APPLE_PLATFORM_PROVISIONING_PROFILE_UUID_DEBUG``. .. rst-class:: classref-item-separator @@ -711,7 +713,7 @@ Can be overridden with the environment variable ``GODOT_IOS_PROVISIONING_PROFILE UUID of the provisioning profile. If left empty, Xcode will download or create a provisioning profile automatically. See `Edit, download, or delete provisioning profiles `__. -Can be overridden with the environment variable ``GODOT_IOS_PROVISIONING_PROFILE_UUID_RELEASE``. +Can be overridden with the environment variable ``GODOT_APPLE_PLATFORM_PROVISIONING_PROFILE_UUID_RELEASE``. .. rst-class:: classref-item-separator @@ -723,7 +725,9 @@ Can be overridden with the environment variable ``GODOT_IOS_PROVISIONING_PROFILE :ref:`String` **application/short_version** :ref:`🔗` -Application version visible to the user, can only contain numeric characters (``0-9``) and periods (``.``). Falls back to :ref:`ProjectSettings.application/config/version` if left empty. +Application version visible to the user. Can only contain numeric characters (``0-9``) and periods (``.``). Falls back to :ref:`ProjectSettings.application/config/version` if left empty. + +\ **Note:** This value is used for the *Identity > Version* value in the generated Xcode project. .. rst-class:: classref-item-separator @@ -759,7 +763,9 @@ Supported device family. :ref:`String` **application/version** :ref:`🔗` -Machine-readable application version, in the ``major.minor.patch`` format, can only contain numeric characters (``0-9``) and periods (``.``). This must be incremented on every new release pushed to the App Store. +Machine-readable application version in the ``major.minor.patch`` format. Can only contain numeric characters (``0-9``) and periods (``.``). This must be incremented with every new release pushed to the App Store. Falls back to :ref:`ProjectSettings.application/config/version` if left empty. + +\ **Note:** This value is used for the *Identity > Build* value in the generated Xcode project. .. rst-class:: classref-item-separator @@ -811,7 +817,7 @@ Additional data added to the ``UIRequiredDeviceCapabilities`` array of the ``Inf Requires the graphics performance and features of the A12 Bionic and later chips (devices supporting all Vulkan renderer features). -Enabling this option limits supported devices to: iPhone XS, iPhone XR, iPad Mini (5th gen.), iPad Air (3rd gen.), iPad (8th gen) and newer. +Enabling this option limits supported devices to: iPhone XS, iPhone XR, iPad Mini (5th gen.), iPad Air (3rd gen.), iPad (8th gen), and newer. .. rst-class:: classref-item-separator @@ -878,7 +884,7 @@ Additional data added to the root ```` section of the `.entitlements ` **entitlements/game_center** :ref:`🔗` -Enable to allow access to Game Center features. `com.apple.developer.game-center `__. +If ``true``, allows access to Game Center features. See `com.apple.developer.game-center `__. .. rst-class:: classref-item-separator @@ -890,7 +896,7 @@ Enable to allow access to Game Center features. `com.apple.developer.game-center :ref:`bool` **entitlements/increased_memory_limit** :ref:`🔗` -Enable if app may perform better with a higher memory limit. `com.apple.developer.kernel.increased-memory-limit `__. +If ``true``, hints that the app might perform better with a higher memory limit. See `com.apple.developer.kernel.increased-memory-limit `__. .. rst-class:: classref-item-separator @@ -3358,6 +3364,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 @@ -3439,6 +3457,7 @@ If ``true``, the app "Documents" folder can be accessed via "Files" app. See `LS If ``true``, the app "Documents" folder can be accessed via iTunes file sharing. See `UIFileSharingEnabled `__. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_editorexportplatformlinuxbsd.rst b/classes/class_editorexportplatformlinuxbsd.rst index f95fd35c1..067d001bc 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 @@ -257,6 +271,7 @@ If ``true``, project textures are exported in the ETC2/ASTC format. If ``true``, project textures are exported in the S3TC/BPTC format. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_editorexportplatformmacos.rst b/classes/class_editorexportplatformmacos.rst index f49df0b33..c1bb66e58 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` | @@ -643,7 +645,9 @@ Minimum version of macOS required for this application to run on Intel Macs, in :ref:`String` **application/short_version** :ref:`🔗` -Application version visible to the user, can only contain numeric characters (``0-9``) and periods (``.``). Falls back to :ref:`ProjectSettings.application/config/version` if left empty. +Application version visible to the user. Can only contain numeric characters (``0-9``) and periods (``.``). Falls back to :ref:`ProjectSettings.application/config/version` if left empty. + +\ **Note:** This value is used for the *Identity > Version* value in the generated Xcode project. .. rst-class:: classref-item-separator @@ -667,7 +671,9 @@ A four-character creator code that is specific to the bundle. Optional. :ref:`String` **application/version** :ref:`🔗` -Machine-readable application version, in the ``major.minor.patch`` format, can only contain numeric characters (``0-9``) and periods (``.``). This must be incremented on every new release pushed to the App Store. +Machine-readable application version in the ``major.minor.patch`` format. Can only contain numeric characters (``0-9``) and periods (``.``). This must be incremented with every new release pushed to the App Store. Falls back to :ref:`ProjectSettings.application/config/version` if left empty. + +\ **Note:** This value is used for the *Identity > Build* value in the generated Xcode project. .. rst-class:: classref-item-separator @@ -3212,6 +3218,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 @@ -3385,6 +3403,7 @@ Xcode build number used to build application executable. Xcode version used to build application executable. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_editorexportplatformpc.rst b/classes/class_editorexportplatformpc.rst index 195276a8d..6143c02a4 100644 --- a/classes/class_editorexportplatformpc.rst +++ b/classes/class_editorexportplatformpc.rst @@ -21,7 +21,7 @@ Base class for the desktop platform exporter (Windows and Linux/BSD). Description ----------- -The base class for the desktop platform exporters. These include Windows and Linux/BSD, but not macOS. See the classes inheriting this one for more details. +The base class for the desktop platform exporters. These include Windows and Linux/BSD, but not macOS. See the classes inheriting from this one for more details. .. rst-class:: classref-introduction-group @@ -33,6 +33,7 @@ Tutorials - :doc:`Exporting for Linux <../tutorials/export/exporting_for_linux>` .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_editorexportplatformvisionos.rst b/classes/class_editorexportplatformvisionos.rst new file mode 100644 index 000000000..b6435efbc --- /dev/null +++ b/classes/class_editorexportplatformvisionos.rst @@ -0,0 +1,2713 @@ +:github_url: hide + +.. DO NOT EDIT THIS FILE!!! +.. Generated automatically from Godot engine sources. +.. Generator: https://github.com/godotengine/godot/tree/master/doc/tools/make_rst.py. +.. XML source: https://github.com/godotengine/godot/tree/master/platform/visionos/doc_classes/EditorExportPlatformVisionOS.xml. + +.. _class_EditorExportPlatformVisionOS: + +EditorExportPlatformVisionOS +============================ + +**Inherits:** :ref:`EditorExportPlatformAppleEmbedded` **<** :ref:`EditorExportPlatform` **<** :ref:`RefCounted` **<** :ref:`Object` + +Exporter for visionOS. + +.. rst-class:: classref-introduction-group + +Tutorials +--------- + +- :doc:`Exporting for iOS <../tutorials/export/exporting_for_ios>` + +- :doc:`iOS plugins documentation index <../tutorials/platform/ios/index>` + +.. rst-class:: classref-reftable-group + +Properties +---------- + +.. table:: + :widths: auto + + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`application/additional_plist_content` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`application/app_store_team_id` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`application/bundle_identifier` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`application/code_sign_identity_debug` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`application/code_sign_identity_release` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`application/delete_old_export_files_unconditionally` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`application/export_method_debug` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`application/export_method_release` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`application/export_project_only` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`application/icon_interpolation` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`application/min_visionos_version` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`application/provisioning_profile_specifier_debug` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`application/provisioning_profile_specifier_release` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`application/provisioning_profile_uuid_debug` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`application/provisioning_profile_uuid_release` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`application/short_version` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`application/signature` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`application/version` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`architectures/arm64` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`capabilities/access_wifi` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`PackedStringArray` | :ref:`capabilities/additional` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`capabilities/performance_a12` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`capabilities/performance_gaming_tier` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`custom_template/debug` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`custom_template/release` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`entitlements/additional` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`entitlements/game_center` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`entitlements/increased_memory_limit` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`entitlements/push_notifications` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`icons/icon_1024x1024` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`icons/icon_1024x1024_dark` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`icons/icon_1024x1024_tinted` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`privacy/active_keyboard_access_reasons` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`privacy/camera_usage_description` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Dictionary` | :ref:`privacy/camera_usage_description_localized` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`privacy/collected_data/advertising_data/collected` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`privacy/collected_data/advertising_data/collection_purposes` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`privacy/collected_data/advertising_data/linked_to_user` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`privacy/collected_data/advertising_data/used_for_tracking` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`privacy/collected_data/audio_data/collected` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`privacy/collected_data/audio_data/collection_purposes` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`privacy/collected_data/audio_data/linked_to_user` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`privacy/collected_data/audio_data/used_for_tracking` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`privacy/collected_data/browsing_history/collected` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`privacy/collected_data/browsing_history/collection_purposes` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`privacy/collected_data/browsing_history/linked_to_user` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`privacy/collected_data/browsing_history/used_for_tracking` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`privacy/collected_data/coarse_location/collected` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`privacy/collected_data/coarse_location/collection_purposes` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`privacy/collected_data/coarse_location/linked_to_user` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`privacy/collected_data/coarse_location/used_for_tracking` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`privacy/collected_data/contacts/collected` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`privacy/collected_data/contacts/collection_purposes` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`privacy/collected_data/contacts/linked_to_user` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`privacy/collected_data/contacts/used_for_tracking` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`privacy/collected_data/crash_data/collected` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`privacy/collected_data/crash_data/collection_purposes` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`privacy/collected_data/crash_data/linked_to_user` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`privacy/collected_data/crash_data/used_for_tracking` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`privacy/collected_data/credit_info/collected` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`privacy/collected_data/credit_info/collection_purposes` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`privacy/collected_data/credit_info/linked_to_user` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`privacy/collected_data/credit_info/used_for_tracking` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`privacy/collected_data/customer_support/collected` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`privacy/collected_data/customer_support/collection_purposes` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`privacy/collected_data/customer_support/linked_to_user` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`privacy/collected_data/customer_support/used_for_tracking` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`privacy/collected_data/device_id/collected` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`privacy/collected_data/device_id/collection_purposes` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`privacy/collected_data/device_id/linked_to_user` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`privacy/collected_data/device_id/used_for_tracking` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`privacy/collected_data/email_address/collected` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`privacy/collected_data/email_address/collection_purposes` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`privacy/collected_data/email_address/linked_to_user` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`privacy/collected_data/email_address/used_for_tracking` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`privacy/collected_data/emails_or_text_messages/collected` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`privacy/collected_data/emails_or_text_messages/collection_purposes` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`privacy/collected_data/emails_or_text_messages/linked_to_user` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`privacy/collected_data/emails_or_text_messages/used_for_tracking` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`privacy/collected_data/environment_scanning/collected` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`privacy/collected_data/environment_scanning/collection_purposes` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`privacy/collected_data/environment_scanning/linked_to_user` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`privacy/collected_data/environment_scanning/used_for_tracking` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`privacy/collected_data/fitness/collected` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`privacy/collected_data/fitness/collection_purposes` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`privacy/collected_data/fitness/linked_to_user` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`privacy/collected_data/fitness/used_for_tracking` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`privacy/collected_data/gameplay_content/collected` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`privacy/collected_data/gameplay_content/collection_purposes` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`privacy/collected_data/gameplay_content/linked_to_user` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`privacy/collected_data/gameplay_content/used_for_tracking` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`privacy/collected_data/hands/collected` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`privacy/collected_data/hands/collection_purposes` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`privacy/collected_data/hands/linked_to_user` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`privacy/collected_data/hands/used_for_tracking` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`privacy/collected_data/head/collected` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`privacy/collected_data/head/collection_purposes` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`privacy/collected_data/head/linked_to_user` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`privacy/collected_data/head/used_for_tracking` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`privacy/collected_data/health/collected` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`privacy/collected_data/health/collection_purposes` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`privacy/collected_data/health/linked_to_user` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`privacy/collected_data/health/used_for_tracking` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`privacy/collected_data/name/collected` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`privacy/collected_data/name/collection_purposes` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`privacy/collected_data/name/linked_to_user` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`privacy/collected_data/name/used_for_tracking` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`privacy/collected_data/other_contact_info/collected` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`privacy/collected_data/other_contact_info/collection_purposes` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`privacy/collected_data/other_contact_info/linked_to_user` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`privacy/collected_data/other_contact_info/used_for_tracking` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`privacy/collected_data/other_data_types/collected` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`privacy/collected_data/other_data_types/collection_purposes` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`privacy/collected_data/other_data_types/linked_to_user` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`privacy/collected_data/other_data_types/used_for_tracking` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`privacy/collected_data/other_diagnostic_data/collected` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`privacy/collected_data/other_diagnostic_data/collection_purposes` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`privacy/collected_data/other_diagnostic_data/linked_to_user` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`privacy/collected_data/other_diagnostic_data/used_for_tracking` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`privacy/collected_data/other_financial_info/collected` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`privacy/collected_data/other_financial_info/collection_purposes` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`privacy/collected_data/other_financial_info/linked_to_user` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`privacy/collected_data/other_financial_info/used_for_tracking` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`privacy/collected_data/other_usage_data/collected` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`privacy/collected_data/other_usage_data/collection_purposes` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`privacy/collected_data/other_usage_data/linked_to_user` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`privacy/collected_data/other_usage_data/used_for_tracking` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`privacy/collected_data/other_user_content/collected` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`privacy/collected_data/other_user_content/collection_purposes` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`privacy/collected_data/other_user_content/linked_to_user` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`privacy/collected_data/other_user_content/used_for_tracking` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`privacy/collected_data/payment_info/collected` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`privacy/collected_data/payment_info/collection_purposes` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`privacy/collected_data/payment_info/linked_to_user` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`privacy/collected_data/payment_info/used_for_tracking` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`privacy/collected_data/performance_data/collected` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`privacy/collected_data/performance_data/collection_purposes` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`privacy/collected_data/performance_data/linked_to_user` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`privacy/collected_data/performance_data/used_for_tracking` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`privacy/collected_data/phone_number/collected` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`privacy/collected_data/phone_number/collection_purposes` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`privacy/collected_data/phone_number/linked_to_user` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`privacy/collected_data/phone_number/used_for_tracking` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`privacy/collected_data/photos_or_videos/collected` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`privacy/collected_data/photos_or_videos/collection_purposes` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`privacy/collected_data/photos_or_videos/linked_to_user` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`privacy/collected_data/photos_or_videos/used_for_tracking` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`privacy/collected_data/physical_address/collected` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`privacy/collected_data/physical_address/collection_purposes` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`privacy/collected_data/physical_address/linked_to_user` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`privacy/collected_data/physical_address/used_for_tracking` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`privacy/collected_data/precise_location/collected` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`privacy/collected_data/precise_location/collection_purposes` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`privacy/collected_data/precise_location/linked_to_user` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`privacy/collected_data/precise_location/used_for_tracking` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`privacy/collected_data/product_interaction/collected` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`privacy/collected_data/product_interaction/collection_purposes` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`privacy/collected_data/product_interaction/linked_to_user` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`privacy/collected_data/product_interaction/used_for_tracking` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`privacy/collected_data/purchase_history/collected` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`privacy/collected_data/purchase_history/collection_purposes` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`privacy/collected_data/purchase_history/linked_to_user` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`privacy/collected_data/purchase_history/used_for_tracking` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`privacy/collected_data/search_hhistory/collected` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`privacy/collected_data/search_hhistory/collection_purposes` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`privacy/collected_data/search_hhistory/linked_to_user` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`privacy/collected_data/search_hhistory/used_for_tracking` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`privacy/collected_data/sensitive_info/collected` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`privacy/collected_data/sensitive_info/collection_purposes` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`privacy/collected_data/sensitive_info/linked_to_user` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`privacy/collected_data/sensitive_info/used_for_tracking` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`privacy/collected_data/user_id/collected` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`privacy/collected_data/user_id/collection_purposes` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`privacy/collected_data/user_id/linked_to_user` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`privacy/collected_data/user_id/used_for_tracking` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`privacy/disk_space_access_reasons` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`privacy/file_timestamp_access_reasons` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`privacy/microphone_usage_description` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Dictionary` | :ref:`privacy/microphone_usage_description_localized` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`privacy/photolibrary_usage_description` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Dictionary` | :ref:`privacy/photolibrary_usage_description_localized` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`privacy/system_boot_time_access_reasons` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`PackedStringArray` | :ref:`privacy/tracking_domains` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`privacy/tracking_enabled` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :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` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + +.. rst-class:: classref-section-separator + +---- + +.. rst-class:: classref-descriptions-group + +Property Descriptions +--------------------- + +.. _class_EditorExportPlatformVisionOS_property_application/additional_plist_content: + +.. rst-class:: classref-property + +:ref:`String` **application/additional_plist_content** :ref:`🔗` + +Additional data added to the root ```` section of the `Info.plist `__ file. The value should be an XML section with pairs of key-value elements, e.g.: + +.. code:: text + + key_name + value + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_application/app_store_team_id: + +.. rst-class:: classref-property + +:ref:`String` **application/app_store_team_id** :ref:`🔗` + +Apple Team ID, unique 10-character string. To locate your Team ID check "Membership details" section in your Apple developer account dashboard, or "Organizational Unit" of your code signing certificate. See `Locate your Team ID `__. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_application/bundle_identifier: + +.. rst-class:: classref-property + +:ref:`String` **application/bundle_identifier** :ref:`🔗` + +Unique application identifier in a reverse-DNS format, can only contain alphanumeric characters (``A-Z``, ``a-z``, and ``0-9``), hyphens (``-``), and periods (``.``). + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_application/code_sign_identity_debug: + +.. rst-class:: classref-property + +:ref:`String` **application/code_sign_identity_debug** :ref:`🔗` + +The "Full Name", "Common Name" or SHA-1 hash of the signing identity used for debug export. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_application/code_sign_identity_release: + +.. rst-class:: classref-property + +:ref:`String` **application/code_sign_identity_release** :ref:`🔗` + +The "Full Name", "Common Name" or SHA-1 hash of the signing identity used for release export. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_application/delete_old_export_files_unconditionally: + +.. rst-class:: classref-property + +:ref:`bool` **application/delete_old_export_files_unconditionally** :ref:`🔗` + +If ``true``, existing "project name" and "project name.xcodeproj" in the export destination directory will be unconditionally deleted during export. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_application/export_method_debug: + +.. rst-class:: classref-property + +:ref:`int` **application/export_method_debug** :ref:`🔗` + +Application distribution target (debug export). + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_application/export_method_release: + +.. rst-class:: classref-property + +:ref:`int` **application/export_method_release** :ref:`🔗` + +Application distribution target (release export). + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_application/export_project_only: + +.. rst-class:: classref-property + +:ref:`bool` **application/export_project_only** :ref:`🔗` + +If ``true``, exports iOS project files without building an XCArchive or ``.ipa`` file. If ``false``, exports iOS project files and builds an XCArchive and ``.ipa`` file at the same time. When combining Godot with Fastlane or other build pipelines, you may want to set this to ``true``. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_application/icon_interpolation: + +.. rst-class:: classref-property + +:ref:`int` **application/icon_interpolation** :ref:`🔗` + +Interpolation method used to resize application icon. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_application/min_visionos_version: + +.. rst-class:: classref-property + +:ref:`String` **application/min_visionos_version** :ref:`🔗` + +.. container:: contribute + + There is currently no description for this property. Please help us by `contributing one `__! + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_application/provisioning_profile_specifier_debug: + +.. rst-class:: classref-property + +:ref:`String` **application/provisioning_profile_specifier_debug** :ref:`🔗` + +Name of the provisioning profile. Sets XCode PROVISIONING_PROFILE_SPECIFIER for debug. `Used for manual provisioning `__. + +Can be overridden with the environment variable ``GODOT_APPLE_PLATFORM_PROFILE_SPECIFIER_DEBUG``. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_application/provisioning_profile_specifier_release: + +.. rst-class:: classref-property + +:ref:`String` **application/provisioning_profile_specifier_release** :ref:`🔗` + +Name of the provisioning profile. Sets XCode PROVISIONING_PROFILE_SPECIFIER for release. `Used for manual provisioning `__. + +Can be overridden with the environment variable ``GODOT_APPLE_PLATFORM_PROFILE_SPECIFIER_RELEASE``. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_application/provisioning_profile_uuid_debug: + +.. rst-class:: classref-property + +:ref:`String` **application/provisioning_profile_uuid_debug** :ref:`🔗` + +UUID of the provisioning profile. If left empty, Xcode will download or create a provisioning profile automatically. See `Edit, download, or delete provisioning profiles `__. + +Can be overridden with the environment variable ``GODOT_APPLE_PLATFORM_PROVISIONING_PROFILE_UUID_DEBUG``. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_application/provisioning_profile_uuid_release: + +.. rst-class:: classref-property + +:ref:`String` **application/provisioning_profile_uuid_release** :ref:`🔗` + +UUID of the provisioning profile. If left empty, Xcode will download or create a provisioning profile automatically. See `Edit, download, or delete provisioning profiles `__. + +Can be overridden with the environment variable ``GODOT_APPLE_PLATFORM_PROVISIONING_PROFILE_UUID_RELEASE``. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_application/short_version: + +.. rst-class:: classref-property + +:ref:`String` **application/short_version** :ref:`🔗` + +Application version visible to the user. Can only contain numeric characters (``0-9``) and periods (``.``). Falls back to :ref:`ProjectSettings.application/config/version` if left empty. + +\ **Note:** This value is used for the *Identity > Version* value in the generated Xcode project. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_application/signature: + +.. rst-class:: classref-property + +:ref:`String` **application/signature** :ref:`🔗` + +A four-character creator code that is specific to the bundle. Optional. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_application/version: + +.. rst-class:: classref-property + +:ref:`String` **application/version** :ref:`🔗` + +Machine-readable application version in the ``major.minor.patch`` format. Can only contain numeric characters (``0-9``) and periods (``.``). This must be incremented with every new release pushed to the App Store. Falls back to :ref:`ProjectSettings.application/config/version` if left empty. + +\ **Note:** This value is used for the *Identity > Build* value in the generated Xcode project. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_architectures/arm64: + +.. rst-class:: classref-property + +:ref:`bool` **architectures/arm64** :ref:`🔗` + +If ``true``, ``arm64`` binaries are included into exported project. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_capabilities/access_wifi: + +.. rst-class:: classref-property + +:ref:`bool` **capabilities/access_wifi** :ref:`🔗` + +If ``true``, networking features related to Wi-Fi access are enabled. See `Required Device Capabilities `__. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_capabilities/additional: + +.. rst-class:: classref-property + +:ref:`PackedStringArray` **capabilities/additional** :ref:`🔗` + +Additional data added to the ``UIRequiredDeviceCapabilities`` array of the ``Info.plist`` file. + +**Note:** The returned array is *copied* and any changes to it will not update the original property value. See :ref:`PackedStringArray` for more details. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_capabilities/performance_a12: + +.. rst-class:: classref-property + +:ref:`bool` **capabilities/performance_a12** :ref:`🔗` + +Requires the graphics performance and features of the A12 Bionic and later chips (devices supporting all Vulkan renderer features). + +Enabling this option limits supported devices to: iPhone XS, iPhone XR, iPad Mini (5th gen.), iPad Air (3rd gen.), iPad (8th gen) and newer. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_capabilities/performance_gaming_tier: + +.. rst-class:: classref-property + +:ref:`bool` **capabilities/performance_gaming_tier** :ref:`🔗` + +Requires the graphics performance and features of the A17 Pro and later chips. + +Enabling this option limits supported devices to: iPhone 15 Pro and newer. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_custom_template/debug: + +.. rst-class:: classref-property + +:ref:`String` **custom_template/debug** :ref:`🔗` + +Path to the custom export template. If left empty, default template is used. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_custom_template/release: + +.. rst-class:: classref-property + +:ref:`String` **custom_template/release** :ref:`🔗` + +Path to the custom export template. If left empty, default template is used. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_entitlements/additional: + +.. rst-class:: classref-property + +:ref:`String` **entitlements/additional** :ref:`🔗` + +Additional data added to the root ```` section of the `.entitlements `__ file. The value should be an XML section with pairs of key-value elements, for example: + +.. code:: text + + key_name + value + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_entitlements/game_center: + +.. rst-class:: classref-property + +:ref:`bool` **entitlements/game_center** :ref:`🔗` + +If ``true``, allows access to Game Center features. See `com.apple.developer.game-center `__. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_entitlements/increased_memory_limit: + +.. rst-class:: classref-property + +:ref:`bool` **entitlements/increased_memory_limit** :ref:`🔗` + +If ``true``, hints that the app might perform better with a higher memory limit. See `com.apple.developer.kernel.increased-memory-limit `__. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_entitlements/push_notifications: + +.. rst-class:: classref-property + +:ref:`String` **entitlements/push_notifications** :ref:`🔗` + +Environment for Apple Push Notification service. See `aps-environment `__. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_icons/icon_1024x1024: + +.. rst-class:: classref-property + +:ref:`String` **icons/icon_1024x1024** :ref:`🔗` + +Base application icon used to generate other icons. If left empty, it will fallback to :ref:`ProjectSettings.application/config/icon`. See `App icons `__. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_icons/icon_1024x1024_dark: + +.. rst-class:: classref-property + +:ref:`String` **icons/icon_1024x1024_dark** :ref:`🔗` + +Base application icon used to generate other icons, dark version. See `App icons `__. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_icons/icon_1024x1024_tinted: + +.. rst-class:: classref-property + +:ref:`String` **icons/icon_1024x1024_tinted** :ref:`🔗` + +Base application icon used to generate other icons, tinted version. See `App icons `__. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/active_keyboard_access_reasons: + +.. rst-class:: classref-property + +:ref:`int` **privacy/active_keyboard_access_reasons** :ref:`🔗` + +The reasons your app use active keyboard API. See `Describing use of required reason API `__. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/camera_usage_description: + +.. rst-class:: classref-property + +:ref:`String` **privacy/camera_usage_description** :ref:`🔗` + +A message displayed when requesting access to the device's camera (in English). + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/camera_usage_description_localized: + +.. rst-class:: classref-property + +:ref:`Dictionary` **privacy/camera_usage_description_localized** :ref:`🔗` + +A message displayed when requesting access to the device's camera (localized). + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/collected_data/advertising_data/collected: + +.. rst-class:: classref-property + +:ref:`bool` **privacy/collected_data/advertising_data/collected** :ref:`🔗` + +Indicates whether your app collects advertising data. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/collected_data/advertising_data/collection_purposes: + +.. rst-class:: classref-property + +:ref:`int` **privacy/collected_data/advertising_data/collection_purposes** :ref:`🔗` + +The reasons your app collects advertising data. See `Describing data use in privacy manifests `__. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/collected_data/advertising_data/linked_to_user: + +.. rst-class:: classref-property + +:ref:`bool` **privacy/collected_data/advertising_data/linked_to_user** :ref:`🔗` + +Indicates whether your app links advertising data to the user's identity. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/collected_data/advertising_data/used_for_tracking: + +.. rst-class:: classref-property + +:ref:`bool` **privacy/collected_data/advertising_data/used_for_tracking** :ref:`🔗` + +Indicates whether your app uses advertising data for tracking. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/collected_data/audio_data/collected: + +.. rst-class:: classref-property + +:ref:`bool` **privacy/collected_data/audio_data/collected** :ref:`🔗` + +Indicates whether your app collects audio data. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/collected_data/audio_data/collection_purposes: + +.. rst-class:: classref-property + +:ref:`int` **privacy/collected_data/audio_data/collection_purposes** :ref:`🔗` + +The reasons your app collects audio data. See `Describing data use in privacy manifests `__. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/collected_data/audio_data/linked_to_user: + +.. rst-class:: classref-property + +:ref:`bool` **privacy/collected_data/audio_data/linked_to_user** :ref:`🔗` + +Indicates whether your app links audio data to the user's identity. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/collected_data/audio_data/used_for_tracking: + +.. rst-class:: classref-property + +:ref:`bool` **privacy/collected_data/audio_data/used_for_tracking** :ref:`🔗` + +Indicates whether your app uses audio data for tracking. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/collected_data/browsing_history/collected: + +.. rst-class:: classref-property + +:ref:`bool` **privacy/collected_data/browsing_history/collected** :ref:`🔗` + +Indicates whether your app collects browsing history. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/collected_data/browsing_history/collection_purposes: + +.. rst-class:: classref-property + +:ref:`int` **privacy/collected_data/browsing_history/collection_purposes** :ref:`🔗` + +The reasons your app collects browsing history. See `Describing data use in privacy manifests `__. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/collected_data/browsing_history/linked_to_user: + +.. rst-class:: classref-property + +:ref:`bool` **privacy/collected_data/browsing_history/linked_to_user** :ref:`🔗` + +Indicates whether your app links browsing history to the user's identity. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/collected_data/browsing_history/used_for_tracking: + +.. rst-class:: classref-property + +:ref:`bool` **privacy/collected_data/browsing_history/used_for_tracking** :ref:`🔗` + +Indicates whether your app uses browsing history for tracking. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/collected_data/coarse_location/collected: + +.. rst-class:: classref-property + +:ref:`bool` **privacy/collected_data/coarse_location/collected** :ref:`🔗` + +Indicates whether your app collects coarse location data. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/collected_data/coarse_location/collection_purposes: + +.. rst-class:: classref-property + +:ref:`int` **privacy/collected_data/coarse_location/collection_purposes** :ref:`🔗` + +The reasons your app collects coarse location data. See `Describing data use in privacy manifests `__. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/collected_data/coarse_location/linked_to_user: + +.. rst-class:: classref-property + +:ref:`bool` **privacy/collected_data/coarse_location/linked_to_user** :ref:`🔗` + +Indicates whether your app links coarse location data to the user's identity. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/collected_data/coarse_location/used_for_tracking: + +.. rst-class:: classref-property + +:ref:`bool` **privacy/collected_data/coarse_location/used_for_tracking** :ref:`🔗` + +Indicates whether your app uses coarse location data for tracking. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/collected_data/contacts/collected: + +.. rst-class:: classref-property + +:ref:`bool` **privacy/collected_data/contacts/collected** :ref:`🔗` + +Indicates whether your app collects contacts. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/collected_data/contacts/collection_purposes: + +.. rst-class:: classref-property + +:ref:`int` **privacy/collected_data/contacts/collection_purposes** :ref:`🔗` + +The reasons your app collects contacts. See `Describing data use in privacy manifests `__. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/collected_data/contacts/linked_to_user: + +.. rst-class:: classref-property + +:ref:`bool` **privacy/collected_data/contacts/linked_to_user** :ref:`🔗` + +Indicates whether your app links contacts to the user's identity. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/collected_data/contacts/used_for_tracking: + +.. rst-class:: classref-property + +:ref:`bool` **privacy/collected_data/contacts/used_for_tracking** :ref:`🔗` + +Indicates whether your app uses contacts for tracking. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/collected_data/crash_data/collected: + +.. rst-class:: classref-property + +:ref:`bool` **privacy/collected_data/crash_data/collected** :ref:`🔗` + +Indicates whether your app collects crash data. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/collected_data/crash_data/collection_purposes: + +.. rst-class:: classref-property + +:ref:`int` **privacy/collected_data/crash_data/collection_purposes** :ref:`🔗` + +The reasons your app collects crash data. See `Describing data use in privacy manifests `__. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/collected_data/crash_data/linked_to_user: + +.. rst-class:: classref-property + +:ref:`bool` **privacy/collected_data/crash_data/linked_to_user** :ref:`🔗` + +Indicates whether your app links crash data to the user's identity. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/collected_data/crash_data/used_for_tracking: + +.. rst-class:: classref-property + +:ref:`bool` **privacy/collected_data/crash_data/used_for_tracking** :ref:`🔗` + +Indicates whether your app uses crash data for tracking. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/collected_data/credit_info/collected: + +.. rst-class:: classref-property + +:ref:`bool` **privacy/collected_data/credit_info/collected** :ref:`🔗` + +Indicates whether your app collects credit information. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/collected_data/credit_info/collection_purposes: + +.. rst-class:: classref-property + +:ref:`int` **privacy/collected_data/credit_info/collection_purposes** :ref:`🔗` + +The reasons your app collects credit information. See `Describing data use in privacy manifests `__. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/collected_data/credit_info/linked_to_user: + +.. rst-class:: classref-property + +:ref:`bool` **privacy/collected_data/credit_info/linked_to_user** :ref:`🔗` + +Indicates whether your app links credit information to the user's identity. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/collected_data/credit_info/used_for_tracking: + +.. rst-class:: classref-property + +:ref:`bool` **privacy/collected_data/credit_info/used_for_tracking** :ref:`🔗` + +Indicates whether your app uses credit information for tracking. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/collected_data/customer_support/collected: + +.. rst-class:: classref-property + +:ref:`bool` **privacy/collected_data/customer_support/collected** :ref:`🔗` + +Indicates whether your app collects customer support data. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/collected_data/customer_support/collection_purposes: + +.. rst-class:: classref-property + +:ref:`int` **privacy/collected_data/customer_support/collection_purposes** :ref:`🔗` + +The reasons your app collects customer support data. See `Describing data use in privacy manifests `__. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/collected_data/customer_support/linked_to_user: + +.. rst-class:: classref-property + +:ref:`bool` **privacy/collected_data/customer_support/linked_to_user** :ref:`🔗` + +Indicates whether your app links customer support data to the user's identity. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/collected_data/customer_support/used_for_tracking: + +.. rst-class:: classref-property + +:ref:`bool` **privacy/collected_data/customer_support/used_for_tracking** :ref:`🔗` + +Indicates whether your app uses customer support data for tracking. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/collected_data/device_id/collected: + +.. rst-class:: classref-property + +:ref:`bool` **privacy/collected_data/device_id/collected** :ref:`🔗` + +Indicates whether your app collects device IDs. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/collected_data/device_id/collection_purposes: + +.. rst-class:: classref-property + +:ref:`int` **privacy/collected_data/device_id/collection_purposes** :ref:`🔗` + +The reasons your app collects device IDs. See `Describing data use in privacy manifests `__. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/collected_data/device_id/linked_to_user: + +.. rst-class:: classref-property + +:ref:`bool` **privacy/collected_data/device_id/linked_to_user** :ref:`🔗` + +Indicates whether your app links device IDs to the user's identity. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/collected_data/device_id/used_for_tracking: + +.. rst-class:: classref-property + +:ref:`bool` **privacy/collected_data/device_id/used_for_tracking** :ref:`🔗` + +Indicates whether your app uses device IDs for tracking. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/collected_data/email_address/collected: + +.. rst-class:: classref-property + +:ref:`bool` **privacy/collected_data/email_address/collected** :ref:`🔗` + +Indicates whether your app collects email address. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/collected_data/email_address/collection_purposes: + +.. rst-class:: classref-property + +:ref:`int` **privacy/collected_data/email_address/collection_purposes** :ref:`🔗` + +The reasons your app collects email address. See `Describing data use in privacy manifests `__. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/collected_data/email_address/linked_to_user: + +.. rst-class:: classref-property + +:ref:`bool` **privacy/collected_data/email_address/linked_to_user** :ref:`🔗` + +Indicates whether your app links email address to the user's identity. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/collected_data/email_address/used_for_tracking: + +.. rst-class:: classref-property + +:ref:`bool` **privacy/collected_data/email_address/used_for_tracking** :ref:`🔗` + +Indicates whether your app uses email address for tracking. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/collected_data/emails_or_text_messages/collected: + +.. rst-class:: classref-property + +:ref:`bool` **privacy/collected_data/emails_or_text_messages/collected** :ref:`🔗` + +Indicates whether your app collects emails or text messages. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/collected_data/emails_or_text_messages/collection_purposes: + +.. rst-class:: classref-property + +:ref:`int` **privacy/collected_data/emails_or_text_messages/collection_purposes** :ref:`🔗` + +The reasons your app collects emails or text messages. See `Describing data use in privacy manifests `__. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/collected_data/emails_or_text_messages/linked_to_user: + +.. rst-class:: classref-property + +:ref:`bool` **privacy/collected_data/emails_or_text_messages/linked_to_user** :ref:`🔗` + +Indicates whether your app links emails or text messages to the user's identity. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/collected_data/emails_or_text_messages/used_for_tracking: + +.. rst-class:: classref-property + +:ref:`bool` **privacy/collected_data/emails_or_text_messages/used_for_tracking** :ref:`🔗` + +Indicates whether your app uses emails or text messages for tracking. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/collected_data/environment_scanning/collected: + +.. rst-class:: classref-property + +:ref:`bool` **privacy/collected_data/environment_scanning/collected** :ref:`🔗` + +Indicates whether your app collects environment scanning data. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/collected_data/environment_scanning/collection_purposes: + +.. rst-class:: classref-property + +:ref:`int` **privacy/collected_data/environment_scanning/collection_purposes** :ref:`🔗` + +The reasons your app collects environment scanning data. See `Describing data use in privacy manifests `__. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/collected_data/environment_scanning/linked_to_user: + +.. rst-class:: classref-property + +:ref:`bool` **privacy/collected_data/environment_scanning/linked_to_user** :ref:`🔗` + +Indicates whether your app links environment scanning data to the user's identity. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/collected_data/environment_scanning/used_for_tracking: + +.. rst-class:: classref-property + +:ref:`bool` **privacy/collected_data/environment_scanning/used_for_tracking** :ref:`🔗` + +Indicates whether your app uses environment scanning data for tracking. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/collected_data/fitness/collected: + +.. rst-class:: classref-property + +:ref:`bool` **privacy/collected_data/fitness/collected** :ref:`🔗` + +Indicates whether your app collects fitness and exercise data. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/collected_data/fitness/collection_purposes: + +.. rst-class:: classref-property + +:ref:`int` **privacy/collected_data/fitness/collection_purposes** :ref:`🔗` + +The reasons your app collects fitness and exercise data. See `Describing data use in privacy manifests `__. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/collected_data/fitness/linked_to_user: + +.. rst-class:: classref-property + +:ref:`bool` **privacy/collected_data/fitness/linked_to_user** :ref:`🔗` + +Indicates whether your app links fitness and exercise data to the user's identity. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/collected_data/fitness/used_for_tracking: + +.. rst-class:: classref-property + +:ref:`bool` **privacy/collected_data/fitness/used_for_tracking** :ref:`🔗` + +Indicates whether your app uses fitness and exercise data for tracking. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/collected_data/gameplay_content/collected: + +.. rst-class:: classref-property + +:ref:`bool` **privacy/collected_data/gameplay_content/collected** :ref:`🔗` + +Indicates whether your app collects gameplay content. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/collected_data/gameplay_content/collection_purposes: + +.. rst-class:: classref-property + +:ref:`int` **privacy/collected_data/gameplay_content/collection_purposes** :ref:`🔗` + +The reasons your app collects gameplay content. See `Describing data use in privacy manifests `__. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/collected_data/gameplay_content/linked_to_user: + +.. rst-class:: classref-property + +:ref:`bool` **privacy/collected_data/gameplay_content/linked_to_user** :ref:`🔗` + +Indicates whether your app links gameplay content to the user's identity. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/collected_data/gameplay_content/used_for_tracking: + +.. rst-class:: classref-property + +:ref:`bool` **privacy/collected_data/gameplay_content/used_for_tracking** :ref:`🔗` + +Indicates whether your app uses gameplay content for tracking. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/collected_data/hands/collected: + +.. rst-class:: classref-property + +:ref:`bool` **privacy/collected_data/hands/collected** :ref:`🔗` + +Indicates whether your app collects user's hand structure and hand movements. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/collected_data/hands/collection_purposes: + +.. rst-class:: classref-property + +:ref:`int` **privacy/collected_data/hands/collection_purposes** :ref:`🔗` + +The reasons your app collects user's hand structure and hand movements. See `Describing data use in privacy manifests `__. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/collected_data/hands/linked_to_user: + +.. rst-class:: classref-property + +:ref:`bool` **privacy/collected_data/hands/linked_to_user** :ref:`🔗` + +Indicates whether your app links user's hand structure and hand movements to the user's identity. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/collected_data/hands/used_for_tracking: + +.. rst-class:: classref-property + +:ref:`bool` **privacy/collected_data/hands/used_for_tracking** :ref:`🔗` + +Indicates whether your app uses user's hand structure and hand movements for tracking. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/collected_data/head/collected: + +.. rst-class:: classref-property + +:ref:`bool` **privacy/collected_data/head/collected** :ref:`🔗` + +Indicates whether your app collects user's head movement. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/collected_data/head/collection_purposes: + +.. rst-class:: classref-property + +:ref:`int` **privacy/collected_data/head/collection_purposes** :ref:`🔗` + +The reasons your app collects user's head movement. See `Describing data use in privacy manifests `__. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/collected_data/head/linked_to_user: + +.. rst-class:: classref-property + +:ref:`bool` **privacy/collected_data/head/linked_to_user** :ref:`🔗` + +Indicates whether your app links user's head movement to the user's identity. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/collected_data/head/used_for_tracking: + +.. rst-class:: classref-property + +:ref:`bool` **privacy/collected_data/head/used_for_tracking** :ref:`🔗` + +Indicates whether your app uses user's head movement for tracking. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/collected_data/health/collected: + +.. rst-class:: classref-property + +:ref:`bool` **privacy/collected_data/health/collected** :ref:`🔗` + +Indicates whether your app collects health and medical data. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/collected_data/health/collection_purposes: + +.. rst-class:: classref-property + +:ref:`int` **privacy/collected_data/health/collection_purposes** :ref:`🔗` + +The reasons your app collects health and medical data. See `Describing data use in privacy manifests `__. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/collected_data/health/linked_to_user: + +.. rst-class:: classref-property + +:ref:`bool` **privacy/collected_data/health/linked_to_user** :ref:`🔗` + +Indicates whether your app links health and medical data to the user's identity. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/collected_data/health/used_for_tracking: + +.. rst-class:: classref-property + +:ref:`bool` **privacy/collected_data/health/used_for_tracking** :ref:`🔗` + +Indicates whether your app uses health and medical data for tracking. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/collected_data/name/collected: + +.. rst-class:: classref-property + +:ref:`bool` **privacy/collected_data/name/collected** :ref:`🔗` + +Indicates whether your app collects user's name. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/collected_data/name/collection_purposes: + +.. rst-class:: classref-property + +:ref:`int` **privacy/collected_data/name/collection_purposes** :ref:`🔗` + +The reasons your app collects user's name. See `Describing data use in privacy manifests `__. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/collected_data/name/linked_to_user: + +.. rst-class:: classref-property + +:ref:`bool` **privacy/collected_data/name/linked_to_user** :ref:`🔗` + +Indicates whether your app links user's name to the user's identity. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/collected_data/name/used_for_tracking: + +.. rst-class:: classref-property + +:ref:`bool` **privacy/collected_data/name/used_for_tracking** :ref:`🔗` + +Indicates whether your app uses user's name for tracking. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/collected_data/other_contact_info/collected: + +.. rst-class:: classref-property + +:ref:`bool` **privacy/collected_data/other_contact_info/collected** :ref:`🔗` + +Indicates whether your app collects any other contact information. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/collected_data/other_contact_info/collection_purposes: + +.. rst-class:: classref-property + +:ref:`int` **privacy/collected_data/other_contact_info/collection_purposes** :ref:`🔗` + +The reasons your app collects any other contact information. See `Describing data use in privacy manifests `__. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/collected_data/other_contact_info/linked_to_user: + +.. rst-class:: classref-property + +:ref:`bool` **privacy/collected_data/other_contact_info/linked_to_user** :ref:`🔗` + +Indicates whether your app links any other contact information to the user's identity. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/collected_data/other_contact_info/used_for_tracking: + +.. rst-class:: classref-property + +:ref:`bool` **privacy/collected_data/other_contact_info/used_for_tracking** :ref:`🔗` + +Indicates whether your app uses any other contact information for tracking. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/collected_data/other_data_types/collected: + +.. rst-class:: classref-property + +:ref:`bool` **privacy/collected_data/other_data_types/collected** :ref:`🔗` + +Indicates whether your app collects any other data. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/collected_data/other_data_types/collection_purposes: + +.. rst-class:: classref-property + +:ref:`int` **privacy/collected_data/other_data_types/collection_purposes** :ref:`🔗` + +The reasons your app collects any other data. See `Describing data use in privacy manifests `__. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/collected_data/other_data_types/linked_to_user: + +.. rst-class:: classref-property + +:ref:`bool` **privacy/collected_data/other_data_types/linked_to_user** :ref:`🔗` + +Indicates whether your app links any other data to the user's identity. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/collected_data/other_data_types/used_for_tracking: + +.. rst-class:: classref-property + +:ref:`bool` **privacy/collected_data/other_data_types/used_for_tracking** :ref:`🔗` + +Indicates whether your app uses any other data for tracking. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/collected_data/other_diagnostic_data/collected: + +.. rst-class:: classref-property + +:ref:`bool` **privacy/collected_data/other_diagnostic_data/collected** :ref:`🔗` + +Indicates whether your app collects any other diagnostic data. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/collected_data/other_diagnostic_data/collection_purposes: + +.. rst-class:: classref-property + +:ref:`int` **privacy/collected_data/other_diagnostic_data/collection_purposes** :ref:`🔗` + +The reasons your app collects any other diagnostic data. See `Describing data use in privacy manifests `__. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/collected_data/other_diagnostic_data/linked_to_user: + +.. rst-class:: classref-property + +:ref:`bool` **privacy/collected_data/other_diagnostic_data/linked_to_user** :ref:`🔗` + +Indicates whether your app links any other diagnostic data to the user's identity. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/collected_data/other_diagnostic_data/used_for_tracking: + +.. rst-class:: classref-property + +:ref:`bool` **privacy/collected_data/other_diagnostic_data/used_for_tracking** :ref:`🔗` + +Indicates whether your app uses any other diagnostic data for tracking. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/collected_data/other_financial_info/collected: + +.. rst-class:: classref-property + +:ref:`bool` **privacy/collected_data/other_financial_info/collected** :ref:`🔗` + +Indicates whether your app collects any other financial information. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/collected_data/other_financial_info/collection_purposes: + +.. rst-class:: classref-property + +:ref:`int` **privacy/collected_data/other_financial_info/collection_purposes** :ref:`🔗` + +The reasons your app collects any other financial information. See `Describing data use in privacy manifests `__. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/collected_data/other_financial_info/linked_to_user: + +.. rst-class:: classref-property + +:ref:`bool` **privacy/collected_data/other_financial_info/linked_to_user** :ref:`🔗` + +Indicates whether your app links any other financial information to the user's identity. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/collected_data/other_financial_info/used_for_tracking: + +.. rst-class:: classref-property + +:ref:`bool` **privacy/collected_data/other_financial_info/used_for_tracking** :ref:`🔗` + +Indicates whether your app uses any other financial information for tracking. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/collected_data/other_usage_data/collected: + +.. rst-class:: classref-property + +:ref:`bool` **privacy/collected_data/other_usage_data/collected** :ref:`🔗` + +Indicates whether your app collects any other usage data. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/collected_data/other_usage_data/collection_purposes: + +.. rst-class:: classref-property + +:ref:`int` **privacy/collected_data/other_usage_data/collection_purposes** :ref:`🔗` + +The reasons your app collects any other usage data. See `Describing data use in privacy manifests `__. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/collected_data/other_usage_data/linked_to_user: + +.. rst-class:: classref-property + +:ref:`bool` **privacy/collected_data/other_usage_data/linked_to_user** :ref:`🔗` + +Indicates whether your app links any other usage data to the user's identity. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/collected_data/other_usage_data/used_for_tracking: + +.. rst-class:: classref-property + +:ref:`bool` **privacy/collected_data/other_usage_data/used_for_tracking** :ref:`🔗` + +Indicates whether your app uses any other usage data for tracking. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/collected_data/other_user_content/collected: + +.. rst-class:: classref-property + +:ref:`bool` **privacy/collected_data/other_user_content/collected** :ref:`🔗` + +Indicates whether your app collects any other user generated content. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/collected_data/other_user_content/collection_purposes: + +.. rst-class:: classref-property + +:ref:`int` **privacy/collected_data/other_user_content/collection_purposes** :ref:`🔗` + +The reasons your app collects any other user generated content. See `Describing data use in privacy manifests `__. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/collected_data/other_user_content/linked_to_user: + +.. rst-class:: classref-property + +:ref:`bool` **privacy/collected_data/other_user_content/linked_to_user** :ref:`🔗` + +Indicates whether your app links any other user generated content to the user's identity. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/collected_data/other_user_content/used_for_tracking: + +.. rst-class:: classref-property + +:ref:`bool` **privacy/collected_data/other_user_content/used_for_tracking** :ref:`🔗` + +Indicates whether your app uses any other user generated content for tracking. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/collected_data/payment_info/collected: + +.. rst-class:: classref-property + +:ref:`bool` **privacy/collected_data/payment_info/collected** :ref:`🔗` + +Indicates whether your app collects payment information. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/collected_data/payment_info/collection_purposes: + +.. rst-class:: classref-property + +:ref:`int` **privacy/collected_data/payment_info/collection_purposes** :ref:`🔗` + +The reasons your app collects payment information. See `Describing data use in privacy manifests `__. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/collected_data/payment_info/linked_to_user: + +.. rst-class:: classref-property + +:ref:`bool` **privacy/collected_data/payment_info/linked_to_user** :ref:`🔗` + +Indicates whether your app links payment information to the user's identity. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/collected_data/payment_info/used_for_tracking: + +.. rst-class:: classref-property + +:ref:`bool` **privacy/collected_data/payment_info/used_for_tracking** :ref:`🔗` + +Indicates whether your app uses payment information for tracking. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/collected_data/performance_data/collected: + +.. rst-class:: classref-property + +:ref:`bool` **privacy/collected_data/performance_data/collected** :ref:`🔗` + +Indicates whether your app collects performance data. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/collected_data/performance_data/collection_purposes: + +.. rst-class:: classref-property + +:ref:`int` **privacy/collected_data/performance_data/collection_purposes** :ref:`🔗` + +The reasons your app collects performance data. See `Describing data use in privacy manifests `__. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/collected_data/performance_data/linked_to_user: + +.. rst-class:: classref-property + +:ref:`bool` **privacy/collected_data/performance_data/linked_to_user** :ref:`🔗` + +Indicates whether your app links performance data to the user's identity. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/collected_data/performance_data/used_for_tracking: + +.. rst-class:: classref-property + +:ref:`bool` **privacy/collected_data/performance_data/used_for_tracking** :ref:`🔗` + +Indicates whether your app uses performance data for tracking. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/collected_data/phone_number/collected: + +.. rst-class:: classref-property + +:ref:`bool` **privacy/collected_data/phone_number/collected** :ref:`🔗` + +Indicates whether your app collects phone number. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/collected_data/phone_number/collection_purposes: + +.. rst-class:: classref-property + +:ref:`int` **privacy/collected_data/phone_number/collection_purposes** :ref:`🔗` + +The reasons your app collects phone number. See `Describing data use in privacy manifests `__. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/collected_data/phone_number/linked_to_user: + +.. rst-class:: classref-property + +:ref:`bool` **privacy/collected_data/phone_number/linked_to_user** :ref:`🔗` + +Indicates whether your app links phone number to the user's identity. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/collected_data/phone_number/used_for_tracking: + +.. rst-class:: classref-property + +:ref:`bool` **privacy/collected_data/phone_number/used_for_tracking** :ref:`🔗` + +Indicates whether your app uses phone number for tracking. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/collected_data/photos_or_videos/collected: + +.. rst-class:: classref-property + +:ref:`bool` **privacy/collected_data/photos_or_videos/collected** :ref:`🔗` + +Indicates whether your app collects photos or videos. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/collected_data/photos_or_videos/collection_purposes: + +.. rst-class:: classref-property + +:ref:`int` **privacy/collected_data/photos_or_videos/collection_purposes** :ref:`🔗` + +The reasons your app collects photos or videos. See `Describing data use in privacy manifests `__. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/collected_data/photos_or_videos/linked_to_user: + +.. rst-class:: classref-property + +:ref:`bool` **privacy/collected_data/photos_or_videos/linked_to_user** :ref:`🔗` + +Indicates whether your app links photos or videos to the user's identity. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/collected_data/photos_or_videos/used_for_tracking: + +.. rst-class:: classref-property + +:ref:`bool` **privacy/collected_data/photos_or_videos/used_for_tracking** :ref:`🔗` + +Indicates whether your app uses photos or videos for tracking. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/collected_data/physical_address/collected: + +.. rst-class:: classref-property + +:ref:`bool` **privacy/collected_data/physical_address/collected** :ref:`🔗` + +Indicates whether your app collects physical address. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/collected_data/physical_address/collection_purposes: + +.. rst-class:: classref-property + +:ref:`int` **privacy/collected_data/physical_address/collection_purposes** :ref:`🔗` + +The reasons your app collects physical address. See `Describing data use in privacy manifests `__. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/collected_data/physical_address/linked_to_user: + +.. rst-class:: classref-property + +:ref:`bool` **privacy/collected_data/physical_address/linked_to_user** :ref:`🔗` + +Indicates whether your app links physical address to the user's identity. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/collected_data/physical_address/used_for_tracking: + +.. rst-class:: classref-property + +:ref:`bool` **privacy/collected_data/physical_address/used_for_tracking** :ref:`🔗` + +Indicates whether your app uses physical address for tracking. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/collected_data/precise_location/collected: + +.. rst-class:: classref-property + +:ref:`bool` **privacy/collected_data/precise_location/collected** :ref:`🔗` + +Indicates whether your app collects precise location data. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/collected_data/precise_location/collection_purposes: + +.. rst-class:: classref-property + +:ref:`int` **privacy/collected_data/precise_location/collection_purposes** :ref:`🔗` + +The reasons your app collects precise location data. See `Describing data use in privacy manifests `__. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/collected_data/precise_location/linked_to_user: + +.. rst-class:: classref-property + +:ref:`bool` **privacy/collected_data/precise_location/linked_to_user** :ref:`🔗` + +Indicates whether your app links precise location data to the user's identity. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/collected_data/precise_location/used_for_tracking: + +.. rst-class:: classref-property + +:ref:`bool` **privacy/collected_data/precise_location/used_for_tracking** :ref:`🔗` + +Indicates whether your app uses precise location data for tracking. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/collected_data/product_interaction/collected: + +.. rst-class:: classref-property + +:ref:`bool` **privacy/collected_data/product_interaction/collected** :ref:`🔗` + +Indicates whether your app collects product interaction data. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/collected_data/product_interaction/collection_purposes: + +.. rst-class:: classref-property + +:ref:`int` **privacy/collected_data/product_interaction/collection_purposes** :ref:`🔗` + +The reasons your app collects product interaction data. See `Describing data use in privacy manifests `__. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/collected_data/product_interaction/linked_to_user: + +.. rst-class:: classref-property + +:ref:`bool` **privacy/collected_data/product_interaction/linked_to_user** :ref:`🔗` + +Indicates whether your app links product interaction data to the user's identity. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/collected_data/product_interaction/used_for_tracking: + +.. rst-class:: classref-property + +:ref:`bool` **privacy/collected_data/product_interaction/used_for_tracking** :ref:`🔗` + +Indicates whether your app uses product interaction data for tracking. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/collected_data/purchase_history/collected: + +.. rst-class:: classref-property + +:ref:`bool` **privacy/collected_data/purchase_history/collected** :ref:`🔗` + +Indicates whether your app collects purchase history. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/collected_data/purchase_history/collection_purposes: + +.. rst-class:: classref-property + +:ref:`int` **privacy/collected_data/purchase_history/collection_purposes** :ref:`🔗` + +The reasons your app collects purchase history. See `Describing data use in privacy manifests `__. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/collected_data/purchase_history/linked_to_user: + +.. rst-class:: classref-property + +:ref:`bool` **privacy/collected_data/purchase_history/linked_to_user** :ref:`🔗` + +Indicates whether your app links purchase history to the user's identity. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/collected_data/purchase_history/used_for_tracking: + +.. rst-class:: classref-property + +:ref:`bool` **privacy/collected_data/purchase_history/used_for_tracking** :ref:`🔗` + +Indicates whether your app uses purchase history for tracking. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/collected_data/search_hhistory/collected: + +.. rst-class:: classref-property + +:ref:`bool` **privacy/collected_data/search_hhistory/collected** :ref:`🔗` + +Indicates whether your app collects search history. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/collected_data/search_hhistory/collection_purposes: + +.. rst-class:: classref-property + +:ref:`int` **privacy/collected_data/search_hhistory/collection_purposes** :ref:`🔗` + +The reasons your app collects search history. See `Describing data use in privacy manifests `__. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/collected_data/search_hhistory/linked_to_user: + +.. rst-class:: classref-property + +:ref:`bool` **privacy/collected_data/search_hhistory/linked_to_user** :ref:`🔗` + +Indicates whether your app links search history to the user's identity. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/collected_data/search_hhistory/used_for_tracking: + +.. rst-class:: classref-property + +:ref:`bool` **privacy/collected_data/search_hhistory/used_for_tracking** :ref:`🔗` + +Indicates whether your app uses search history for tracking. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/collected_data/sensitive_info/collected: + +.. rst-class:: classref-property + +:ref:`bool` **privacy/collected_data/sensitive_info/collected** :ref:`🔗` + +Indicates whether your app collects sensitive user information. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/collected_data/sensitive_info/collection_purposes: + +.. rst-class:: classref-property + +:ref:`int` **privacy/collected_data/sensitive_info/collection_purposes** :ref:`🔗` + +The reasons your app collects sensitive user information. See `Describing data use in privacy manifests `__. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/collected_data/sensitive_info/linked_to_user: + +.. rst-class:: classref-property + +:ref:`bool` **privacy/collected_data/sensitive_info/linked_to_user** :ref:`🔗` + +Indicates whether your app links sensitive user information to the user's identity. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/collected_data/sensitive_info/used_for_tracking: + +.. rst-class:: classref-property + +:ref:`bool` **privacy/collected_data/sensitive_info/used_for_tracking** :ref:`🔗` + +Indicates whether your app uses sensitive user information for tracking. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/collected_data/user_id/collected: + +.. rst-class:: classref-property + +:ref:`bool` **privacy/collected_data/user_id/collected** :ref:`🔗` + +Indicates whether your app collects user IDs. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/collected_data/user_id/collection_purposes: + +.. rst-class:: classref-property + +:ref:`int` **privacy/collected_data/user_id/collection_purposes** :ref:`🔗` + +The reasons your app collects user IDs. See `Describing data use in privacy manifests `__. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/collected_data/user_id/linked_to_user: + +.. rst-class:: classref-property + +:ref:`bool` **privacy/collected_data/user_id/linked_to_user** :ref:`🔗` + +Indicates whether your app links user IDs to the user's identity. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/collected_data/user_id/used_for_tracking: + +.. rst-class:: classref-property + +:ref:`bool` **privacy/collected_data/user_id/used_for_tracking** :ref:`🔗` + +Indicates whether your app uses user IDs for tracking. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/disk_space_access_reasons: + +.. rst-class:: classref-property + +:ref:`int` **privacy/disk_space_access_reasons** :ref:`🔗` + +The reasons your app use free disk space API. See `Describing use of required reason API `__. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/file_timestamp_access_reasons: + +.. rst-class:: classref-property + +:ref:`int` **privacy/file_timestamp_access_reasons** :ref:`🔗` + +The reasons your app use file timestamp/metadata API. See `Describing use of required reason API `__. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/microphone_usage_description: + +.. rst-class:: classref-property + +:ref:`String` **privacy/microphone_usage_description** :ref:`🔗` + +A message displayed when requesting access to the device's microphone (in English). + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/microphone_usage_description_localized: + +.. rst-class:: classref-property + +:ref:`Dictionary` **privacy/microphone_usage_description_localized** :ref:`🔗` + +A message displayed when requesting access to the device's microphone (localized). + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/photolibrary_usage_description: + +.. rst-class:: classref-property + +:ref:`String` **privacy/photolibrary_usage_description** :ref:`🔗` + +A message displayed when requesting access to the user's photo library (in English). + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/photolibrary_usage_description_localized: + +.. rst-class:: classref-property + +:ref:`Dictionary` **privacy/photolibrary_usage_description_localized** :ref:`🔗` + +A message displayed when requesting access to the user's photo library (localized). + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/system_boot_time_access_reasons: + +.. rst-class:: classref-property + +:ref:`int` **privacy/system_boot_time_access_reasons** :ref:`🔗` + +The reasons your app use system boot time / absolute time API. See `Describing use of required reason API `__. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/tracking_domains: + +.. rst-class:: classref-property + +:ref:`PackedStringArray` **privacy/tracking_domains** :ref:`🔗` + +The list of internet domains your app connects to that engage in tracking. See `Privacy manifest files `__. + +**Note:** The returned array is *copied* and any changes to it will not update the original property value. See :ref:`PackedStringArray` for more details. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/tracking_enabled: + +.. rst-class:: classref-property + +:ref:`bool` **privacy/tracking_enabled** :ref:`🔗` + +Indicates whether your app uses data for tracking. See `Privacy manifest files `__. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_privacy/user_defaults_access_reasons: + +.. rst-class:: classref-property + +:ref:`int` **privacy/user_defaults_access_reasons** :ref:`🔗` + +The reasons your app use user defaults API. See `Describing use of required reason API `__. + +.. rst-class:: classref-item-separator + +---- + +.. _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 + +:ref:`bool` **user_data/accessible_from_files_app** :ref:`🔗` + +If ``true``, the app "Documents" folder can be accessed via "Files" app. See `LSSupportsOpeningDocumentsInPlace `__. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformVisionOS_property_user_data/accessible_from_itunes_sharing: + +.. rst-class:: classref-property + +:ref:`bool` **user_data/accessible_from_itunes_sharing** :ref:`🔗` + +If ``true``, the app "Documents" folder can be accessed via iTunes file sharing. See `UIFileSharingEnabled `__. + +.. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` +.. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` +.. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` +.. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` +.. |static| replace:: :abbr:`static (This method doesn't need an instance to be called, so it can be called directly using the class name.)` +.. |operator| replace:: :abbr:`operator (This method describes a valid operator to use with this type as left-hand operand.)` +.. |bitfield| replace:: :abbr:`BitField (This value is an integer composed as a bitmask of the following flags.)` +.. |void| replace:: :abbr:`void (No return value.)` diff --git a/classes/class_editorexportplatformweb.rst b/classes/class_editorexportplatformweb.rst index 753d1290c..c71fc9bcc 100644 --- a/classes/class_editorexportplatformweb.rst +++ b/classes/class_editorexportplatformweb.rst @@ -75,6 +75,10 @@ Properties +-----------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`progressive_web_app/orientation` | +-----------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`threads/emscripten_pool_size` | + +-----------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`threads/godot_pool_size` | + +-----------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`variant/extensions_support` | +-----------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`variant/thread_support` | @@ -331,6 +335,34 @@ The orientation to use when the web application is run through a mobile device. ---- +.. _class_EditorExportPlatformWeb_property_threads/emscripten_pool_size: + +.. rst-class:: classref-property + +:ref:`int` **threads/emscripten_pool_size** :ref:`🔗` + +The number of threads that emscripten will allocate at startup. A smaller value will allocate fewer threads and consume fewer system resources, but you may run the risk of running out of threads in the pool and needing to allocate more threads at run time which may cause a deadlock. + +\ **Note:** Some browsers have a hard cap on the number of threads that can be allocated, so it is best to be cautious and keep this number low. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlatformWeb_property_threads/godot_pool_size: + +.. rst-class:: classref-property + +:ref:`int` **threads/godot_pool_size** :ref:`🔗` + +Override for the default size of the :ref:`WorkerThreadPool`. This setting is used when :ref:`ProjectSettings.threading/worker_pool/max_threads` size is set to -1 (which it is by default). This size must be smaller than :ref:`threads/emscripten_pool_size` otherwise deadlocks may occur. + +When using threads this size needs to be large enough to accommodate features that rely on having a dedicated thread like :ref:`ProjectSettings.physics/2d/run_on_separate_thread` or :ref:`ProjectSettings.rendering/driver/threads/thread_model`. In general, it is best to ensure that this is at least 4 and is at least 2 or 3 less than :ref:`threads/emscripten_pool_size`. + +.. rst-class:: classref-item-separator + +---- + .. _class_EditorExportPlatformWeb_property_variant/extensions_support: .. rst-class:: classref-property @@ -378,6 +410,7 @@ If ``true``, allows textures to be optimized for desktop through the S3TC/BPTC a If ``true`` allows textures to be optimized for mobile through the ETC2/ASTC algorithm. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_editorexportplatformwindows.rst b/classes/class_editorexportplatformwindows.rst index a6265d712..2e88873fc 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 @@ -592,6 +606,7 @@ If ``true``, project textures are exported in the ETC2/ASTC format. If ``true``, project textures are exported in the S3TC/BPTC format. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_editorexportplugin.rst b/classes/class_editorexportplugin.rst index e4804ea04..d865a8278 100644 --- a/classes/class_editorexportplugin.rst +++ b/classes/class_editorexportplugin.rst @@ -43,9 +43,9 @@ Methods +------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`_begin_customize_scenes`\ (\ platform\: :ref:`EditorExportPlatform`, features\: :ref:`PackedStringArray`\ ) |virtual| |const| | +------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Resource` | :ref:`_customize_resource`\ (\ resource\: :ref:`Resource`, path\: :ref:`String`\ ) |virtual| | + | :ref:`Resource` | :ref:`_customize_resource`\ (\ resource\: :ref:`Resource`, path\: :ref:`String`\ ) |virtual| |required| | +------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Node` | :ref:`_customize_scene`\ (\ scene\: :ref:`Node`, path\: :ref:`String`\ ) |virtual| | + | :ref:`Node` | :ref:`_customize_scene`\ (\ scene\: :ref:`Node`, path\: :ref:`String`\ ) |virtual| |required| | +------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`_end_customize_resources`\ (\ ) |virtual| | +------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ @@ -69,7 +69,7 @@ Methods +------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`String` | :ref:`_get_android_manifest_element_contents`\ (\ platform\: :ref:`EditorExportPlatform`, debug\: :ref:`bool`\ ) |virtual| |const| | +------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`_get_customization_configuration_hash`\ (\ ) |virtual| |const| | + | :ref:`int` | :ref:`_get_customization_configuration_hash`\ (\ ) |virtual| |required| |const| | +------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`PackedStringArray` | :ref:`_get_export_features`\ (\ platform\: :ref:`EditorExportPlatform`, debug\: :ref:`bool`\ ) |virtual| |const| | +------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ @@ -81,12 +81,28 @@ Methods +------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`Dictionary` | :ref:`_get_export_options_overrides`\ (\ platform\: :ref:`EditorExportPlatform`\ ) |virtual| |const| | +------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`String` | :ref:`_get_name`\ (\ ) |virtual| |const| | + | :ref:`String` | :ref:`_get_name`\ (\ ) |virtual| |required| |const| | +------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`_should_update_export_options`\ (\ platform\: :ref:`EditorExportPlatform`\ ) |virtual| |const| | +------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`_supports_platform`\ (\ platform\: :ref:`EditorExportPlatform`\ ) |virtual| |const| | +------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`PackedByteArray` | :ref:`_update_android_prebuilt_manifest`\ (\ platform\: :ref:`EditorExportPlatform`, manifest_data\: :ref:`PackedByteArray`\ ) |virtual| |const| | + +------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`add_apple_embedded_platform_bundle_file`\ (\ path\: :ref:`String`\ ) | + +------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`add_apple_embedded_platform_cpp_code`\ (\ code\: :ref:`String`\ ) | + +------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`add_apple_embedded_platform_embedded_framework`\ (\ path\: :ref:`String`\ ) | + +------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`add_apple_embedded_platform_framework`\ (\ path\: :ref:`String`\ ) | + +------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`add_apple_embedded_platform_linker_flags`\ (\ flags\: :ref:`String`\ ) | + +------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`add_apple_embedded_platform_plist_content`\ (\ plist_content\: :ref:`String`\ ) | + +------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`add_apple_embedded_platform_project_static_lib`\ (\ path\: :ref:`String`\ ) | + +------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`add_file`\ (\ path\: :ref:`String`, file\: :ref:`PackedByteArray`, remap\: :ref:`bool`\ ) | +------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`add_ios_bundle_file`\ (\ path\: :ref:`String`\ ) | @@ -159,7 +175,7 @@ When enabled, :ref:`_get_customization_configuration_hash()` **_customize_resource**\ (\ resource\: :ref:`Resource`, path\: :ref:`String`\ ) |virtual| :ref:`🔗` +:ref:`Resource` **_customize_resource**\ (\ resource\: :ref:`Resource`, path\: :ref:`String`\ ) |virtual| |required| :ref:`🔗` Customize a resource. If changes are made to it, return the same or a new resource. Otherwise, return ``null``. When a new resource is returned, ``resource`` will be replaced by a copy of the new resource. @@ -189,7 +205,7 @@ Implementing this method is required if :ref:`_begin_customize_resources()` **_customize_scene**\ (\ scene\: :ref:`Node`, path\: :ref:`String`\ ) |virtual| :ref:`🔗` +:ref:`Node` **_customize_scene**\ (\ scene\: :ref:`Node`, path\: :ref:`String`\ ) |virtual| |required| :ref:`🔗` Customize a scene. If changes are made to it, return the same or a new scene. Otherwise, return ``null``. If a new scene is returned, it is up to you to dispose of the old one. @@ -357,7 +373,7 @@ Virtual method to be overridden by the user. This is used at export time to upda .. rst-class:: classref-method -:ref:`int` **_get_customization_configuration_hash**\ (\ ) |virtual| |const| :ref:`🔗` +:ref:`int` **_get_customization_configuration_hash**\ (\ ) |virtual| |required| |const| :ref:`🔗` Return a hash based on the configuration passed (for both scenes and resources). This helps keep separate caches for separate export configurations. @@ -385,8 +401,6 @@ Return a :ref:`PackedStringArray` of additional feature :ref:`bool` **_get_export_option_visibility**\ (\ platform\: :ref:`EditorExportPlatform`, option\: :ref:`String`\ ) |virtual| |const| :ref:`🔗` -**Optional.**\ - Validates ``option`` and returns the visibility for the specified ``platform``. The default implementation returns ``true`` for all options. .. rst-class:: classref-item-separator @@ -440,13 +454,13 @@ Return a :ref:`Dictionary` of override values for export optio class MyExportPlugin extends EditorExportPlugin: func _get_name() -> String: return "MyExportPlugin" - + func _supports_platform(platform) -> bool: if platform is EditorExportPlatformPC: # Run on all desktop platforms including Windows, MacOS and Linux. return true return false - + func _get_export_options_overrides(platform) -> Dictionary: # Override "Embed PCK" to always be enabled. return { @@ -461,7 +475,7 @@ Return a :ref:`Dictionary` of override values for export optio .. rst-class:: classref-method -:ref:`String` **_get_name**\ (\ ) |virtual| |const| :ref:`🔗` +:ref:`String` **_get_name**\ (\ ) |virtual| |required| |const| :ref:`🔗` Return the name identifier of this plugin (for future identification by the exporter). The plugins are sorted by name before exporting. @@ -477,7 +491,7 @@ Implementing this method is required. :ref:`bool` **_should_update_export_options**\ (\ platform\: :ref:`EditorExportPlatform`\ ) |virtual| |const| :ref:`🔗` -Return ``true``, if the result of :ref:`_get_export_options()` has changed and the export options of preset corresponding to ``platform`` should be updated. +Return ``true`` if the result of :ref:`_get_export_options()` has changed and the export options of the preset corresponding to ``platform`` should be updated. .. rst-class:: classref-item-separator @@ -495,6 +509,110 @@ Return ``true`` if the plugin supports the given ``platform``. ---- +.. _class_EditorExportPlugin_private_method__update_android_prebuilt_manifest: + +.. rst-class:: classref-method + +:ref:`PackedByteArray` **_update_android_prebuilt_manifest**\ (\ platform\: :ref:`EditorExportPlatform`, manifest_data\: :ref:`PackedByteArray`\ ) |virtual| |const| :ref:`🔗` + +Provide access to the Android prebuilt manifest and allows the plugin to modify it if needed. + +Implementers of this virtual method should take the binary manifest data from ``manifest_data``, copy it, modify it, and then return it with the modifications. + +If no modifications are needed, then an empty :ref:`PackedByteArray` should be returned. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlugin_method_add_apple_embedded_platform_bundle_file: + +.. rst-class:: classref-method + +|void| **add_apple_embedded_platform_bundle_file**\ (\ path\: :ref:`String`\ ) :ref:`🔗` + +Adds an Apple embedded platform bundle file from the given ``path`` to the exported project. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlugin_method_add_apple_embedded_platform_cpp_code: + +.. rst-class:: classref-method + +|void| **add_apple_embedded_platform_cpp_code**\ (\ code\: :ref:`String`\ ) :ref:`🔗` + +Adds C++ code to the Apple embedded platform export. The final code is created from the code appended by each active export plugin. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlugin_method_add_apple_embedded_platform_embedded_framework: + +.. rst-class:: classref-method + +|void| **add_apple_embedded_platform_embedded_framework**\ (\ path\: :ref:`String`\ ) :ref:`🔗` + +Adds a dynamic library (\*.dylib, \*.framework) to the Linking Phase in the Apple embedded platform's Xcode project and embeds it into the resulting binary. + +\ **Note:** For static libraries (\*.a), this works in the same way as :ref:`add_apple_embedded_platform_framework()`. + +\ **Note:** This method should not be used for System libraries as they are already present on the device. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlugin_method_add_apple_embedded_platform_framework: + +.. rst-class:: classref-method + +|void| **add_apple_embedded_platform_framework**\ (\ path\: :ref:`String`\ ) :ref:`🔗` + +Adds a static library (\*.a) or a dynamic library (\*.dylib, \*.framework) to the Linking Phase to the Apple embedded platform's Xcode project. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlugin_method_add_apple_embedded_platform_linker_flags: + +.. rst-class:: classref-method + +|void| **add_apple_embedded_platform_linker_flags**\ (\ flags\: :ref:`String`\ ) :ref:`🔗` + +Adds linker flags for the Apple embedded platform export. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlugin_method_add_apple_embedded_platform_plist_content: + +.. rst-class:: classref-method + +|void| **add_apple_embedded_platform_plist_content**\ (\ plist_content\: :ref:`String`\ ) :ref:`🔗` + +Adds additional fields to the Apple embedded platform's project Info.plist file. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPlugin_method_add_apple_embedded_platform_project_static_lib: + +.. rst-class:: classref-method + +|void| **add_apple_embedded_platform_project_static_lib**\ (\ path\: :ref:`String`\ ) :ref:`🔗` + +Adds a static library from the given ``path`` to the Apple embedded platform project. + +.. rst-class:: classref-item-separator + +---- + .. _class_EditorExportPlugin_method_add_file: .. rst-class:: classref-method @@ -517,6 +635,8 @@ When called inside :ref:`_export_file()`\ ) :ref:`🔗` +**Deprecated:** Use :ref:`add_apple_embedded_platform_bundle_file()` instead. + Adds an iOS bundle file from the given ``path`` to the exported project. .. rst-class:: classref-item-separator @@ -529,7 +649,9 @@ Adds an iOS bundle file from the given ``path`` to the exported project. |void| **add_ios_cpp_code**\ (\ code\: :ref:`String`\ ) :ref:`🔗` -Adds a C++ code to the iOS export. The final code is created from the code appended by each active export plugin. +**Deprecated:** Use :ref:`add_apple_embedded_platform_cpp_code()` instead. + +Adds C++ code to the iOS export. The final code is created from the code appended by each active export plugin. .. rst-class:: classref-item-separator @@ -541,9 +663,11 @@ Adds a C++ code to the iOS export. The final code is created from the code appen |void| **add_ios_embedded_framework**\ (\ path\: :ref:`String`\ ) :ref:`🔗` +**Deprecated:** Use :ref:`add_apple_embedded_platform_embedded_framework()` instead. + Adds a dynamic library (\*.dylib, \*.framework) to Linking Phase in iOS's Xcode project and embeds it into resulting binary. -\ **Note:** For static libraries (\*.a) works in same way as :ref:`add_ios_framework()`. +\ **Note:** For static libraries (\*.a), this works the in same way as :ref:`add_apple_embedded_platform_framework()`. \ **Note:** This method should not be used for System libraries as they are already present on the device. @@ -557,7 +681,9 @@ Adds a dynamic library (\*.dylib, \*.framework) to Linking Phase in iOS's Xcode |void| **add_ios_framework**\ (\ path\: :ref:`String`\ ) :ref:`🔗` -Adds a static library (\*.a) or dynamic library (\*.dylib, \*.framework) to Linking Phase in iOS's Xcode project. +**Deprecated:** Use :ref:`add_apple_embedded_platform_framework()` instead. + +Adds a static library (\*.a) or a dynamic library (\*.dylib, \*.framework) to the Linking Phase to the iOS Xcode project. .. rst-class:: classref-item-separator @@ -569,6 +695,8 @@ Adds a static library (\*.a) or dynamic library (\*.dylib, \*.framework) to Link |void| **add_ios_linker_flags**\ (\ flags\: :ref:`String`\ ) :ref:`🔗` +**Deprecated:** Use :ref:`add_apple_embedded_platform_linker_flags()` instead. + Adds linker flags for the iOS export. .. rst-class:: classref-item-separator @@ -581,7 +709,9 @@ Adds linker flags for the iOS export. |void| **add_ios_plist_content**\ (\ plist_content\: :ref:`String`\ ) :ref:`🔗` -Adds content for iOS Property List files. +**Deprecated:** Use :ref:`add_apple_embedded_platform_plist_content()` instead. + +Adds additional fields to the iOS project Info.plist file. .. rst-class:: classref-item-separator @@ -593,7 +723,9 @@ Adds content for iOS Property List files. |void| **add_ios_project_static_lib**\ (\ path\: :ref:`String`\ ) :ref:`🔗` -Adds a static lib from the given ``path`` to the iOS project. +**Deprecated:** Use :ref:`add_apple_embedded_platform_project_static_lib()` instead. + +Adds a static library from the given ``path`` to the iOS project. .. rst-class:: classref-item-separator @@ -674,6 +806,7 @@ Returns the current value of an export option supplied by :ref:`_get_export_opti To be called inside :ref:`_export_file()`. Skips the current file, so it's not included in the export. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_editorexportpreset.rst b/classes/class_editorexportpreset.rst index 548d74389..2de3a8be9 100644 --- a/classes/class_editorexportpreset.rst +++ b/classes/class_editorexportpreset.rst @@ -19,7 +19,7 @@ Export preset configuration. Description ----------- -Export preset configuration. Instances of **EditorExportPreset** by editor UI and intended to be used a read-only configuration passed to the :ref:`EditorExportPlatform` methods when exporting the project. +Represents the configuration of an export preset, as created by the editor's export dialog. An **EditorExportPreset** instance is intended to be used a read-only configuration passed to the :ref:`EditorExportPlatform` methods when exporting the project. .. rst-class:: classref-reftable-group @@ -66,6 +66,8 @@ Methods +---------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`String` | :ref:`get_preset_name`\ (\ ) |const| | +---------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Variant` | :ref:`get_project_setting`\ (\ name\: :ref:`StringName`\ ) | + +---------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`get_script_export_mode`\ (\ ) |const| | +---------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`String` | :ref:`get_version`\ (\ name\: :ref:`StringName`, windows_version\: :ref:`bool`\ ) |const| | @@ -102,7 +104,7 @@ enum **ExportFilter**: :ref:`🔗` .. container:: contribute - There is currently no description for this enum. Please help us by :ref:`contributing one `! + There is currently no description for this enum. Please help us by `contributing one `__! @@ -114,7 +116,7 @@ enum **ExportFilter**: :ref:`🔗` .. container:: contribute - There is currently no description for this enum. Please help us by :ref:`contributing one `! + There is currently no description for this enum. Please help us by `contributing one `__! @@ -126,7 +128,7 @@ enum **ExportFilter**: :ref:`🔗` .. container:: contribute - There is currently no description for this enum. Please help us by :ref:`contributing one `! + There is currently no description for this enum. Please help us by `contributing one `__! @@ -138,7 +140,7 @@ enum **ExportFilter**: :ref:`🔗` .. container:: contribute - There is currently no description for this enum. Please help us by :ref:`contributing one `! + There is currently no description for this enum. Please help us by `contributing one `__! @@ -150,7 +152,7 @@ enum **ExportFilter**: :ref:`🔗` .. container:: contribute - There is currently no description for this enum. Please help us by :ref:`contributing one `! + There is currently no description for this enum. Please help us by `contributing one `__! @@ -172,7 +174,7 @@ enum **FileExportMode**: :ref:`🔗` .. container:: contribute - There is currently no description for this enum. Please help us by :ref:`contributing one `! + There is currently no description for this enum. Please help us by `contributing one `__! @@ -184,7 +186,7 @@ enum **FileExportMode**: :ref:`🔗` .. container:: contribute - There is currently no description for this enum. Please help us by :ref:`contributing one `! + There is currently no description for this enum. Please help us by `contributing one `__! @@ -196,7 +198,7 @@ enum **FileExportMode**: :ref:`🔗` .. container:: contribute - There is currently no description for this enum. Please help us by :ref:`contributing one `! + There is currently no description for this enum. Please help us by `contributing one `__! @@ -208,7 +210,7 @@ enum **FileExportMode**: :ref:`🔗` .. container:: contribute - There is currently no description for this enum. Please help us by :ref:`contributing one `! + There is currently no description for this enum. Please help us by `contributing one `__! @@ -230,7 +232,7 @@ enum **ScriptExportMode**: :ref:`🔗` .. container:: contribute - There is currently no description for this enum. Please help us by :ref:`contributing one `! + There is currently no description for this enum. Please help us by `contributing one `__! @@ -242,7 +244,7 @@ enum **ScriptExportMode**: :ref:`🔗` .. container:: contribute - There is currently no description for this enum. Please help us by :ref:`contributing one `! + There is currently no description for this enum. Please help us by `contributing one `__! @@ -254,7 +256,7 @@ enum **ScriptExportMode**: :ref:`🔗` .. container:: contribute - There is currently no description for this enum. Please help us by :ref:`contributing one `! + There is currently no description for this enum. Please help us by `contributing one `__! @@ -273,7 +275,7 @@ Method Descriptions :ref:`bool` **are_advanced_options_enabled**\ (\ ) |const| :ref:`🔗` -Returns ``true``, is "Advanced" toggle is enabled in the export dialog. +Returns ``true`` if the "Advanced" toggle is enabled in the export dialog. .. rst-class:: classref-item-separator @@ -285,7 +287,7 @@ Returns ``true``, is "Advanced" toggle is enabled in the export dialog. :ref:`String` **get_custom_features**\ (\ ) |const| :ref:`🔗` -Returns string with a comma separated list of custom features. +Returns a comma-separated list of custom features added to this preset, as a string. See :doc:`Feature tags <../tutorials/export/feature_tags>` in the documentation for more information. .. rst-class:: classref-item-separator @@ -297,7 +299,7 @@ Returns string with a comma separated list of custom features. :ref:`Dictionary` **get_customized_files**\ (\ ) |const| :ref:`🔗` -Returns :ref:`Dictionary` of files selected in the "Resources" tab of the export dialog. Dictionary keys are file names and values are export mode - ``"strip``, ``"keep"``, or ``"remove"``. See also :ref:`get_file_export_mode()`. +Returns a dictionary of files selected in the "Resources" tab of the export dialog. The dictionary's keys are file paths, and its values are the corresponding export modes: ``"strip"``, ``"keep"``, or ``"remove"``. See also :ref:`get_file_export_mode()`. .. rst-class:: classref-item-separator @@ -309,7 +311,7 @@ Returns :ref:`Dictionary` of files selected in the "Resources" :ref:`int` **get_customized_files_count**\ (\ ) |const| :ref:`🔗` -Returns number of files selected in the "Resources" tab of the export dialog. +Returns the number of files selected in the "Resources" tab of the export dialog. .. rst-class:: classref-item-separator @@ -321,7 +323,7 @@ Returns number of files selected in the "Resources" tab of the export dialog. :ref:`bool` **get_encrypt_directory**\ (\ ) |const| :ref:`🔗` -Returns ``true``, PCK directory encryption is enabled in the export dialog. +Returns ``true`` if PCK directory encryption is enabled in the export dialog. .. rst-class:: classref-item-separator @@ -333,7 +335,7 @@ Returns ``true``, PCK directory encryption is enabled in the export dialog. :ref:`bool` **get_encrypt_pck**\ (\ ) |const| :ref:`🔗` -Returns ``true``, PCK encryption is enabled in the export dialog. +Returns ``true`` if PCK encryption is enabled in the export dialog. .. rst-class:: classref-item-separator @@ -477,7 +479,19 @@ Returns the list of packs on which to base a patch export on. :ref:`String` **get_preset_name**\ (\ ) |const| :ref:`🔗` -Returns export preset name. +Returns this export preset's name. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorExportPreset_method_get_project_setting: + +.. rst-class:: classref-method + +:ref:`Variant` **get_project_setting**\ (\ name\: :ref:`StringName`\ ) :ref:`🔗` + +Returns the value of the setting identified by ``name`` using export preset feature tag overrides instead of current OS features. .. rst-class:: classref-item-separator @@ -489,7 +503,7 @@ Returns export preset name. :ref:`int` **get_script_export_mode**\ (\ ) |const| :ref:`🔗` -Returns script export mode. +Returns the export mode used by GDScript files. ``0`` for "Text", ``1`` for "Binary tokens", and ``2`` for "Compressed binary tokens (smaller files)". .. rst-class:: classref-item-separator @@ -515,7 +529,7 @@ If ``windows_version`` is ``true``, formats the returned version number to be co :ref:`bool` **has**\ (\ property\: :ref:`StringName`\ ) |const| :ref:`🔗` -Returns ``true`` if preset has specified property. +Returns ``true`` if the preset has the property named ``property``. .. rst-class:: classref-item-separator @@ -527,7 +541,7 @@ Returns ``true`` if preset has specified property. :ref:`bool` **has_export_file**\ (\ path\: :ref:`String`\ ) :ref:`🔗` -Returns ``true`` if specified file is exported. +Returns ``true`` if the file at the specified ``path`` will be exported. .. rst-class:: classref-item-separator @@ -539,7 +553,7 @@ Returns ``true`` if specified file is exported. :ref:`bool` **is_dedicated_server**\ (\ ) |const| :ref:`🔗` -Returns ``true`` if dedicated server export mode is selected in the export dialog. +Returns ``true`` if the dedicated server export mode is selected in the export dialog. .. rst-class:: classref-item-separator @@ -551,9 +565,10 @@ Returns ``true`` if dedicated server export mode is selected in the export dialo :ref:`bool` **is_runnable**\ (\ ) |const| :ref:`🔗` -Returns ``true`` if "Runnable" toggle is enabled in the export dialog. +Returns ``true`` if the "Runnable" toggle is enabled in the export dialog. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_editorfeatureprofile.rst b/classes/class_editorfeatureprofile.rst index e22cf0311..5aa2921d7 100644 --- a/classes/class_editorfeatureprofile.rst +++ b/classes/class_editorfeatureprofile.rst @@ -292,6 +292,7 @@ If ``disable`` is ``true``, disables editing for ``property`` in the class speci If ``disable`` is ``true``, disables the editor feature specified in ``feature``. When a feature is disabled, it will disappear from the editor entirely. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_editorfiledialog.rst b/classes/class_editorfiledialog.rst index 4d363af0e..66da5c10f 100644 --- a/classes/class_editorfiledialog.rst +++ b/classes/class_editorfiledialog.rst @@ -393,7 +393,7 @@ The view format in which the **EditorFileDialog** displays resources to the user - |void| **set_file_mode**\ (\ value\: :ref:`FileMode`\ ) - :ref:`FileMode` **get_file_mode**\ (\ ) -The dialog's open or save mode, which affects the selection behavior. See :ref:`FileMode`. +The dialog's open or save mode, which affects the selection behavior. .. rst-class:: classref-item-separator @@ -463,7 +463,7 @@ Method Descriptions |void| **add_filter**\ (\ filter\: :ref:`String`, description\: :ref:`String` = ""\ ) :ref:`🔗` -Adds a comma-delimited file name ``filter`` option to the **EditorFileDialog** with an optional ``description``, which restricts what files can be picked. +Adds a comma-separated file name ``filter`` option to the **EditorFileDialog** with an optional ``description``, which restricts what files can be picked. A ``filter`` should be of the form ``"filename.extension"``, where filename and extension can be ``*`` to match any string. Filters starting with ``.`` (i.e. empty filenames) are not allowed. @@ -680,6 +680,7 @@ Sets the name of the :ref:`OptionButton` or :ref:`CheckBox` with index ``option``. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_editorfilesystem.rst b/classes/class_editorfilesystem.rst index 8f9d312ee..63eff4f6c 100644 --- a/classes/class_editorfilesystem.rst +++ b/classes/class_editorfilesystem.rst @@ -248,6 +248,7 @@ Add a file in an existing directory, or schedule file information to be updated This will not import the file. To reimport, call :ref:`reimport_files()` or :ref:`scan()` methods. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_editorfilesystemdirectory.rst b/classes/class_editorfilesystemdirectory.rst index 421b8d2ee..2b9acb92a 100644 --- a/classes/class_editorfilesystemdirectory.rst +++ b/classes/class_editorfilesystemdirectory.rst @@ -233,6 +233,7 @@ Returns the subdirectory at index ``idx``. Returns the number of subdirectories in this directory. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_editorfilesystemimportformatsupportquery.rst b/classes/class_editorfilesystemimportformatsupportquery.rst index 527bf1db2..98bbf9302 100644 --- a/classes/class_editorfilesystemimportformatsupportquery.rst +++ b/classes/class_editorfilesystemimportformatsupportquery.rst @@ -29,13 +29,13 @@ Methods .. table:: :widths: auto - +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`PackedStringArray` | :ref:`_get_file_extensions`\ (\ ) |virtual| |const| | - +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`_is_active`\ (\ ) |virtual| |const| | - +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`_query`\ (\ ) |virtual| |const| | - +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------+ + +---------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`PackedStringArray` | :ref:`_get_file_extensions`\ (\ ) |virtual| |required| |const| | + +---------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`_is_active`\ (\ ) |virtual| |required| |const| | + +---------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`_query`\ (\ ) |virtual| |required| |const| | + +---------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------+ .. rst-class:: classref-section-separator @@ -50,7 +50,7 @@ Method Descriptions .. rst-class:: classref-method -:ref:`PackedStringArray` **_get_file_extensions**\ (\ ) |virtual| |const| :ref:`🔗` +:ref:`PackedStringArray` **_get_file_extensions**\ (\ ) |virtual| |required| |const| :ref:`🔗` Return the file extensions supported. @@ -62,7 +62,7 @@ Return the file extensions supported. .. rst-class:: classref-method -:ref:`bool` **_is_active**\ (\ ) |virtual| |const| :ref:`🔗` +:ref:`bool` **_is_active**\ (\ ) |virtual| |required| |const| :ref:`🔗` Return whether this importer is active. @@ -74,11 +74,12 @@ Return whether this importer is active. .. rst-class:: classref-method -:ref:`bool` **_query**\ (\ ) |virtual| |const| :ref:`🔗` +:ref:`bool` **_query**\ (\ ) |virtual| |required| |const| :ref:`🔗` Query support. Return ``false`` if import must not continue. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_editorimportplugin.rst b/classes/class_editorimportplugin.rst index 831a80e41..49cbd5d01 100644 --- a/classes/class_editorimportplugin.rst +++ b/classes/class_editorimportplugin.rst @@ -32,82 +32,82 @@ Below is an example EditorImportPlugin that imports a :ref:`Mesh` fr @tool extends EditorImportPlugin - + func _get_importer_name(): return "my.special.plugin" - + func _get_visible_name(): return "Special Mesh" - + func _get_recognized_extensions(): return ["special", "spec"] - + func _get_save_extension(): return "mesh" - + func _get_resource_type(): return "Mesh" - + func _get_preset_count(): return 1 - + func _get_preset_name(preset_index): return "Default" - + func _get_import_options(path, preset_index): return [{"name": "my_option", "default_value": false}] - + func _import(source_file, save_path, options, platform_variants, gen_files): var file = FileAccess.open(source_file, FileAccess.READ) if file == null: return FAILED var mesh = ArrayMesh.new() # Fill the Mesh with data read in "file", left as an exercise to the reader. - + var filename = save_path + "." + _get_save_extension() return ResourceSaver.save(mesh, filename) .. code-tab:: csharp using Godot; - + public partial class MySpecialPlugin : EditorImportPlugin { public override string _GetImporterName() { return "my.special.plugin"; } - + public override string _GetVisibleName() { return "Special Mesh"; } - + public override string[] _GetRecognizedExtensions() { return ["special", "spec"]; } - + public override string _GetSaveExtension() { return "mesh"; } - + public override string _GetResourceType() { return "Mesh"; } - + public override int _GetPresetCount() { return 1; } - + public override string _GetPresetName(int presetIndex) { return "Default"; } - + public override Godot.Collections.Array _GetImportOptions(string path, int presetIndex) { return @@ -119,7 +119,7 @@ Below is an example EditorImportPlugin that imports a :ref:`Mesh` fr }, ]; } - + public override Error _Import(string sourceFile, string savePath, Godot.Collections.Dictionary options, Godot.Collections.Array platformVariants, Godot.Collections.Array genFiles) { using var file = FileAccess.Open(sourceFile, FileAccess.ModeFlags.Read); @@ -127,7 +127,7 @@ Below is an example EditorImportPlugin that imports a :ref:`Mesh` fr { return Error.Failed; } - + var mesh = new ArrayMesh(); // Fill the Mesh with data read in "file", left as an exercise to the reader. string filename = $"{savePath}.{_GetSaveExtension()}"; @@ -265,37 +265,35 @@ Gets the unique name of the importer. :ref:`bool` **_get_option_visibility**\ (\ path\: :ref:`String`, option_name\: :ref:`StringName`, options\: :ref:`Dictionary`\ ) |virtual| |const| :ref:`🔗` -This method can be overridden to hide specific import options if conditions are met. This is mainly useful for hiding options that depend on others if one of them is disabled. +Gets whether the import option specified by ``option_name`` should be visible in the Import dock. The default implementation always returns ``true``, making all options visible. This is mainly useful for hiding options that depend on others if one of them is disabled. .. tabs:: .. code-tab:: gdscript - func _get_option_visibility(option, options): + func _get_option_visibility(path, option_name, options): # Only show the lossy quality setting if the compression mode is set to "Lossy". - if option == "compress/lossy_quality" and options.has("compress/mode"): + if option_name == "compress/lossy_quality" and options.has("compress/mode"): return int(options["compress/mode"]) == COMPRESS_LOSSY # This is a constant that you set - + return true .. code-tab:: csharp - public void _GetOptionVisibility(string option, Godot.Collections.Dictionary options) + public override bool _GetOptionVisibility(string path, StringName optionName, Godot.Collections.Dictionary options) { // Only show the lossy quality setting if the compression mode is set to "Lossy". - if (option == "compress/lossy_quality" && options.ContainsKey("compress/mode")) + if (optionName == "compress/lossy_quality" && options.ContainsKey("compress/mode")) { return (int)options["compress/mode"] == CompressLossy; // This is a constant you set } - + return true; } -Returns ``true`` to make all options always visible. - .. rst-class:: classref-item-separator ---- @@ -390,7 +388,11 @@ Gets the name to display in the import window. You should choose this name as a :ref:`Error` **_import**\ (\ source_file\: :ref:`String`, save_path\: :ref:`String`, options\: :ref:`Dictionary`, platform_variants\: :ref:`Array`\[:ref:`String`\], gen_files\: :ref:`Array`\[:ref:`String`\]\ ) |virtual| |const| :ref:`🔗` -Imports ``source_file`` into ``save_path`` with the import ``options`` specified. The ``platform_variants`` and ``gen_files`` arrays will be modified by this function. +Imports ``source_file`` with the import ``options`` specified. Should return :ref:`@GlobalScope.OK` if the import is successful, other values indicate failure. + +The imported resource is expected to be saved to ``save_path + "." + _get_save_extension()``. If a different variant is preferred for a :doc:`feature tag <../tutorials/export/feature_tags>`, save the variant to ``save_path + "." + tag + "." + _get_save_extension()`` and add the feature tag to ``platform_variants``. + +If additional resource files are generated in the resource filesystem (``res://``), add their full path to ``gen_files`` so that the editor knows they depend on ``source_file``. This method must be overridden to do the actual importing work. See this class' description for an example of overriding this method. @@ -407,6 +409,7 @@ This method must be overridden to do the actual importing work. See this class' This function can only be called during the :ref:`_import()` callback and it allows manually importing resources from it. This is useful when the imported file generates external resources that require importing (as example, images). Custom parameters for the ".import" file can be passed via the ``custom_options``. Additionally, in cases where multiple importers can handle a file, the ``custom_importer`` can be specified to force a specific one. This function performs a resource import and returns immediately with a success or error code. ``generator_parameters`` defines optional extra metadata which will be stored as ``generator_parameters`` in the ``remap`` section of the ``.import`` file, for example to store a md5 hash of the source data. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_editorinspector.rst b/classes/class_editorinspector.rst index 1f58b3d36..27ff7a11d 100644 --- a/classes/class_editorinspector.rst +++ b/classes/class_editorinspector.rst @@ -44,6 +44,8 @@ Properties +----------------------------------------------------+------------------------+-------------------------------------------------------------------------------------------------+ | :ref:`FocusMode` | focus_mode | ``2`` (overrides :ref:`Control`) | +----------------------------------------------------+------------------------+-------------------------------------------------------------------------------------------------+ + | :ref:`bool` | follow_focus | ``true`` (overrides :ref:`ScrollContainer`) | + +----------------------------------------------------+------------------------+-------------------------------------------------------------------------------------------------+ | :ref:`ScrollMode` | horizontal_scroll_mode | ``0`` (overrides :ref:`ScrollContainer`) | +----------------------------------------------------+------------------------+-------------------------------------------------------------------------------------------------+ @@ -236,6 +238,7 @@ Gets the path of the currently selected property. Creates a property editor that can be used by plugin UI to edit the specified property of an ``object``. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_editorinspectorplugin.rst b/classes/class_editorinspectorplugin.rst index 647a9e34f..c735b90b0 100644 --- a/classes/class_editorinspectorplugin.rst +++ b/classes/class_editorinspectorplugin.rst @@ -186,6 +186,7 @@ There can be multiple property editors for a property. If ``add_to_end`` is ``tr Adds an editor that allows modifying multiple properties. The ``editor`` control must extend :ref:`EditorProperty`. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_editorinterface.rst b/classes/class_editorinterface.rst index 1d1ecf41b..6ab1f050b 100644 --- a/classes/class_editorinterface.rst +++ b/classes/class_editorinterface.rst @@ -59,6 +59,8 @@ Methods .. table:: :widths: auto + +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Error` | :ref:`close_scene`\ (\ ) | +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`edit_node`\ (\ node\: :ref:`Node`\ ) | +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ @@ -100,6 +102,8 @@ Methods +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`EditorInspector` | :ref:`get_inspector`\ (\ ) |const| | +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Array`\[:ref:`Node`\] | :ref:`get_open_scene_roots`\ (\ ) |const| | + +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`PackedStringArray` | :ref:`get_open_scenes`\ (\ ) |const| | +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`String` | :ref:`get_playing_scene`\ (\ ) |const| | @@ -221,6 +225,18 @@ If ``true``, the Movie Maker mode is enabled in the editor. See :ref:`MovieWrite Method Descriptions ------------------- +.. _class_EditorInterface_method_close_scene: + +.. rst-class:: classref-method + +:ref:`Error` **close_scene**\ (\ ) :ref:`🔗` + +Closes the currently active scene, discarding any pending changes in the process. Returns :ref:`@GlobalScope.OK` on success or :ref:`@GlobalScope.ERR_DOES_NOT_EXIST` if there is no scene to close. + +.. rst-class:: classref-item-separator + +---- + .. _class_EditorInterface_method_edit_node: .. rst-class:: classref-method @@ -373,7 +389,7 @@ Returns the :ref:`EditorPaths` singleton. Returns the actual scale of the editor UI (``1.0`` being 100% scale). This can be used to adjust position and dimensions of the UI added by plugins. -\ **Note:** This value is set via the ``interface/editor/display_scale`` and ``interface/editor/custom_display_scale`` editor settings. Editor must be restarted for changes to be properly applied. +\ **Note:** This value is set via the :ref:`EditorSettings.interface/editor/display_scale` and :ref:`EditorSettings.interface/editor/custom_display_scale` settings. The editor must be restarted for changes to be properly applied. .. rst-class:: classref-item-separator @@ -481,13 +497,25 @@ Returns the editor's :ref:`EditorInspector` instance. ---- +.. _class_EditorInterface_method_get_open_scene_roots: + +.. rst-class:: classref-method + +:ref:`Array`\[:ref:`Node`\] **get_open_scene_roots**\ (\ ) |const| :ref:`🔗` + +Returns an array with references to the root nodes of the currently opened scenes. + +.. rst-class:: classref-item-separator + +---- + .. _class_EditorInterface_method_get_open_scenes: .. rst-class:: classref-method :ref:`PackedStringArray` **get_open_scenes**\ (\ ) |const| :ref:`🔗` -Returns an :ref:`Array` with the file paths of the currently opened scenes. +Returns an array with the file paths of the currently opened scenes. .. rst-class:: classref-item-separator @@ -802,7 +830,7 @@ Pops up an editor dialog for selecting a :ref:`Node` from the edited func _ready(): if Engine.is_editor_hint(): EditorInterface.popup_node_selector(_on_node_selected, ["Button"]) - + func _on_node_selected(node_path): if node_path.is_empty(): print("node selection canceled") @@ -826,7 +854,7 @@ Pops up an editor dialog for selecting properties from ``object``. The ``callbac func _ready(): if Engine.is_editor_hint(): EditorInterface.popup_property_selector(this, _on_property_selected, [TYPE_INT]) - + func _on_property_selected(property_path): if property_path.is_empty(): print("property selection canceled") @@ -943,7 +971,7 @@ A feature profile can be created programmatically using the :ref:`EditorFeatureP |void| **set_main_screen_editor**\ (\ name\: :ref:`String`\ ) :ref:`🔗` -Sets the editor's current main screen to the one specified in ``name``. ``name`` must match the title of the tab in question exactly (e.g. ``2D``, ``3D``, ``Script``, or ``AssetLib`` for default tabs). +Sets the editor's current main screen to the one specified in ``name``. ``name`` must match the title of the tab in question exactly (e.g. ``2D``, ``3D``, ``Script``, ``Game``, or ``AssetLib`` for default tabs). .. rst-class:: classref-item-separator @@ -970,6 +998,7 @@ Sets the enabled status of a plugin. The plugin name is the same as its director Stops the scene that is currently playing. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_editornode3dgizmo.rst b/classes/class_editornode3dgizmo.rst index 2397547c4..889738961 100644 --- a/classes/class_editornode3dgizmo.rst +++ b/classes/class_editornode3dgizmo.rst @@ -19,7 +19,7 @@ Gizmo for editing :ref:`Node3D` objects. Description ----------- -Gizmo that is used for providing custom visualization and editing (handles and subgizmos) for :ref:`Node3D` objects. Can be overridden to create custom gizmos, but for simple gizmos creating a :ref:`EditorNode3DGizmoPlugin` is usually recommended. +Gizmo that is used for providing custom visualization and editing (handles and subgizmos) for :ref:`Node3D` objects. Can be overridden to create custom gizmos, but for simple gizmos creating an :ref:`EditorNode3DGizmoPlugin` is usually recommended. .. rst-class:: classref-reftable-group @@ -98,7 +98,7 @@ Method Descriptions .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -407,6 +407,7 @@ Sets the gizmo's hidden state. If ``true``, the gizmo will be hidden. If ``false Sets the reference :ref:`Node3D` node for the gizmo. ``node`` must inherit from :ref:`Node3D`. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_editornode3dgizmoplugin.rst b/classes/class_editornode3dgizmoplugin.rst index 94e37b964..3ec09a30e 100644 --- a/classes/class_editornode3dgizmoplugin.rst +++ b/classes/class_editornode3dgizmoplugin.rst @@ -103,7 +103,7 @@ Method Descriptions .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -390,6 +390,7 @@ Creates an unshaded material with its variants (selected and/or editable) and ad Gets material from the internal list of materials. If an :ref:`EditorNode3DGizmo` is provided, it will try to get the corresponding variant (selected and/or editable). .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_editorpaths.rst b/classes/class_editorpaths.rst index c97b03dab..9731f3a58 100644 --- a/classes/class_editorpaths.rst +++ b/classes/class_editorpaths.rst @@ -164,6 +164,7 @@ Self-contained mode can be enabled by creating a file named ``._sc_`` or ``_sc_` \ **Note:** The Steam release of Godot uses self-contained mode by default. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_editorplugin.rst b/classes/class_editorplugin.rst index a8b84f379..80f72c544 100644 --- a/classes/class_editorplugin.rst +++ b/classes/class_editorplugin.rst @@ -203,7 +203,7 @@ Signals **main_screen_changed**\ (\ screen_name\: :ref:`String`\ ) :ref:`🔗` -Emitted when user changes the workspace (**2D**, **3D**, **Script**, **AssetLib**). Also works with custom screens defined by plugins. +Emitted when user changes the workspace (**2D**, **3D**, **Script**, **Game**, **AssetLib**). Also works with custom screens defined by plugins. .. rst-class:: classref-item-separator @@ -587,7 +587,7 @@ Called by the engine when the user enables the **EditorPlugin** in the Plugin ta |void| **_forward_3d_draw_over_viewport**\ (\ viewport_control\: :ref:`Control`\ ) |virtual| :ref:`🔗` -Called by the engine when the 3D editor's viewport is updated. Use the ``overlay`` :ref:`Control` for drawing. You can update the viewport manually by calling :ref:`update_overlays()`. +Called by the engine when the 3D editor's viewport is updated. ``viewport_control`` is an overlay on top of the viewport and it can be used for drawing. You can update the viewport manually by calling :ref:`update_overlays()`. .. tabs:: @@ -595,12 +595,12 @@ Called by the engine when the 3D editor's viewport is updated. Use the ``overlay .. code-tab:: gdscript func _forward_3d_draw_over_viewport(overlay): - # Draw a circle at cursor position. + # Draw a circle at the cursor's position. overlay.draw_circle(overlay.get_local_mouse_position(), 64, Color.WHITE) - + func _forward_3d_gui_input(camera, event): if event is InputEventMouseMotion: - # Redraw viewport when cursor is moved. + # Redraw the viewport when the cursor is moved. update_overlays() return EditorPlugin.AFTER_GUI_INPUT_STOP return EditorPlugin.AFTER_GUI_INPUT_PASS @@ -609,15 +609,15 @@ Called by the engine when the 3D editor's viewport is updated. Use the ``overlay public override void _Forward3DDrawOverViewport(Control viewportControl) { - // Draw a circle at cursor position. + // Draw a circle at the cursor's position. viewportControl.DrawCircle(viewportControl.GetLocalMousePosition(), 64, Colors.White); } - + public override EditorPlugin.AfterGuiInput _Forward3DGuiInput(Camera3D viewportCamera, InputEvent @event) { if (@event is InputEventMouseMotion) { - // Redraw viewport when cursor is moved. + // Redraw the viewport when the cursor is moved. UpdateOverlays(); return EditorPlugin.AfterGuiInput.Stop; } @@ -702,7 +702,7 @@ This method must return :ref:`AFTER_GUI_INPUT_PASS`\ ) |virtual| :ref:`🔗` -Called by the engine when the 2D editor's viewport is updated. Use the ``overlay`` :ref:`Control` for drawing. You can update the viewport manually by calling :ref:`update_overlays()`. +Called by the engine when the 2D editor's viewport is updated. ``viewport_control`` is an overlay on top of the viewport and it can be used for drawing. You can update the viewport manually by calling :ref:`update_overlays()`. .. tabs:: @@ -710,12 +710,12 @@ Called by the engine when the 2D editor's viewport is updated. Use the ``overlay .. code-tab:: gdscript func _forward_canvas_draw_over_viewport(overlay): - # Draw a circle at cursor position. + # Draw a circle at the cursor's position. overlay.draw_circle(overlay.get_local_mouse_position(), 64, Color.WHITE) - + func _forward_canvas_gui_input(event): if event is InputEventMouseMotion: - # Redraw viewport when cursor is moved. + # Redraw the viewport when the cursor is moved. update_overlays() return true return false @@ -724,15 +724,15 @@ Called by the engine when the 2D editor's viewport is updated. Use the ``overlay public override void _ForwardCanvasDrawOverViewport(Control viewportControl) { - // Draw a circle at cursor position. + // Draw a circle at the cursor's position. viewportControl.DrawCircle(viewportControl.GetLocalMousePosition(), 64, Colors.White); } - + public override bool _ForwardCanvasGuiInput(InputEvent @event) { if (@event is InputEventMouseMotion) { - // Redraw viewport when cursor is moved. + // Redraw the viewport when the cursor is moved. UpdateOverlays(); return true; } @@ -837,7 +837,7 @@ This is for editors that edit script-based objects. You can return a list of bre Override this method in your plugin to return a :ref:`Texture2D` in order to give it an icon. -For main screen plugins, this appears at the top of the screen, to the right of the "2D", "3D", "Script", and "AssetLib" buttons. +For main screen plugins, this appears at the top of the screen, to the right of the "2D", "3D", "Script", "Game", and "AssetLib" buttons. Ideally, the plugin icon should be white with a transparent background and 16×16 pixels in size. @@ -876,7 +876,7 @@ Ideally, the plugin icon should be white with a transparent background and 16×1 Override this method in your plugin to provide the name of the plugin when displayed in the Godot editor. -For main screen plugins, this appears at the top of the screen, to the right of the "2D", "3D", "Script", and "AssetLib" buttons. +For main screen plugins, this appears at the top of the screen, to the right of the "2D", "3D", "Script", "Game", and "AssetLib" buttons. .. rst-class:: classref-item-separator @@ -899,7 +899,7 @@ Use :ref:`_set_state()` to restore :: func _get_state(): - var state = {"zoom": zoom, "preferred_color": my_color} + var state = { "zoom": zoom, "preferred_color": my_color } return state .. rst-class:: classref-item-separator @@ -923,12 +923,12 @@ If the user confirms saving, :ref:`_save_external_data()` **_has_main_screen**\ (\ ) |virtual| |const| :ref:`🔗` -Returns ``true`` if this is a main screen editor plugin (it goes in the workspace selector together with **2D**, **3D**, **Script** and **AssetLib**). +Returns ``true`` if this is a main screen editor plugin (it goes in the workspace selector together with **2D**, **3D**, **Script**, **Game**, and **AssetLib**). When the plugin's workspace is selected, other main screen plugins will be hidden, but your plugin will not appear automatically. It needs to be added as a child of :ref:`EditorInterface.get_editor_main_screen()` and made visible inside :ref:`_make_visible()`. @@ -993,21 +993,21 @@ Use :ref:`_get_plugin_name() :: var plugin_control - + func _enter_tree(): plugin_control = preload("my_plugin_control.tscn").instantiate() EditorInterface.get_editor_main_screen().add_child(plugin_control) plugin_control.hide() - + func _has_main_screen(): return true - + func _make_visible(visible): plugin_control.visible = visible - + func _get_plugin_name(): return "My Super Cool Plugin 3000" - + func _get_plugin_icon(): return EditorInterface.get_editor_theme().get_icon("Node", "EditorIcons") @@ -1099,7 +1099,7 @@ Adds a script at ``path`` to the Autoload list as ``name``. Adds a plugin to the context menu. ``slot`` is the context menu where the plugin will be added. -See :ref:`ContextMenuSlot` for available context menus. A plugin instance can belong only to a single context menu slot. +\ **Note:** A plugin instance can belong only to a single context menu slot. .. rst-class:: classref-item-separator @@ -1125,7 +1125,7 @@ Optionally, you can specify a shortcut parameter. When pressed, this shortcut wi |void| **add_control_to_container**\ (\ container\: :ref:`CustomControlContainer`, control\: :ref:`Control`\ ) :ref:`🔗` -Adds a custom control to a container (see :ref:`CustomControlContainer`). There are many locations where custom controls can be added in the editor UI. +Adds a custom control to a container in the editor UI. Please remember that you have to manage the visibility of your custom controls yourself (and likely hide it after adding it). @@ -1141,13 +1141,13 @@ When your plugin is deactivated, make sure to remove your custom control with :r |void| **add_control_to_dock**\ (\ slot\: :ref:`DockSlot`, control\: :ref:`Control`, shortcut\: :ref:`Shortcut` = null\ ) :ref:`🔗` -Adds the control to a specific dock slot (see :ref:`DockSlot` for options). +Adds the control to a specific dock slot. If the dock is repositioned and as long as the plugin is active, the editor will save the dock position on further sessions. When your plugin is deactivated, make sure to remove your custom control with :ref:`remove_control_from_docks()` and free it with :ref:`Node.queue_free()`. -Optionally, you can specify a shortcut parameter. When pressed, this shortcut will toggle the dock's visibility once it's moved to the bottom panel (this shortcut does not affect the dock otherwise). See the default editor bottom panel shortcuts in the Editor Settings for inspiration. Per convention, they all use :kbd:`Alt` modifier. +Optionally, you can specify a shortcut parameter. When pressed, this shortcut will open and focus the dock. .. rst-class:: classref-item-separator @@ -1248,10 +1248,10 @@ Registers a new :ref:`EditorInspectorPlugin`. Inspe const MyInspectorPlugin = preload("res://addons/your_addon/path/to/your/script.gd") var inspector_plugin = MyInspectorPlugin.new() - + func _enter_tree(): add_inspector_plugin(inspector_plugin) - + func _exit_tree(): remove_inspector_plugin(inspector_plugin) @@ -1309,7 +1309,7 @@ If ``first_priority`` is ``true``, the new import plugin is inserted first in th |void| **add_scene_post_import_plugin**\ (\ scene_import_plugin\: :ref:`EditorScenePostImportPlugin`, first_priority\: :ref:`bool` = false\ ) :ref:`🔗` -Add a :ref:`EditorScenePostImportPlugin`. These plugins allow customizing the import process of 3D assets by adding new options to the import dialogs. +Add an :ref:`EditorScenePostImportPlugin`. These plugins allow customizing the import process of 3D assets by adding new options to the import dialogs. If ``first_priority`` is ``true``, the new import plugin is inserted first in the list and takes precedence over pre-existing plugins. @@ -1730,6 +1730,7 @@ Use this method if you always want to receive inputs from 3D view screen inside Updates the overlays of the 2D and 3D editor viewport. Causes methods :ref:`_forward_canvas_draw_over_viewport()`, :ref:`_forward_canvas_force_draw_over_viewport()`, :ref:`_forward_3d_draw_over_viewport()` and :ref:`_forward_3d_force_draw_over_viewport()` to be called. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_editorproperty.rst b/classes/class_editorproperty.rst index 6b2d7f1a0..3b09224c0 100644 --- a/classes/class_editorproperty.rst +++ b/classes/class_editorproperty.rst @@ -29,31 +29,33 @@ Properties .. table:: :widths: auto - +-----------------------------+-------------------------------------------------------------------------+-----------+ - | :ref:`bool` | :ref:`checkable` | ``false`` | - +-----------------------------+-------------------------------------------------------------------------+-----------+ - | :ref:`bool` | :ref:`checked` | ``false`` | - +-----------------------------+-------------------------------------------------------------------------+-----------+ - | :ref:`bool` | :ref:`deletable` | ``false`` | - +-----------------------------+-------------------------------------------------------------------------+-----------+ - | :ref:`bool` | :ref:`draw_background` | ``true`` | - +-----------------------------+-------------------------------------------------------------------------+-----------+ - | :ref:`bool` | :ref:`draw_label` | ``true`` | - +-----------------------------+-------------------------------------------------------------------------+-----------+ - | :ref:`bool` | :ref:`draw_warning` | ``false`` | - +-----------------------------+-------------------------------------------------------------------------+-----------+ - | :ref:`bool` | :ref:`keying` | ``false`` | - +-----------------------------+-------------------------------------------------------------------------+-----------+ - | :ref:`String` | :ref:`label` | ``""`` | - +-----------------------------+-------------------------------------------------------------------------+-----------+ - | :ref:`float` | :ref:`name_split_ratio` | ``0.5`` | - +-----------------------------+-------------------------------------------------------------------------+-----------+ - | :ref:`bool` | :ref:`read_only` | ``false`` | - +-----------------------------+-------------------------------------------------------------------------+-----------+ - | :ref:`bool` | :ref:`selectable` | ``true`` | - +-----------------------------+-------------------------------------------------------------------------+-----------+ - | :ref:`bool` | :ref:`use_folding` | ``false`` | - +-----------------------------+-------------------------------------------------------------------------+-----------+ + +------------------------------------------+-------------------------------------------------------------------------+---------------------------------------------------------------------+ + | :ref:`bool` | :ref:`checkable` | ``false`` | + +------------------------------------------+-------------------------------------------------------------------------+---------------------------------------------------------------------+ + | :ref:`bool` | :ref:`checked` | ``false`` | + +------------------------------------------+-------------------------------------------------------------------------+---------------------------------------------------------------------+ + | :ref:`bool` | :ref:`deletable` | ``false`` | + +------------------------------------------+-------------------------------------------------------------------------+---------------------------------------------------------------------+ + | :ref:`bool` | :ref:`draw_background` | ``true`` | + +------------------------------------------+-------------------------------------------------------------------------+---------------------------------------------------------------------+ + | :ref:`bool` | :ref:`draw_label` | ``true`` | + +------------------------------------------+-------------------------------------------------------------------------+---------------------------------------------------------------------+ + | :ref:`bool` | :ref:`draw_warning` | ``false`` | + +------------------------------------------+-------------------------------------------------------------------------+---------------------------------------------------------------------+ + | :ref:`FocusMode` | focus_mode | ``3`` (overrides :ref:`Control`) | + +------------------------------------------+-------------------------------------------------------------------------+---------------------------------------------------------------------+ + | :ref:`bool` | :ref:`keying` | ``false`` | + +------------------------------------------+-------------------------------------------------------------------------+---------------------------------------------------------------------+ + | :ref:`String` | :ref:`label` | ``""`` | + +------------------------------------------+-------------------------------------------------------------------------+---------------------------------------------------------------------+ + | :ref:`float` | :ref:`name_split_ratio` | ``0.5`` | + +------------------------------------------+-------------------------------------------------------------------------+---------------------------------------------------------------------+ + | :ref:`bool` | :ref:`read_only` | ``false`` | + +------------------------------------------+-------------------------------------------------------------------------+---------------------------------------------------------------------+ + | :ref:`bool` | :ref:`selectable` | ``true`` | + +------------------------------------------+-------------------------------------------------------------------------+---------------------------------------------------------------------+ + | :ref:`bool` | :ref:`use_folding` | ``false`` | + +------------------------------------------+-------------------------------------------------------------------------+---------------------------------------------------------------------+ .. rst-class:: classref-reftable-group @@ -208,6 +210,18 @@ Emit it if you want to key a property with a single value. ---- +.. _class_EditorProperty_signal_property_overridden: + +.. rst-class:: classref-signal + +**property_overridden**\ (\ ) :ref:`🔗` + +Emitted when a setting override for the current project is requested. + +.. rst-class:: classref-item-separator + +---- + .. _class_EditorProperty_signal_property_pinned: .. rst-class:: classref-signal @@ -313,7 +327,7 @@ Used by the inspector, set to ``true`` when the property can be deleted by the u - |void| **set_draw_background**\ (\ value\: :ref:`bool`\ ) - :ref:`bool` **is_draw_background**\ (\ ) -Used by the inspector, set to ``true`` when the property label is drawn. +Used by the inspector, set to ``true`` when the property background is drawn. .. rst-class:: classref-item-separator @@ -330,7 +344,7 @@ Used by the inspector, set to ``true`` when the property label is drawn. - |void| **set_draw_label**\ (\ value\: :ref:`bool`\ ) - :ref:`bool` **is_draw_label**\ (\ ) -Used by the inspector, set to ``true`` when the property background is drawn. +Used by the inspector, set to ``true`` when the property label is drawn. .. rst-class:: classref-item-separator @@ -526,7 +540,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 @@ -538,7 +554,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 @@ -610,9 +628,10 @@ 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.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_editorresourceconversionplugin.rst b/classes/class_editorresourceconversionplugin.rst index 9c773e475..f321f7685 100644 --- a/classes/class_editorresourceconversionplugin.rst +++ b/classes/class_editorresourceconversionplugin.rst @@ -29,13 +29,13 @@ Below shows an example of a basic plugin that will convert an :ref:`ImageTexture .. code-tab:: gdscript extends EditorResourceConversionPlugin - + func _handles(resource: Resource): return resource is ImageTexture - + func _converts_to(): return "PortableCompressedTexture2D" - + func _convert(itex: Resource): var ptex = PortableCompressedTexture2D.new() ptex.create_from_image(itex.get_image(), PortableCompressedTexture2D.COMPRESSION_MODE_LOSSLESS) @@ -103,6 +103,7 @@ Returns the class name of the target type of :ref:`Resource` tha Called to determine whether a particular :ref:`Resource` can be converted to the target resource type by this plugin. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_editorresourcepicker.rst b/classes/class_editorresourcepicker.rst index 8508d7baf..f028093c9 100644 --- a/classes/class_editorresourcepicker.rst +++ b/classes/class_editorresourcepicker.rst @@ -219,6 +219,7 @@ Returns a list of all allowed types and subtypes corresponding to the :ref:`base Sets the toggle mode state for the main button. Works only if :ref:`toggle_mode` is set to ``true``. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_editorresourcepreview.rst b/classes/class_editorresourcepreview.rst index 4be34b02e..f7e79fab3 100644 --- a/classes/class_editorresourcepreview.rst +++ b/classes/class_editorresourcepreview.rst @@ -130,6 +130,7 @@ Queue a resource file located at ``path`` for preview. Once the preview is ready Removes a custom preview generator. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_editorresourcepreviewgenerator.rst b/classes/class_editorresourcepreviewgenerator.rst index caf1ed890..a7a2a1787 100644 --- a/classes/class_editorresourcepreviewgenerator.rst +++ b/classes/class_editorresourcepreviewgenerator.rst @@ -123,6 +123,7 @@ By default, it returns ``false``. Returns ``true`` if your generator supports the resource of type ``type``. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_editorresourcetooltipplugin.rst b/classes/class_editorresourcetooltipplugin.rst index b0c9b46c5..7ab213971 100644 --- a/classes/class_editorresourcetooltipplugin.rst +++ b/classes/class_editorresourcetooltipplugin.rst @@ -97,6 +97,7 @@ The ``metadata`` dictionary is provided by preview generator (see :ref:`EditorRe Requests a thumbnail for the given :ref:`TextureRect`. The thumbnail is created asynchronously by :ref:`EditorResourcePreview` and automatically set when available. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_editorsceneformatimporter.rst b/classes/class_editorsceneformatimporter.rst index 89eca697e..ce7cbb9cf 100644 --- a/classes/class_editorsceneformatimporter.rst +++ b/classes/class_editorsceneformatimporter.rst @@ -64,7 +64,7 @@ Constants .. container:: contribute - There is currently no description for this constant. Please help us by :ref:`contributing one `! + There is currently no description for this constant. Please help us by `contributing one `__! @@ -76,7 +76,7 @@ Constants .. container:: contribute - There is currently no description for this constant. Please help us by :ref:`contributing one `! + There is currently no description for this constant. Please help us by `contributing one `__! @@ -88,7 +88,7 @@ Constants .. container:: contribute - There is currently no description for this constant. Please help us by :ref:`contributing one `! + There is currently no description for this constant. Please help us by `contributing one `__! @@ -100,7 +100,7 @@ Constants .. container:: contribute - There is currently no description for this constant. Please help us by :ref:`contributing one `! + There is currently no description for this constant. Please help us by `contributing one `__! @@ -112,7 +112,7 @@ Constants .. container:: contribute - There is currently no description for this constant. Please help us by :ref:`contributing one `! + There is currently no description for this constant. Please help us by `contributing one `__! @@ -124,7 +124,7 @@ Constants .. container:: contribute - There is currently no description for this constant. Please help us by :ref:`contributing one `! + There is currently no description for this constant. Please help us by `contributing one `__! @@ -136,7 +136,7 @@ Constants .. container:: contribute - There is currently no description for this constant. Please help us by :ref:`contributing one `! + There is currently no description for this constant. Please help us by `contributing one `__! @@ -222,6 +222,7 @@ Add a specific import option (name and default value only). This function can on Add a specific import option. This function can only be called from :ref:`_get_import_options()`. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_editorsceneformatimporterblend.rst b/classes/class_editorsceneformatimporterblend.rst index 8ca766ca3..d5175efae 100644 --- a/classes/class_editorsceneformatimporterblend.rst +++ b/classes/class_editorsceneformatimporterblend.rst @@ -21,7 +21,7 @@ Description Imports Blender scenes in the ``.blend`` file format through the glTF 2.0 3D import pipeline. This importer requires Blender to be installed by the user, so that it can be used to export the scene as glTF 2.0. -The location of the Blender binary is set via the ``filesystem/import/blender/blender_path`` editor setting. +The location of the Blender binary is set via the :ref:`EditorSettings.filesystem/import/blender/blender_path` setting. This importer is only used if :ref:`ProjectSettings.filesystem/import/blender/enabled` is enabled, otherwise ``.blend`` files present in the project folder are not imported. @@ -30,6 +30,7 @@ Blend import requires Blender 3.0. Internally, the EditorSceneFormatImporterBlend uses the Blender glTF "Use Original" mode to reference external textures. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_editorsceneformatimporterfbx2gltf.rst b/classes/class_editorsceneformatimporterfbx2gltf.rst index d01f97b12..3bb426965 100644 --- a/classes/class_editorsceneformatimporterfbx2gltf.rst +++ b/classes/class_editorsceneformatimporterfbx2gltf.rst @@ -26,6 +26,7 @@ The location of the FBX2glTF binary is set via the :ref:`EditorSettings.filesyst This importer is only used if :ref:`ProjectSettings.filesystem/import/fbx2gltf/enabled` is set to ``true``. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_editorsceneformatimportergltf.rst b/classes/class_editorsceneformatimportergltf.rst index abe922914..ce2949965 100644 --- a/classes/class_editorsceneformatimportergltf.rst +++ b/classes/class_editorsceneformatimportergltf.rst @@ -14,9 +14,10 @@ EditorSceneFormatImporterGLTF .. container:: contribute - There is currently no description for this class. Please help us by :ref:`contributing one `! + There is currently no description for this class. Please help us by `contributing one `__! .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_editorsceneformatimporterufbx.rst b/classes/class_editorsceneformatimporterufbx.rst index 618ecfb9c..bb1d6fd15 100644 --- a/classes/class_editorsceneformatimporterufbx.rst +++ b/classes/class_editorsceneformatimporterufbx.rst @@ -24,6 +24,7 @@ Description EditorSceneFormatImporterUFBX is designed to load FBX files and supports both binary and ASCII FBX files from version 3000 onward. This class supports various 3D object types like meshes, skins, blend shapes, materials, and rigging information. The class aims for feature parity with the official FBX SDK and supports FBX 7.4 specifications. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_editorscenepostimport.rst b/classes/class_editorscenepostimport.rst index 194c584c5..2ef0b669b 100644 --- a/classes/class_editorscenepostimport.rst +++ b/classes/class_editorscenepostimport.rst @@ -30,14 +30,14 @@ The :ref:`_post_import()`! + There is currently no description for this enum. Please help us by `contributing one `__! @@ -88,7 +88,7 @@ enum **InternalImportCategory**: :ref:`🔗`! + There is currently no description for this enum. Please help us by `contributing one `__! @@ -100,7 +100,7 @@ enum **InternalImportCategory**: :ref:`🔗`! + There is currently no description for this enum. Please help us by `contributing one `__! @@ -112,7 +112,7 @@ enum **InternalImportCategory**: :ref:`🔗`! + There is currently no description for this enum. Please help us by `contributing one `__! @@ -124,7 +124,7 @@ enum **InternalImportCategory**: :ref:`🔗`! + There is currently no description for this enum. Please help us by `contributing one `__! @@ -136,7 +136,7 @@ enum **InternalImportCategory**: :ref:`🔗`! + There is currently no description for this enum. Please help us by `contributing one `__! @@ -148,7 +148,7 @@ enum **InternalImportCategory**: :ref:`🔗`! + There is currently no description for this enum. Please help us by `contributing one `__! @@ -160,7 +160,7 @@ enum **InternalImportCategory**: :ref:`🔗`! + There is currently no description for this enum. Please help us by `contributing one `__! @@ -251,7 +251,7 @@ Process a specific node or resource for a given category. |void| **_post_process**\ (\ scene\: :ref:`Node`\ ) |virtual| :ref:`🔗` -Post process the scene. This function is called after the final scene has been configured. +Post-process the scene. This function is called after the final scene has been configured. .. rst-class:: classref-item-separator @@ -263,9 +263,9 @@ Post process the scene. This function is called after the final scene has been c |void| **_pre_process**\ (\ scene\: :ref:`Node`\ ) |virtual| :ref:`🔗` -Pre Process the scene. This function is called right after the scene format loader loaded the scene and no changes have been made. +Pre-process the scene. This function is called right after the scene format loader loaded the scene and no changes have been made. -Pre process may be used to adjust internal import options in the ``"nodes"``, ``"meshes"``, ``"animations"`` or ``"materials"`` keys inside ``get_option_value("_subresources")``. +Pre-process may be used to adjust internal import options in the ``"nodes"``, ``"meshes"``, ``"animations"`` or ``"materials"`` keys inside ``get_option_value("_subresources")``. .. rst-class:: classref-item-separator @@ -304,6 +304,7 @@ Add a specific import option. This function can only be called from :ref:`_get_i Query the value of an option. This function can only be called from those querying visibility, or processing. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_editorscript.rst b/classes/class_editorscript.rst index 6bac381c6..67626f907 100644 --- a/classes/class_editorscript.rst +++ b/classes/class_editorscript.rst @@ -21,6 +21,8 @@ Description Scripts extending this class and implementing its :ref:`_run()` method can be executed from the Script Editor's **File > Run** menu option (or by pressing :kbd:`Ctrl + Shift + X`) while the editor is running. This is useful for adding custom in-editor functionality to Godot. For more complex additions, consider using :ref:`EditorPlugin`\ s instead. +If a script extending this class also has a global class name, it will be included in the editor's command palette. + \ **Note:** Extending scripts need to have ``tool`` mode enabled. \ **Example:** Running the following script prints "Hello from the Godot Editor!": @@ -32,14 +34,14 @@ Scripts extending this class and implementing its :ref:`_run()`, meaning it is destroyed when nothing references it. This can cause errors during asynchronous operations if there are no references to the script. .. rst-class:: classref-reftable-group @@ -64,7 +64,7 @@ Methods :widths: auto +-----------------------------------------------+-----------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_run`\ (\ ) |virtual| | + | |void| | :ref:`_run`\ (\ ) |virtual| |required| | +-----------------------------------------------+-----------------------------------------------------------------------------------------------------+ | |void| | :ref:`add_root_node`\ (\ node\: :ref:`Node`\ ) | +-----------------------------------------------+-----------------------------------------------------------------------------------------------------+ @@ -86,7 +86,7 @@ Method Descriptions .. rst-class:: classref-method -|void| **_run**\ (\ ) |virtual| :ref:`🔗` +|void| **_run**\ (\ ) |virtual| |required| :ref:`🔗` This method is executed by the Editor when **File > Run** is used. @@ -129,6 +129,7 @@ Returns the :ref:`EditorInterface` singleton instance. Returns the edited (current) scene's root :ref:`Node`. Equivalent of :ref:`EditorInterface.get_edited_scene_root()`. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_editorscriptpicker.rst b/classes/class_editorscriptpicker.rst index 6b1fa1491..f34841e40 100644 --- a/classes/class_editorscriptpicker.rst +++ b/classes/class_editorscriptpicker.rst @@ -58,6 +58,7 @@ Property Descriptions The owner :ref:`Node` of the script property that holds the edited resource. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_editorselection.rst b/classes/class_editorselection.rst index c4d9581ea..77d13606b 100644 --- a/classes/class_editorselection.rst +++ b/classes/class_editorselection.rst @@ -38,6 +38,8 @@ Methods +------------------------------------------------------+--------------------------------------------------------------------------------------------------------------+ | :ref:`Array`\[:ref:`Node`\] | :ref:`get_selected_nodes`\ (\ ) | +------------------------------------------------------+--------------------------------------------------------------------------------------------------------------+ + | :ref:`Array`\[:ref:`Node`\] | :ref:`get_top_selected_nodes`\ (\ ) | + +------------------------------------------------------+--------------------------------------------------------------------------------------------------------------+ | :ref:`Array`\[:ref:`Node`\] | :ref:`get_transformable_selected_nodes`\ (\ ) | +------------------------------------------------------+--------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`remove_node`\ (\ node\: :ref:`Node`\ ) | @@ -107,13 +109,29 @@ Returns the list of selected nodes. ---- +.. _class_EditorSelection_method_get_top_selected_nodes: + +.. rst-class:: classref-method + +:ref:`Array`\[:ref:`Node`\] **get_top_selected_nodes**\ (\ ) :ref:`🔗` + +Returns the list of top selected nodes only, excluding any children. This is useful for performing transform operations (moving them, rotating, etc.). + +For example, if there is a node A with a child B and a sibling C, then selecting all three will cause this method to return only A and C. Changing the global transform of A will affect the global transform of B, so there is no need to change B separately. + +.. rst-class:: classref-item-separator + +---- + .. _class_EditorSelection_method_get_transformable_selected_nodes: .. rst-class:: classref-method :ref:`Array`\[:ref:`Node`\] **get_transformable_selected_nodes**\ (\ ) :ref:`🔗` -Returns the list of selected nodes, optimized for transform operations (i.e. moving them, rotating, etc.). This list can be used to avoid situations where a node is selected and is also a child/grandchild. +**Deprecated:** Use :ref:`get_top_selected_nodes()` instead. + +Returns the list of top selected nodes only, excluding any children. This is useful for performing transform operations (moving them, rotating, etc.). See :ref:`get_top_selected_nodes()`. .. rst-class:: classref-item-separator @@ -128,6 +146,7 @@ Returns the list of selected nodes, optimized for transform operations (i.e. mov Removes a node from the selection. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_editorsettings.rst b/classes/class_editorsettings.rst index ff320979d..51f383636 100644 --- a/classes/class_editorsettings.rst +++ b/classes/class_editorsettings.rst @@ -65,6 +65,8 @@ Properties +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`debugger/auto_switch_to_stack_trace` | +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`debugger/max_node_selection` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`debugger/profile_native_calls` | +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`debugger/profiler_frame_history_size` | @@ -89,6 +91,8 @@ Properties +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`float` | :ref:`docks/property_editor/subresource_hue_tint` | +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`docks/scene_tree/accessibility_warnings` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`docks/scene_tree/ask_before_deleting_related_animation_tracks` | +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`docks/scene_tree/ask_before_revoking_unique_name` | @@ -119,6 +123,8 @@ Properties +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`Color` | :ref:`editors/2d/guides_color` | +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`editors/2d/ruler_width` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`Color` | :ref:`editors/2d/smart_snapping_line_color` | +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`editors/2d/use_integer_zoom_by_default` | @@ -127,6 +133,8 @@ Properties +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`float` | :ref:`editors/2d/zoom_speed_factor` | +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Color` | :ref:`editors/3d/active_selection_box_color` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`float` | :ref:`editors/3d/default_fov` | +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`float` | :ref:`editors/3d/default_z_far` | @@ -261,16 +269,24 @@ Properties +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`editors/3d_gizmos/gizmo_settings/bone_shape` | +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`editors/3d_gizmos/gizmo_settings/lightmap_gi_probe_size` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`float` | :ref:`editors/3d_gizmos/gizmo_settings/path3d_tilt_disk_size` | +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`editors/animation/autorename_animation_tracks` | +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`editors/animation/confirm_insert_track` | +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`editors/animation/default_animation_step` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`editors/animation/default_create_bezier_tracks` | +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`editors/animation/default_create_reset_tracks` | +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`editors/animation/default_fps_compatibility` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`editors/animation/default_fps_mode` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`Color` | :ref:`editors/animation/onion_layers_future_color` | +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`Color` | :ref:`editors/animation/onion_layers_past_color` | @@ -301,6 +317,8 @@ Properties +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`editors/panning/warped_mouse_panning` | +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`editors/panning/zoom_style` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`float` | :ref:`editors/polygon_editor/auto_bake_delay` | +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`editors/polygon_editor/point_grab_radius` | @@ -421,6 +439,8 @@ Properties +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`input/buffering/use_accumulated_input` | +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`interface/accessibility/accessibility_support` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`interface/editor/accept_dialog_cancel_ok_buttons` | +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`interface/editor/automatically_open_screenshots` | @@ -435,6 +455,8 @@ Properties +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`interface/editor/code_font_size` | +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`interface/editor/collapse_main_menu` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`float` | :ref:`interface/editor/custom_display_scale` | +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`interface/editor/display_scale` | @@ -487,6 +509,8 @@ Properties +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`interface/editor/single_window_mode` | +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`interface/editor/tablet_driver` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`interface/editor/ui_layout_direction` | +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`interface/editor/unfocused_low_processor_mode_sleep_usec` | @@ -505,6 +529,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` | @@ -585,11 +611,13 @@ Properties +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`interface/touchscreen/enable_pan_and_scale_gestures` | +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`interface/touchscreen/increase_scrollbar_touch_area` | + | :ref:`bool` | :ref:`interface/touchscreen/enable_touch_optimizations` | +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`float` | :ref:`interface/touchscreen/scale_gizmo_handles` | +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`network/connection/engine_version_update_mode` | + | :ref:`int` | :ref:`interface/touchscreen/touch_actions_panel` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`network/connection/check_for_updates` | +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`network/connection/network_mode` | +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ @@ -645,6 +673,8 @@ Properties +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`text_editor/appearance/caret/type` | +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`text_editor/appearance/enable_inline_color_picker` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`text_editor/appearance/guidelines/line_length_guideline_hard_column` | +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`text_editor/appearance/guidelines/line_length_guideline_soft_column` | @@ -685,6 +715,8 @@ Properties +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`text_editor/behavior/files/convert_indent_on_save` | +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`text_editor/behavior/files/drop_preload_resources_as_uid` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`text_editor/behavior/files/open_dominant_script_on_scene_change` | +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`text_editor/behavior/files/restore_scripts_on_load` | @@ -801,6 +833,18 @@ Properties +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`Color` | :ref:`text_editor/theme/highlighting/comment_color` | +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Color` | :ref:`text_editor/theme/highlighting/comment_markers/critical_color` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`text_editor/theme/highlighting/comment_markers/critical_list` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Color` | :ref:`text_editor/theme/highlighting/comment_markers/notice_color` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`text_editor/theme/highlighting/comment_markers/notice_list` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Color` | :ref:`text_editor/theme/highlighting/comment_markers/warning_color` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`text_editor/theme/highlighting/comment_markers/warning_list` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`Color` | :ref:`text_editor/theme/highlighting/completion_background_color` | +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`Color` | :ref:`text_editor/theme/highlighting/completion_existing_color` | @@ -827,6 +871,18 @@ Properties +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`Color` | :ref:`text_editor/theme/highlighting/function_color` | +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Color` | :ref:`text_editor/theme/highlighting/gdscript/annotation_color` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Color` | :ref:`text_editor/theme/highlighting/gdscript/function_definition_color` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Color` | :ref:`text_editor/theme/highlighting/gdscript/global_function_color` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Color` | :ref:`text_editor/theme/highlighting/gdscript/node_path_color` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Color` | :ref:`text_editor/theme/highlighting/gdscript/node_reference_color` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Color` | :ref:`text_editor/theme/highlighting/gdscript/string_name_color` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`Color` | :ref:`text_editor/theme/highlighting/keyword_color` | +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`Color` | :ref:`text_editor/theme/highlighting/line_length_guideline_color` | @@ -857,9 +913,9 @@ Properties +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`Color` | :ref:`text_editor/theme/highlighting/user_type_color` | +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Color` | :ref:`text_editor/theme/highlighting/word_highlighted_color` | + | :ref:`Color` | :ref:`text_editor/theme/highlighting/warning_color` | +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`text_editor/theme/line_spacing` | + | :ref:`Color` | :ref:`text_editor/theme/highlighting/word_highlighted_color` | +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`String` | :ref:`version_control/ssh_private_key_path` | +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ @@ -991,6 +1047,20 @@ If ``true``, automatically switches to the **Stack Trace** panel when the debugg ---- +.. _class_EditorSettings_property_debugger/max_node_selection: + +.. rst-class:: classref-property + +:ref:`int` **debugger/max_node_selection** :ref:`🔗` + +The limit of how many remote nodes can be selected at once. + +\ **Warning:** Increasing this value is not recommended, as selecting too many can make the editing and inspection of remote properties unreliable. + +.. rst-class:: classref-item-separator + +---- + .. _class_EditorSettings_property_debugger/profile_native_calls: .. rst-class:: classref-property @@ -1139,6 +1209,18 @@ The tint intensity to use for the subresources background in the Inspector dock. ---- +.. _class_EditorSettings_property_docks/scene_tree/accessibility_warnings: + +.. rst-class:: classref-property + +:ref:`bool` **docks/scene_tree/accessibility_warnings** :ref:`🔗` + +If ``true``, accessibility related warnings are displayed alongside other configuration warnings. + +.. rst-class:: classref-item-separator + +---- + .. _class_EditorSettings_property_docks/scene_tree/ask_before_deleting_related_animation_tracks: .. rst-class:: classref-property @@ -1323,6 +1405,18 @@ The guides color to use in the 2D editor. Guides can be created by dragging the ---- +.. _class_EditorSettings_property_editors/2d/ruler_width: + +.. rst-class:: classref-property + +:ref:`float` **editors/2d/ruler_width** :ref:`🔗` + +The thickness of the coordinate ruler in the 2D editor. Increasing this will also increase the size of the ruler font, improving readability when using a lower editor scale. The editor may force a minimum size to keep the ruler numbers legible. + +.. rst-class:: classref-item-separator + +---- + .. _class_EditorSettings_property_editors/2d/smart_snapping_line_color: .. rst-class:: classref-property @@ -1371,6 +1465,20 @@ The factor to use when zooming in or out in the 2D editor. For example, ``1.1`` ---- +.. _class_EditorSettings_property_editors/3d/active_selection_box_color: + +.. rst-class:: classref-property + +:ref:`Color` **editors/3d/active_selection_box_color** :ref:`🔗` + +The color to use for the active selection box that surrounds selected nodes in the 3D editor viewport. The color's alpha channel influences the selection box's opacity. + +\ **Note:** The term "active" indicates that this object is the primary selection used as the basis for certain operations. This is the last selected :ref:`Node3D`, which can be reordered with :kbd:`Shift + Left mouse button`. + +.. rst-class:: classref-item-separator + +---- + .. _class_EditorSettings_property_editors/3d/default_fov: .. rst-class:: classref-property @@ -2205,6 +2313,18 @@ The shape of :ref:`Skeleton3D` bone gizmos in the 3D editor. * ---- +.. _class_EditorSettings_property_editors/3d_gizmos/gizmo_settings/lightmap_gi_probe_size: + +.. rst-class:: classref-property + +:ref:`float` **editors/3d_gizmos/gizmo_settings/lightmap_gi_probe_size** :ref:`🔗` + +Size of probe gizmos displayed when editing :ref:`LightmapGI` and :ref:`LightmapProbe` nodes. Setting this to ``0.0`` will hide the probe spheres of :ref:`LightmapGI` and wireframes of :ref:`LightmapProbe` nodes, but will keep the wireframes linking probes from :ref:`LightmapGI` and billboard icons from :ref:`LightmapProbe` intact. + +.. rst-class:: classref-item-separator + +---- + .. _class_EditorSettings_property_editors/3d_gizmos/gizmo_settings/path3d_tilt_disk_size: .. rst-class:: classref-property @@ -2243,6 +2363,20 @@ If ``false``, the behavior is reversed, i.e. the dialog only appears when Shift ---- +.. _class_EditorSettings_property_editors/animation/default_animation_step: + +.. rst-class:: classref-property + +:ref:`float` **editors/animation/default_animation_step** :ref:`🔗` + +Default step used when creating a new :ref:`Animation` in the Animation bottom panel. Only affects the first animation created in the :ref:`AnimationPlayer`. By default, other newly created animations will use the step from the previous ones. + +This value is always expressed in seconds. If you want e.g. ``10`` FPS to be the default, you need to set the default step to ``0.1``. + +.. rst-class:: classref-item-separator + +---- + .. _class_EditorSettings_property_editors/animation/default_create_bezier_tracks: .. rst-class:: classref-property @@ -2267,6 +2401,30 @@ If ``true``, create a ``RESET`` track when creating a new animation track. This ---- +.. _class_EditorSettings_property_editors/animation/default_fps_compatibility: + +.. rst-class:: classref-property + +:ref:`bool` **editors/animation/default_fps_compatibility** :ref:`🔗` + +Controls whether :ref:`AnimationPlayer` will apply snapping to nearest integer FPS when snapping is in Seconds mode. The option is remembered locally for a scene and this option only determines the default value when scene doesn't have local state yet. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorSettings_property_editors/animation/default_fps_mode: + +.. rst-class:: classref-property + +:ref:`int` **editors/animation/default_fps_mode** :ref:`🔗` + +Default step mode for :ref:`AnimationPlayer` (seconds or FPS). The option is remembered locally for a scene and this option only determines the default value when scene doesn't have local state yet. + +.. rst-class:: classref-item-separator + +---- + .. _class_EditorSettings_property_editors/animation/onion_layers_future_color: .. rst-class:: classref-property @@ -2299,7 +2457,7 @@ The modulate color to use for "past" frames displayed in the animation editor's .. container:: contribute - There is currently no description for this property. Please help us by :ref:`contributing one `! + There is currently no description for this property. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -2313,7 +2471,7 @@ The modulate color to use for "past" frames displayed in the animation editor's .. container:: contribute - There is currently no description for this property. Please help us by :ref:`contributing one `! + There is currently no description for this property. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -2327,7 +2485,7 @@ The modulate color to use for "past" frames displayed in the animation editor's .. container:: contribute - There is currently no description for this property. Please help us by :ref:`contributing one `! + There is currently no description for this property. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -2341,7 +2499,7 @@ The modulate color to use for "past" frames displayed in the animation editor's .. container:: contribute - There is currently no description for this property. Please help us by :ref:`contributing one `! + There is currently no description for this property. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -2455,6 +2613,18 @@ If ``true``, warps the mouse around the 2D viewport while panning in the 2D edit ---- +.. _class_EditorSettings_property_editors/panning/zoom_style: + +.. rst-class:: classref-property + +:ref:`int` **editors/panning/zoom_style** :ref:`🔗` + +The mouse cursor movement direction to use when drag-zooming in any editor (except 3D scene editor) by moving the mouse. This does not affect zooming with the mouse wheel. + +.. rst-class:: classref-item-separator + +---- + .. _class_EditorSettings_property_editors/polygon_editor/auto_bake_delay: .. rst-class:: classref-property @@ -3150,7 +3320,11 @@ If set to ``Adaptive``, the dialog opens in list view or grid view depending on :ref:`bool` **filesystem/quick_open_dialog/enable_fuzzy_matching** :ref:`🔗` -If ``true``, fuzzy matching of search tokens is allowed. +If ``true``, together with exact matches of a filename, the dialog includes approximate matches. + +This is useful for finding the correct files even when there are typos in the search query; for example, searching "nprmal" will find "normal". Additionally, it allows you to write shorter search queries; for example, searching "nml" will also find "normal". + +See also :ref:`filesystem/quick_open_dialog/max_fuzzy_misses`. .. rst-class:: classref-item-separator @@ -3174,7 +3348,7 @@ If ``true``, results will include files located in the ``addons`` folder. :ref:`int` **filesystem/quick_open_dialog/max_fuzzy_misses** :ref:`🔗` -The number of allowed missed query characters in a match, if fuzzy matching is enabled. For example, with the default value of 2, ``foobar`` would match ``foobur`` and ``foob`` but not ``foo``. +The number of missed query characters allowed in a match when fuzzy matching is enabled. For example, with the default value of ``2``, ``"normal"`` would match ``"narmal"`` and ``"norma"`` but not ``"nor"``. .. rst-class:: classref-item-separator @@ -3250,6 +3424,26 @@ Input accumulation can be disabled to get slightly more precise/reactive input a ---- +.. _class_EditorSettings_property_interface/accessibility/accessibility_support: + +.. rst-class:: classref-property + +:ref:`int` **interface/accessibility/accessibility_support** :ref:`🔗` + +Editor accessibility support mode: + +- **Auto** (``0``): Accessibility support is enabled, but updates to the accessibility information are processed only if an assistive app (such as a screen reader or a Braille display) is active (default). + +- **Always Active** (``1``): Accessibility support is enabled, and updates to the accessibility information are always processed, regardless of the status of assistive apps. + +- **Disabled** (``2``): Accessibility support is fully disabled. + +\ **Note:** Accessibility debugging tools, such as Accessibility Insights for Windows, Accessibility Inspector (macOS), or AT-SPI Browser (Linux/BSD) do not count as assistive apps. To test your project with these tools, use **Always Active**. + +.. rst-class:: classref-item-separator + +---- + .. _class_EditorSettings_property_interface/editor/accept_dialog_cancel_ok_buttons: .. rst-class:: classref-property @@ -3258,7 +3452,7 @@ Input accumulation can be disabled to get slightly more precise/reactive input a How to position the Cancel and OK buttons in the editor's :ref:`AcceptDialog`\ s. Different platforms have different standard behaviors for this, which can be overridden using this setting. This is useful if you use Godot both on Windows and macOS/Linux and your Godot muscle memory is stronger than your OS specific one. -- **Auto** follows the platform convention: Cancel first on macOS and Linux, OK first on Windows. +- **Auto** follows the platform convention: OK first on Windows, KDE, and LXQt, Cancel first on macOS and other Linux desktop environments. - **Cancel First** forces the ordering Cancel/OK. @@ -3346,6 +3540,22 @@ The size of the font in the script editor. This setting does not impact the font ---- +.. _class_EditorSettings_property_interface/editor/collapse_main_menu: + +.. rst-class:: classref-property + +:ref:`bool` **interface/editor/collapse_main_menu** :ref:`🔗` + +If ``true``, the main menu collapses into a :ref:`MenuButton`. + +\ **Note:** This setting is only applicable on macOS when :ref:`interface/editor/use_embedded_menu` is ``true``. + +\ **Note:** Defaults to ``true`` on the Android editor. + +.. rst-class:: classref-item-separator + +---- + .. _class_EditorSettings_property_interface/editor/custom_display_scale: .. rst-class:: classref-property @@ -3396,7 +3606,7 @@ Tab style of editor docks. The language to use for the editor interface. -Translations are provided by the community. If you spot a mistake, :doc:`contribute to editor translations on Weblate! <../contributing/documentation/editor_and_docs_localization>` +Translations are provided by the community. If you spot a mistake, `contribute to editor translations on Weblate! `__ .. rst-class:: classref-item-separator @@ -3408,7 +3618,7 @@ Translations are provided by the community. If you spot a mistake, :doc:`contrib :ref:`int` **interface/editor/editor_screen** :ref:`🔗` -The preferred monitor to display the editor. If **Auto**, the editor will remember the last screen it was displayed on across restarts. +The preferred monitor to display the editor. If **Auto**, the editor will remember the last screen it was displayed on across multiple sessions. .. rst-class:: classref-item-separator @@ -3540,7 +3750,7 @@ If ``true``, setting names in the editor are localized when possible. :ref:`int` **interface/editor/low_processor_mode_sleep_usec** :ref:`🔗` -The amount of sleeping between frames when the low-processor usage mode is enabled (in microseconds). Higher values will result in lower CPU/GPU usage, which can improve battery life on laptops. However, higher values will result in a less responsive editor. The default value is set to allow for maximum smoothness on monitors up to 144 Hz. See also :ref:`interface/editor/unfocused_low_processor_mode_sleep_usec`. +The amount of sleeping between frames in the editor (in microseconds). Higher values will result in lower CPU/GPU usage, which can improve battery life on laptops. However, higher values will result in a less responsive editor. The default value is set to allow for maximum smoothness on monitors up to 144 Hz. See also :ref:`interface/editor/unfocused_low_processor_mode_sleep_usec`. \ **Note:** This setting is ignored if :ref:`interface/editor/update_continuously` is ``true``, as enabling that setting disables low-processor mode. @@ -3556,6 +3766,8 @@ The amount of sleeping between frames when the low-processor usage mode is enabl The font to use for the editor interface. Must be a resource of a :ref:`Font` type such as a ``.ttf`` or ``.otf`` font file. +\ **Note:** If the provided font is variable, a weight of 400 (normal) will be used. + .. rst-class:: classref-item-separator ---- @@ -3568,6 +3780,8 @@ The font to use for the editor interface. Must be a resource of a :ref:`Font` type such as a ``.ttf`` or ``.otf`` font file. +\ **Note:** If the provided font is variable, a weight of 700 (bold) will be used. + .. rst-class:: classref-item-separator ---- @@ -3638,7 +3852,7 @@ If ``true``, scenes and scripts are saved when the editor loses focus. Depending :ref:`bool` **interface/editor/separate_distraction_mode** :ref:`🔗` -If ``true``, the editor's Script tab will have a separate distraction mode setting from the 2D/3D/AssetLib tabs. If ``false``, the distraction-free mode toggle is shared between all tabs. +If ``true``, the editor's Script tab will have a separate distraction mode setting from the 2D/3D/Game/AssetLib tabs. If ``false``, the distraction-free mode toggle is shared between all tabs. .. rst-class:: classref-item-separator @@ -3696,6 +3910,18 @@ This is equivalent to :ref:`ProjectSettings.display/window/subwindows/embed_subw ---- +.. _class_EditorSettings_property_interface/editor/tablet_driver: + +.. rst-class:: classref-property + +:ref:`int` **interface/editor/tablet_driver** :ref:`🔗` + +Overrides the tablet driver used by the editor. + +.. rst-class:: classref-item-separator + +---- + .. _class_EditorSettings_property_interface/editor/ui_layout_direction: .. rst-class:: classref-property @@ -3714,7 +3940,7 @@ Editor UI default layout direction. :ref:`int` **interface/editor/unfocused_low_processor_mode_sleep_usec** :ref:`🔗` -When the editor window is unfocused, the amount of sleeping between frames when the low-processor usage mode is enabled (in microseconds). Higher values will result in lower CPU/GPU usage, which can improve battery life on laptops (in addition to improving the running project's performance if the editor has to redraw continuously). However, higher values will result in a less responsive editor. The default value is set to limit the editor to 20 FPS when the editor window is unfocused. See also :ref:`interface/editor/low_processor_mode_sleep_usec`. +When the editor window is unfocused, the amount of sleeping between frames when the low-processor usage mode is enabled (in microseconds). Higher values will result in lower CPU/GPU usage, which can improve battery life on laptops (in addition to improving the running project's performance if the editor has to redraw continuously). However, higher values will result in a less responsive editor. The default value is set to limit the editor to 10 FPS when the editor window is unfocused. See also :ref:`interface/editor/low_processor_mode_sleep_usec`. \ **Note:** This setting is ignored if :ref:`interface/editor/update_continuously` is ``true``, as enabling that setting disables low-processor mode. @@ -3808,7 +4034,21 @@ If ``true``, the Scene dock will display buttons to quickly add a root node to a :ref:`bool` **interface/inspector/auto_unfold_foreign_scenes** :ref:`🔗` -If ``true``, automatically expands property groups in the Inspector dock when opening a scene that hasn't been opened previously. If ``false``, all groups remain collapsed by default. +If ``true``, automatically unfolds Inspector property groups containing modified values when opening a scene for the first time. Only affects scenes without saved folding preferences and only unfolds groups with properties that have been changed from their default values. + +\ **Note:** This setting only works in specific scenarios: when opening a scene brought in from another project, or when opening a new scene that already has modified properties (e.g., from version control). Duplicated scenes are not considered foreign, so this setting will not affect them. + +.. rst-class:: classref-item-separator + +---- + +.. _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 @@ -4336,13 +4576,13 @@ If ``true``, enable two finger pan and scale gestures on touchscreen devices. ---- -.. _class_EditorSettings_property_interface/touchscreen/increase_scrollbar_touch_area: +.. _class_EditorSettings_property_interface/touchscreen/enable_touch_optimizations: .. rst-class:: classref-property -:ref:`bool` **interface/touchscreen/increase_scrollbar_touch_area** :ref:`🔗` +:ref:`bool` **interface/touchscreen/enable_touch_optimizations** :ref:`🔗` -If ``true``, increases the scrollbar touch area to improve usability on touchscreen devices. +If ``true``, increases the scrollbar touch area and enables a larger dragger for split containers to improve usability on touchscreen devices \ **Note:** Defaults to ``true`` on touchscreen devices. @@ -4364,11 +4604,25 @@ Specify the multiplier to apply to the scale for the editor gizmo handles to imp ---- -.. _class_EditorSettings_property_network/connection/engine_version_update_mode: +.. _class_EditorSettings_property_interface/touchscreen/touch_actions_panel: .. rst-class:: classref-property -:ref:`int` **network/connection/engine_version_update_mode** :ref:`🔗` +:ref:`int` **interface/touchscreen/touch_actions_panel** :ref:`🔗` + +A touch-friendly panel that provides easy access to common actions such as save, delete, undo, and redo without requiring a keyboard. + +\ **Note:** Only available in the Android and XR editor. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorSettings_property_network/connection/check_for_updates: + +.. rst-class:: classref-property + +:ref:`int` **network/connection/check_for_updates** :ref:`🔗` Specifies how the engine should check for updates. @@ -4394,6 +4648,8 @@ All update modes will ignore builds with different major versions (e.g. Godot 4 Determines whether online features are enabled in the editor, such as the Asset Library or update checks. Disabling these online features helps alleviate privacy concerns by preventing the editor from making HTTP requests to the Godot website or third-party platforms hosting assets from the Asset Library. +Editor plugins and tool scripts are recommended to follow this setting. However, Godot can't prevent them from violating this rule. + .. rst-class:: classref-item-separator ---- @@ -4640,7 +4896,7 @@ Overrides game embedding setting for all newly opened projects. If enabled, game The window mode to use to display the project when starting the project from the editor. -\ **Note:** Game embedding is not available for "Force Maximized" or "Force Fullscreen." +\ **Note:** Game embedding is not available for **"Force Maximized"** or **"Force Fullscreen"**. .. rst-class:: classref-item-separator @@ -4730,6 +4986,18 @@ The shape of the caret to use in the script editor. **Line** displays a vertical ---- +.. _class_EditorSettings_property_text_editor/appearance/enable_inline_color_picker: + +.. rst-class:: classref-property + +:ref:`bool` **text_editor/appearance/enable_inline_color_picker** :ref:`🔗` + +If ``true``, displays a colored button before any :ref:`Color` constructor in the script editor. Clicking on them allows the color to be modified through a color picker. + +.. rst-class:: classref-item-separator + +---- + .. _class_EditorSettings_property_text_editor/appearance/guidelines/line_length_guideline_hard_column: .. rst-class:: classref-property @@ -4940,7 +5208,11 @@ If ``true``, tool scripts will be automatically soft-reloaded after they are sav :ref:`bool` **text_editor/behavior/files/auto_reload_scripts_on_external_change** :ref:`🔗` -If ``true``, automatically reloads scripts in the editor when they have been modified and saved by external editors. +If ``true``, automatically reloads scripts and text-based shaders in the editor when they have been modified and saved by external editors or tools and the editor regains focus. External changes can be discarded by using the Undo function after they've been loaded in the editor. + +If ``false``, a file conflict dialog will always be displayed when the editor regains focus. This dialog allows you to choose whether to keep local changes or discard them. + +\ **Note:** Even when this setting is ``true``, a file conflict dialog is still displayed in certain situations. For instance, it will display when the script editor has unsaved changes that the external editor did not account for. .. rst-class:: classref-item-separator @@ -4970,6 +5242,20 @@ If ``true``, converts indentation to match the script editor's indentation setti ---- +.. _class_EditorSettings_property_text_editor/behavior/files/drop_preload_resources_as_uid: + +.. rst-class:: classref-property + +:ref:`bool` **text_editor/behavior/files/drop_preload_resources_as_uid** :ref:`🔗` + +If ``true``, when dropping a :ref:`Resource` file to script editor while :kbd:`Ctrl` is held, the resource will be preloaded with a UID. If ``false``, the resource will be preloaded with a path. + +When you hold :kbd:`Ctrl+Shift`, the behavior is reversed. + +.. rst-class:: classref-item-separator + +---- + .. _class_EditorSettings_property_text_editor/behavior/files/open_dominant_script_on_scene_change: .. rst-class:: classref-property @@ -5234,7 +5520,15 @@ If ``true``, uses :ref:`StringName` instead of :ref:`String` **text_editor/completion/add_type_hints** :ref:`🔗` -If ``true``, adds :doc:`GDScript static typing <../tutorials/scripting/gdscript/static_typing>` hints such as ``-> void`` and ``: int`` when using code autocompletion or when creating onready variables by drag and dropping nodes into the script editor while pressing the :kbd:`Ctrl` key. If ``true``, newly created scripts will also automatically have type hints added to their method parameters and return types. +If ``true``, automatically adds :doc:`GDScript static typing <../tutorials/scripting/gdscript/static_typing>` (such as ``-> void`` and ``: int``) in many situations where it's possible to, including when: + +- Accepting a suggestion from code autocompletion; + +- Creating a new script from a template; + +- Connecting signals from the Node dock; + +- Creating variables prefixed with :ref:`@GDScript.@onready`, by dropping nodes from the Scene dock into the script editor while holding :kbd:`Ctrl`. .. rst-class:: classref-item-separator @@ -5682,6 +5976,84 @@ The script editor's comment color. ---- +.. _class_EditorSettings_property_text_editor/theme/highlighting/comment_markers/critical_color: + +.. rst-class:: classref-property + +:ref:`Color` **text_editor/theme/highlighting/comment_markers/critical_color** :ref:`🔗` + +The script editor's critical comment marker text color. These markers are determined by :ref:`text_editor/theme/highlighting/comment_markers/critical_list`. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorSettings_property_text_editor/theme/highlighting/comment_markers/critical_list: + +.. rst-class:: classref-property + +:ref:`String` **text_editor/theme/highlighting/comment_markers/critical_list** :ref:`🔗` + +A comma-separated list of case-sensitive words to highlight in comments. The text will be highlighted in the script editor with the :ref:`text_editor/theme/highlighting/comment_markers/critical_color` color. These must not include spaces or symbols or they will not be highlighted. + +\ **Note:** This is only implemented in the GDScript syntax highlighter. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorSettings_property_text_editor/theme/highlighting/comment_markers/notice_color: + +.. rst-class:: classref-property + +:ref:`Color` **text_editor/theme/highlighting/comment_markers/notice_color** :ref:`🔗` + +The script editor's notice comment marker text color. These markers are determined by :ref:`text_editor/theme/highlighting/comment_markers/notice_list`. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorSettings_property_text_editor/theme/highlighting/comment_markers/notice_list: + +.. rst-class:: classref-property + +:ref:`String` **text_editor/theme/highlighting/comment_markers/notice_list** :ref:`🔗` + +A comma-separated list of case-sensitive words to highlight in comments. The text will be highlighted in the script editor with the :ref:`text_editor/theme/highlighting/comment_markers/notice_color` color. These must not include spaces or symbols or they will not be highlighted. + +\ **Note:** This is only implemented in the GDScript syntax highlighter. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorSettings_property_text_editor/theme/highlighting/comment_markers/warning_color: + +.. rst-class:: classref-property + +:ref:`Color` **text_editor/theme/highlighting/comment_markers/warning_color** :ref:`🔗` + +The script editor's warning comment marker text color. These markers are determined by :ref:`text_editor/theme/highlighting/comment_markers/warning_list`. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorSettings_property_text_editor/theme/highlighting/comment_markers/warning_list: + +.. rst-class:: classref-property + +:ref:`String` **text_editor/theme/highlighting/comment_markers/warning_list** :ref:`🔗` + +A comma-separated list of case-sensitive words to highlight in comments. The text will be highlighted in the script editor with the :ref:`text_editor/theme/highlighting/comment_markers/warning_color` color. These must not include spaces or symbols or they will not be highlighted. + +\ **Note:** This is only implemented in the GDScript syntax highlighter. + +.. rst-class:: classref-item-separator + +---- + .. _class_EditorSettings_property_text_editor/theme/highlighting/completion_background_color: .. rst-class:: classref-property @@ -5834,7 +6206,79 @@ The script editor's background line highlighting color for folded code region. The script editor's function call color. -\ **Note:** When using the GDScript syntax highlighter, this is replaced by the function definition color configured in the syntax theme for function definitions (e.g. ``func _ready():``). +\ **Note:** When using the GDScript syntax highlighter, this is only used when calling some functions since function definitions and global functions have their own colors :ref:`text_editor/theme/highlighting/gdscript/function_definition_color` and :ref:`text_editor/theme/highlighting/gdscript/global_function_color`. + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorSettings_property_text_editor/theme/highlighting/gdscript/annotation_color: + +.. rst-class:: classref-property + +:ref:`Color` **text_editor/theme/highlighting/gdscript/annotation_color** :ref:`🔗` + +The GDScript syntax highlighter text color for annotations (e.g. ``@export``). + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorSettings_property_text_editor/theme/highlighting/gdscript/function_definition_color: + +.. rst-class:: classref-property + +:ref:`Color` **text_editor/theme/highlighting/gdscript/function_definition_color** :ref:`🔗` + +The GDScript syntax highlighter text color for function definitions (e.g. the ``_ready`` in ``func _ready():``). + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorSettings_property_text_editor/theme/highlighting/gdscript/global_function_color: + +.. rst-class:: classref-property + +:ref:`Color` **text_editor/theme/highlighting/gdscript/global_function_color** :ref:`🔗` + +The GDScript syntax highlighter text color for global functions, such as the ones in :ref:`@GlobalScope` (e.g. ``preload()``). + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorSettings_property_text_editor/theme/highlighting/gdscript/node_path_color: + +.. rst-class:: classref-property + +:ref:`Color` **text_editor/theme/highlighting/gdscript/node_path_color** :ref:`🔗` + +The GDScript syntax highlighter text color for :ref:`NodePath` literals (e.g. ``^"position:x"``). + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorSettings_property_text_editor/theme/highlighting/gdscript/node_reference_color: + +.. rst-class:: classref-property + +:ref:`Color` **text_editor/theme/highlighting/gdscript/node_reference_color** :ref:`🔗` + +The GDScript syntax highlighter text color for node reference literals (e.g. ``$"Sprite"`` and ``%"Sprite"``]). + +.. rst-class:: classref-item-separator + +---- + +.. _class_EditorSettings_property_text_editor/theme/highlighting/gdscript/string_name_color: + +.. rst-class:: classref-property + +:ref:`Color` **text_editor/theme/highlighting/gdscript/string_name_color** :ref:`🔗` + +The GDScript syntax highlighter text color for :ref:`StringName` literals (e.g. ``&"example"``). .. rst-class:: classref-item-separator @@ -6024,6 +6468,18 @@ The script editor's color for user-defined types (using ``class_name``). ---- +.. _class_EditorSettings_property_text_editor/theme/highlighting/warning_color: + +.. rst-class:: classref-property + +:ref:`Color` **text_editor/theme/highlighting/warning_color** :ref:`🔗` + +The script editor's background color for lines with warnings. This should be set to a translucent color so that it can display on top of other line color modifiers such as :ref:`text_editor/theme/highlighting/current_line_color`. + +.. rst-class:: classref-item-separator + +---- + .. _class_EditorSettings_property_text_editor/theme/highlighting/word_highlighted_color: .. rst-class:: classref-property @@ -6036,18 +6492,6 @@ The script editor's color for words highlighted by selecting them. Only visible ---- -.. _class_EditorSettings_property_text_editor/theme/line_spacing: - -.. rst-class:: classref-property - -:ref:`int` **text_editor/theme/line_spacing** :ref:`🔗` - -The vertical line separation used in text editors, in pixels. - -.. rst-class:: classref-item-separator - ----- - .. _class_EditorSettings_property_version_control/ssh_private_key_path: .. rst-class:: classref-property @@ -6110,29 +6554,29 @@ Adds a custom property info to a property. The dictionary must contain: var settings = EditorInterface.get_editor_settings() settings.set("category/property_name", 0) - + var property_info = { "name": "category/property_name", "type": TYPE_INT, "hint": PROPERTY_HINT_ENUM, "hint_string": "one,two,three" } - + settings.add_property_info(property_info) .. code-tab:: csharp var settings = GetEditorInterface().GetEditorSettings(); settings.Set("category/property_name", 0); - + var propertyInfo = new Godot.Collections.Dictionary { - {"name", "category/propertyName"}, - {"type", Variant.Type.Int}, - {"hint", PropertyHint.Enum}, - {"hint_string", "one,two,three"} + { "name", "category/propertyName" }, + { "type", Variant.Type.Int }, + { "hint", PropertyHint.Enum }, + { "hint_string", "one,two,three" }, }; - + settings.AddPropertyInfo(propertyInfo); @@ -6318,6 +6762,7 @@ Sets the list of recently visited folders in the file dialog for this project. Sets the ``value`` of the setting specified by ``name``. This is equivalent to using :ref:`Object.set()` on the EditorSettings instance. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_editorspinslider.rst b/classes/class_editorspinslider.rst index d915c4f10..8470af61b 100644 --- a/classes/class_editorspinslider.rst +++ b/classes/class_editorspinslider.rst @@ -267,6 +267,7 @@ Single texture representing both the up and down buttons. Single texture representing both the up and down buttons, when the control is readonly or disabled. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_editorsyntaxhighlighter.rst b/classes/class_editorsyntaxhighlighter.rst index da9bc085f..eacde8e99 100644 --- a/classes/class_editorsyntaxhighlighter.rst +++ b/classes/class_editorsyntaxhighlighter.rst @@ -33,11 +33,13 @@ Methods .. table:: :widths: auto - +---------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`String` | :ref:`_get_name`\ (\ ) |virtual| |const| | - +---------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`PackedStringArray` | :ref:`_get_supported_languages`\ (\ ) |virtual| |const| | - +---------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------+ + +---------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`EditorSyntaxHighlighter` | :ref:`_create`\ (\ ) |virtual| |const| | + +---------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`_get_name`\ (\ ) |virtual| |const| | + +---------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`PackedStringArray` | :ref:`_get_supported_languages`\ (\ ) |virtual| |const| | + +---------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------+ .. rst-class:: classref-section-separator @@ -48,6 +50,18 @@ Methods Method Descriptions ------------------- +.. _class_EditorSyntaxHighlighter_private_method__create: + +.. rst-class:: classref-method + +:ref:`EditorSyntaxHighlighter` **_create**\ (\ ) |virtual| |const| :ref:`🔗` + +Virtual method which creates a new instance of the syntax highlighter. + +.. rst-class:: classref-item-separator + +---- + .. _class_EditorSyntaxHighlighter_private_method__get_name: .. rst-class:: classref-method @@ -69,6 +83,7 @@ Virtual method which can be overridden to return the syntax highlighter name. Virtual method which can be overridden to return the supported language names. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_editortoaster.rst b/classes/class_editortoaster.rst index c24224681..dab918737 100644 --- a/classes/class_editortoaster.rst +++ b/classes/class_editortoaster.rst @@ -92,6 +92,7 @@ Method Descriptions Pushes a toast notification to the editor for display. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_editortranslationparserplugin.rst b/classes/class_editortranslationparserplugin.rst index 3f381cb08..3fe40f3e8 100644 --- a/classes/class_editortranslationparserplugin.rst +++ b/classes/class_editortranslationparserplugin.rst @@ -34,7 +34,7 @@ Below shows an example of a custom parser that extracts strings from a CSV file @tool extends EditorTranslationParserPlugin - + func _parse_file(path): var ret: Array[PackedStringArray] = [] var file = FileAccess.open(path, FileAccess.READ) @@ -43,16 +43,16 @@ Below shows an example of a custom parser that extracts strings from a CSV file for s in split_strs: ret.append(PackedStringArray([s])) #print("Extracted string: " + s) - + return ret - + func _get_recognized_extensions(): return ["csv"] .. code-tab:: csharp using Godot; - + [Tool] public partial class CustomParser : EditorTranslationParserPlugin { @@ -69,7 +69,7 @@ Below shows an example of a custom parser that extracts strings from a CSV file } return ret; } - + public override string[] _GetRecognizedExtensions() { return ["csv"]; @@ -114,7 +114,7 @@ To add a translatable string associated with a context, plural, or comment: var res = ResourceLoader.load(path, "Script") var text = res.source_code # Parsing logic. - + func _get_recognized_extensions(): return ["gd"] @@ -126,7 +126,7 @@ To add a translatable string associated with a context, plural, or comment: string text = res.SourceCode; // Parsing logic. } - + public override string[] _GetRecognizedExtensions() { return ["gd"]; @@ -180,6 +180,7 @@ Gets the list of file extensions to associate with this parser, e.g. ``["csv"]`` Override this method to define a custom parsing logic to extract the translatable strings. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_editorundoredomanager.rst b/classes/class_editorundoredomanager.rst index 5878b55ce..50b685026 100644 --- a/classes/class_editorundoredomanager.rst +++ b/classes/class_editorundoredomanager.rst @@ -43,33 +43,33 @@ Methods .. table:: :widths: auto - +---------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`add_do_method`\ (\ object\: :ref:`Object`, method\: :ref:`StringName`, ...\ ) |vararg| | - +---------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`add_do_property`\ (\ object\: :ref:`Object`, property\: :ref:`StringName`, value\: :ref:`Variant`\ ) | - +---------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`add_do_reference`\ (\ object\: :ref:`Object`\ ) | - +---------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`add_undo_method`\ (\ object\: :ref:`Object`, method\: :ref:`StringName`, ...\ ) |vararg| | - +---------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`add_undo_property`\ (\ object\: :ref:`Object`, property\: :ref:`StringName`, value\: :ref:`Variant`\ ) | - +---------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`add_undo_reference`\ (\ object\: :ref:`Object`\ ) | - +---------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`clear_history`\ (\ id\: :ref:`int` = -99, increase_version\: :ref:`bool` = true\ ) | - +---------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`commit_action`\ (\ execute\: :ref:`bool` = true\ ) | - +---------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`create_action`\ (\ name\: :ref:`String`, merge_mode\: :ref:`MergeMode` = 0, custom_context\: :ref:`Object` = null, backward_undo_ops\: :ref:`bool` = false\ ) | - +---------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`force_fixed_history`\ (\ ) | - +---------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`UndoRedo` | :ref:`get_history_undo_redo`\ (\ id\: :ref:`int`\ ) |const| | - +---------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`get_object_history_id`\ (\ object\: :ref:`Object`\ ) |const| | - +---------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`is_committing_action`\ (\ ) |const| | - +---------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + +---------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`add_do_method`\ (\ object\: :ref:`Object`, method\: :ref:`StringName`, ...\ ) |vararg| | + +---------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`add_do_property`\ (\ object\: :ref:`Object`, property\: :ref:`StringName`, value\: :ref:`Variant`\ ) | + +---------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`add_do_reference`\ (\ object\: :ref:`Object`\ ) | + +---------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`add_undo_method`\ (\ object\: :ref:`Object`, method\: :ref:`StringName`, ...\ ) |vararg| | + +---------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`add_undo_property`\ (\ object\: :ref:`Object`, property\: :ref:`StringName`, value\: :ref:`Variant`\ ) | + +---------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`add_undo_reference`\ (\ object\: :ref:`Object`\ ) | + +---------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`clear_history`\ (\ id\: :ref:`int` = -99, increase_version\: :ref:`bool` = true\ ) | + +---------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`commit_action`\ (\ execute\: :ref:`bool` = true\ ) | + +---------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`create_action`\ (\ name\: :ref:`String`, merge_mode\: :ref:`MergeMode` = 0, custom_context\: :ref:`Object` = null, backward_undo_ops\: :ref:`bool` = false, mark_unsaved\: :ref:`bool` = true\ ) | + +---------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`force_fixed_history`\ (\ ) | + +---------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`UndoRedo` | :ref:`get_history_undo_redo`\ (\ id\: :ref:`int`\ ) |const| | + +---------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`get_object_history_id`\ (\ object\: :ref:`Object`\ ) |const| | + +---------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`is_committing_action`\ (\ ) |const| | + +---------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ .. rst-class:: classref-section-separator @@ -266,16 +266,18 @@ Commits the action. If ``execute`` is ``true`` (default), all "do" methods/prope .. rst-class:: classref-method -|void| **create_action**\ (\ name\: :ref:`String`, merge_mode\: :ref:`MergeMode` = 0, custom_context\: :ref:`Object` = null, backward_undo_ops\: :ref:`bool` = false\ ) :ref:`🔗` +|void| **create_action**\ (\ name\: :ref:`String`, merge_mode\: :ref:`MergeMode` = 0, custom_context\: :ref:`Object` = null, backward_undo_ops\: :ref:`bool` = false, mark_unsaved\: :ref:`bool` = true\ ) :ref:`🔗` Create a new action. After this is called, do all your calls to :ref:`add_do_method()`, :ref:`add_undo_method()`, :ref:`add_do_property()`, and :ref:`add_undo_property()`, then commit the action with :ref:`commit_action()`. -The way actions are merged is dictated by the ``merge_mode`` argument. See :ref:`MergeMode` for details. +The way actions are merged is dictated by the ``merge_mode`` argument. If ``custom_context`` object is provided, it will be used for deducing target history (instead of using the first operation). The way undo operation are ordered in actions is dictated by ``backward_undo_ops``. When ``backward_undo_ops`` is ``false`` undo option are ordered in the same order they were added. Which means the first operation to be added will be the first to be undone. +If ``mark_unsaved`` is ``false``, the action will not mark the history as unsaved. This is useful for example for actions that change a selection, or a setting that will be saved automatically. Otherwise, this should be left to ``true`` if the action requires saving by the user or if it can cause data loss when left unsaved. + .. rst-class:: classref-item-separator ---- @@ -331,6 +333,7 @@ Returns the history ID deduced from the given ``object``. It can be used with :r Returns ``true`` if the **EditorUndoRedoManager** is currently committing the action, i.e. running its "do" method or property change (see :ref:`commit_action()`). .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_editorvcsinterface.rst b/classes/class_editorvcsinterface.rst index 75e18eeb1..b2c43cadf 100644 --- a/classes/class_editorvcsinterface.rst +++ b/classes/class_editorvcsinterface.rst @@ -36,69 +36,69 @@ Methods .. table:: :widths: auto - +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`_checkout_branch`\ (\ branch_name\: :ref:`String`\ ) |virtual| | - +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_commit`\ (\ msg\: :ref:`String`\ ) |virtual| | - +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_create_branch`\ (\ branch_name\: :ref:`String`\ ) |virtual| | - +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_create_remote`\ (\ remote_name\: :ref:`String`, remote_url\: :ref:`String`\ ) |virtual| | - +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_discard_file`\ (\ file_path\: :ref:`String`\ ) |virtual| | - +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_fetch`\ (\ remote\: :ref:`String`\ ) |virtual| | - +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Array`\[:ref:`String`\] | :ref:`_get_branch_list`\ (\ ) |virtual| | - +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`String` | :ref:`_get_current_branch_name`\ (\ ) |virtual| | - +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Array`\[:ref:`Dictionary`\] | :ref:`_get_diff`\ (\ identifier\: :ref:`String`, area\: :ref:`int`\ ) |virtual| | - +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Array`\[:ref:`Dictionary`\] | :ref:`_get_line_diff`\ (\ file_path\: :ref:`String`, text\: :ref:`String`\ ) |virtual| | - +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Array`\[:ref:`Dictionary`\] | :ref:`_get_modified_files_data`\ (\ ) |virtual| | - +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Array`\[:ref:`Dictionary`\] | :ref:`_get_previous_commits`\ (\ max_commits\: :ref:`int`\ ) |virtual| | - +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Array`\[:ref:`String`\] | :ref:`_get_remotes`\ (\ ) |virtual| | - +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`String` | :ref:`_get_vcs_name`\ (\ ) |virtual| | - +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`_initialize`\ (\ project_path\: :ref:`String`\ ) |virtual| | - +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_pull`\ (\ remote\: :ref:`String`\ ) |virtual| | - +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_push`\ (\ remote\: :ref:`String`, force\: :ref:`bool`\ ) |virtual| | - +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_remove_branch`\ (\ branch_name\: :ref:`String`\ ) |virtual| | - +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_remove_remote`\ (\ remote_name\: :ref:`String`\ ) |virtual| | - +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_set_credentials`\ (\ username\: :ref:`String`, password\: :ref:`String`, ssh_public_key_path\: :ref:`String`, ssh_private_key_path\: :ref:`String`, ssh_passphrase\: :ref:`String`\ ) |virtual| | - +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`_shut_down`\ (\ ) |virtual| | - +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_stage_file`\ (\ file_path\: :ref:`String`\ ) |virtual| | - +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_unstage_file`\ (\ file_path\: :ref:`String`\ ) |virtual| | - +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Dictionary` | :ref:`add_diff_hunks_into_diff_file`\ (\ diff_file\: :ref:`Dictionary`, diff_hunks\: :ref:`Array`\[:ref:`Dictionary`\]\ ) | - +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Dictionary` | :ref:`add_line_diffs_into_diff_hunk`\ (\ diff_hunk\: :ref:`Dictionary`, line_diffs\: :ref:`Array`\[:ref:`Dictionary`\]\ ) | - +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Dictionary` | :ref:`create_commit`\ (\ msg\: :ref:`String`, author\: :ref:`String`, id\: :ref:`String`, unix_timestamp\: :ref:`int`, offset_minutes\: :ref:`int`\ ) | - +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Dictionary` | :ref:`create_diff_file`\ (\ new_file\: :ref:`String`, old_file\: :ref:`String`\ ) | - +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Dictionary` | :ref:`create_diff_hunk`\ (\ old_start\: :ref:`int`, new_start\: :ref:`int`, old_lines\: :ref:`int`, new_lines\: :ref:`int`\ ) | - +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Dictionary` | :ref:`create_diff_line`\ (\ new_line_no\: :ref:`int`, old_line_no\: :ref:`int`, content\: :ref:`String`, status\: :ref:`String`\ ) | - +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Dictionary` | :ref:`create_status_file`\ (\ file_path\: :ref:`String`, change_type\: :ref:`ChangeType`, area\: :ref:`TreeArea`\ ) | - +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`popup_error`\ (\ msg\: :ref:`String`\ ) | - +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + +------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`_checkout_branch`\ (\ branch_name\: :ref:`String`\ ) |virtual| |required| | + +------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_commit`\ (\ msg\: :ref:`String`\ ) |virtual| |required| | + +------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_create_branch`\ (\ branch_name\: :ref:`String`\ ) |virtual| |required| | + +------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_create_remote`\ (\ remote_name\: :ref:`String`, remote_url\: :ref:`String`\ ) |virtual| |required| | + +------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_discard_file`\ (\ file_path\: :ref:`String`\ ) |virtual| |required| | + +------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_fetch`\ (\ remote\: :ref:`String`\ ) |virtual| |required| | + +------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Array`\[:ref:`String`\] | :ref:`_get_branch_list`\ (\ ) |virtual| |required| | + +------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`_get_current_branch_name`\ (\ ) |virtual| |required| | + +------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Array`\[:ref:`Dictionary`\] | :ref:`_get_diff`\ (\ identifier\: :ref:`String`, area\: :ref:`int`\ ) |virtual| |required| | + +------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Array`\[:ref:`Dictionary`\] | :ref:`_get_line_diff`\ (\ file_path\: :ref:`String`, text\: :ref:`String`\ ) |virtual| |required| | + +------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Array`\[:ref:`Dictionary`\] | :ref:`_get_modified_files_data`\ (\ ) |virtual| |required| | + +------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Array`\[:ref:`Dictionary`\] | :ref:`_get_previous_commits`\ (\ max_commits\: :ref:`int`\ ) |virtual| |required| | + +------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Array`\[:ref:`String`\] | :ref:`_get_remotes`\ (\ ) |virtual| |required| | + +------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`_get_vcs_name`\ (\ ) |virtual| |required| | + +------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`_initialize`\ (\ project_path\: :ref:`String`\ ) |virtual| |required| | + +------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_pull`\ (\ remote\: :ref:`String`\ ) |virtual| |required| | + +------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_push`\ (\ remote\: :ref:`String`, force\: :ref:`bool`\ ) |virtual| |required| | + +------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_remove_branch`\ (\ branch_name\: :ref:`String`\ ) |virtual| |required| | + +------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_remove_remote`\ (\ remote_name\: :ref:`String`\ ) |virtual| |required| | + +------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_set_credentials`\ (\ username\: :ref:`String`, password\: :ref:`String`, ssh_public_key_path\: :ref:`String`, ssh_private_key_path\: :ref:`String`, ssh_passphrase\: :ref:`String`\ ) |virtual| |required| | + +------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`_shut_down`\ (\ ) |virtual| |required| | + +------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_stage_file`\ (\ file_path\: :ref:`String`\ ) |virtual| |required| | + +------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_unstage_file`\ (\ file_path\: :ref:`String`\ ) |virtual| |required| | + +------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Dictionary` | :ref:`add_diff_hunks_into_diff_file`\ (\ diff_file\: :ref:`Dictionary`, diff_hunks\: :ref:`Array`\[:ref:`Dictionary`\]\ ) | + +------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Dictionary` | :ref:`add_line_diffs_into_diff_hunk`\ (\ diff_hunk\: :ref:`Dictionary`, line_diffs\: :ref:`Array`\[:ref:`Dictionary`\]\ ) | + +------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Dictionary` | :ref:`create_commit`\ (\ msg\: :ref:`String`, author\: :ref:`String`, id\: :ref:`String`, unix_timestamp\: :ref:`int`, offset_minutes\: :ref:`int`\ ) | + +------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Dictionary` | :ref:`create_diff_file`\ (\ new_file\: :ref:`String`, old_file\: :ref:`String`\ ) | + +------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Dictionary` | :ref:`create_diff_hunk`\ (\ old_start\: :ref:`int`, new_start\: :ref:`int`, old_lines\: :ref:`int`, new_lines\: :ref:`int`\ ) | + +------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Dictionary` | :ref:`create_diff_line`\ (\ new_line_no\: :ref:`int`, old_line_no\: :ref:`int`, content\: :ref:`String`, status\: :ref:`String`\ ) | + +------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Dictionary` | :ref:`create_status_file`\ (\ file_path\: :ref:`String`, change_type\: :ref:`ChangeType`, area\: :ref:`TreeArea`\ ) | + +------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`popup_error`\ (\ msg\: :ref:`String`\ ) | + +------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ .. rst-class:: classref-section-separator @@ -210,7 +210,7 @@ Method Descriptions .. rst-class:: classref-method -:ref:`bool` **_checkout_branch**\ (\ branch_name\: :ref:`String`\ ) |virtual| :ref:`🔗` +:ref:`bool` **_checkout_branch**\ (\ branch_name\: :ref:`String`\ ) |virtual| |required| :ref:`🔗` Checks out a ``branch_name`` in the VCS. @@ -222,7 +222,7 @@ Checks out a ``branch_name`` in the VCS. .. rst-class:: classref-method -|void| **_commit**\ (\ msg\: :ref:`String`\ ) |virtual| :ref:`🔗` +|void| **_commit**\ (\ msg\: :ref:`String`\ ) |virtual| |required| :ref:`🔗` Commits the currently staged changes and applies the commit ``msg`` to the resulting commit. @@ -234,7 +234,7 @@ Commits the currently staged changes and applies the commit ``msg`` to the resul .. rst-class:: classref-method -|void| **_create_branch**\ (\ branch_name\: :ref:`String`\ ) |virtual| :ref:`🔗` +|void| **_create_branch**\ (\ branch_name\: :ref:`String`\ ) |virtual| |required| :ref:`🔗` Creates a new branch named ``branch_name`` in the VCS. @@ -246,7 +246,7 @@ Creates a new branch named ``branch_name`` in the VCS. .. rst-class:: classref-method -|void| **_create_remote**\ (\ remote_name\: :ref:`String`, remote_url\: :ref:`String`\ ) |virtual| :ref:`🔗` +|void| **_create_remote**\ (\ remote_name\: :ref:`String`, remote_url\: :ref:`String`\ ) |virtual| |required| :ref:`🔗` Creates a new remote destination with name ``remote_name`` and points it to ``remote_url``. This can be an HTTPS remote or an SSH remote. @@ -258,7 +258,7 @@ Creates a new remote destination with name ``remote_name`` and points it to ``re .. rst-class:: classref-method -|void| **_discard_file**\ (\ file_path\: :ref:`String`\ ) |virtual| :ref:`🔗` +|void| **_discard_file**\ (\ file_path\: :ref:`String`\ ) |virtual| |required| :ref:`🔗` Discards the changes made in a file present at ``file_path``. @@ -270,7 +270,7 @@ Discards the changes made in a file present at ``file_path``. .. rst-class:: classref-method -|void| **_fetch**\ (\ remote\: :ref:`String`\ ) |virtual| :ref:`🔗` +|void| **_fetch**\ (\ remote\: :ref:`String`\ ) |virtual| |required| :ref:`🔗` Fetches new changes from the ``remote``, but doesn't write changes to the current working directory. Equivalent to ``git fetch``. @@ -282,7 +282,7 @@ Fetches new changes from the ``remote``, but doesn't write changes to the curren .. rst-class:: classref-method -:ref:`Array`\[:ref:`String`\] **_get_branch_list**\ (\ ) |virtual| :ref:`🔗` +:ref:`Array`\[:ref:`String`\] **_get_branch_list**\ (\ ) |virtual| |required| :ref:`🔗` Gets an instance of an :ref:`Array` of :ref:`String`\ s containing available branch names in the VCS. @@ -294,7 +294,7 @@ Gets an instance of an :ref:`Array` of :ref:`String`\ .. rst-class:: classref-method -:ref:`String` **_get_current_branch_name**\ (\ ) |virtual| :ref:`🔗` +:ref:`String` **_get_current_branch_name**\ (\ ) |virtual| |required| :ref:`🔗` Gets the current branch name defined in the VCS. @@ -306,7 +306,7 @@ Gets the current branch name defined in the VCS. .. rst-class:: classref-method -:ref:`Array`\[:ref:`Dictionary`\] **_get_diff**\ (\ identifier\: :ref:`String`, area\: :ref:`int`\ ) |virtual| :ref:`🔗` +:ref:`Array`\[:ref:`Dictionary`\] **_get_diff**\ (\ identifier\: :ref:`String`, area\: :ref:`int`\ ) |virtual| |required| :ref:`🔗` Returns an array of :ref:`Dictionary` items (see :ref:`create_diff_file()`, :ref:`create_diff_hunk()`, :ref:`create_diff_line()`, :ref:`add_line_diffs_into_diff_hunk()` and :ref:`add_diff_hunks_into_diff_file()`), each containing information about a diff. If ``identifier`` is a file path, returns a file diff, and if it is a commit identifier, then returns a commit diff. @@ -318,7 +318,7 @@ Returns an array of :ref:`Dictionary` items (see :ref:`create_ .. rst-class:: classref-method -:ref:`Array`\[:ref:`Dictionary`\] **_get_line_diff**\ (\ file_path\: :ref:`String`, text\: :ref:`String`\ ) |virtual| :ref:`🔗` +:ref:`Array`\[:ref:`Dictionary`\] **_get_line_diff**\ (\ file_path\: :ref:`String`, text\: :ref:`String`\ ) |virtual| |required| :ref:`🔗` Returns an :ref:`Array` of :ref:`Dictionary` items (see :ref:`create_diff_hunk()`), each containing a line diff between a file at ``file_path`` and the ``text`` which is passed in. @@ -330,7 +330,7 @@ Returns an :ref:`Array` of :ref:`Dictionary` item .. rst-class:: classref-method -:ref:`Array`\[:ref:`Dictionary`\] **_get_modified_files_data**\ (\ ) |virtual| :ref:`🔗` +:ref:`Array`\[:ref:`Dictionary`\] **_get_modified_files_data**\ (\ ) |virtual| |required| :ref:`🔗` Returns an :ref:`Array` of :ref:`Dictionary` items (see :ref:`create_status_file()`), each containing the status data of every modified file in the project folder. @@ -342,7 +342,7 @@ Returns an :ref:`Array` of :ref:`Dictionary` item .. rst-class:: classref-method -:ref:`Array`\[:ref:`Dictionary`\] **_get_previous_commits**\ (\ max_commits\: :ref:`int`\ ) |virtual| :ref:`🔗` +:ref:`Array`\[:ref:`Dictionary`\] **_get_previous_commits**\ (\ max_commits\: :ref:`int`\ ) |virtual| |required| :ref:`🔗` Returns an :ref:`Array` of :ref:`Dictionary` items (see :ref:`create_commit()`), each containing the data for a past commit. @@ -354,7 +354,7 @@ Returns an :ref:`Array` of :ref:`Dictionary` item .. rst-class:: classref-method -:ref:`Array`\[:ref:`String`\] **_get_remotes**\ (\ ) |virtual| :ref:`🔗` +:ref:`Array`\[:ref:`String`\] **_get_remotes**\ (\ ) |virtual| |required| :ref:`🔗` Returns an :ref:`Array` of :ref:`String`\ s, each containing the name of a remote configured in the VCS. @@ -366,7 +366,7 @@ Returns an :ref:`Array` of :ref:`String`\ s, each con .. rst-class:: classref-method -:ref:`String` **_get_vcs_name**\ (\ ) |virtual| :ref:`🔗` +:ref:`String` **_get_vcs_name**\ (\ ) |virtual| |required| :ref:`🔗` Returns the name of the underlying VCS provider. @@ -378,7 +378,7 @@ Returns the name of the underlying VCS provider. .. rst-class:: classref-method -:ref:`bool` **_initialize**\ (\ project_path\: :ref:`String`\ ) |virtual| :ref:`🔗` +:ref:`bool` **_initialize**\ (\ project_path\: :ref:`String`\ ) |virtual| |required| :ref:`🔗` Initializes the VCS plugin when called from the editor. Returns whether or not the plugin was successfully initialized. A VCS project is initialized at ``project_path``. @@ -390,7 +390,7 @@ Initializes the VCS plugin when called from the editor. Returns whether or not t .. rst-class:: classref-method -|void| **_pull**\ (\ remote\: :ref:`String`\ ) |virtual| :ref:`🔗` +|void| **_pull**\ (\ remote\: :ref:`String`\ ) |virtual| |required| :ref:`🔗` Pulls changes from the remote. This can give rise to merge conflicts. @@ -402,7 +402,7 @@ Pulls changes from the remote. This can give rise to merge conflicts. .. rst-class:: classref-method -|void| **_push**\ (\ remote\: :ref:`String`, force\: :ref:`bool`\ ) |virtual| :ref:`🔗` +|void| **_push**\ (\ remote\: :ref:`String`, force\: :ref:`bool`\ ) |virtual| |required| :ref:`🔗` Pushes changes to the ``remote``. If ``force`` is ``true``, a force push will override the change history already present on the remote. @@ -414,7 +414,7 @@ Pushes changes to the ``remote``. If ``force`` is ``true``, a force push will ov .. rst-class:: classref-method -|void| **_remove_branch**\ (\ branch_name\: :ref:`String`\ ) |virtual| :ref:`🔗` +|void| **_remove_branch**\ (\ branch_name\: :ref:`String`\ ) |virtual| |required| :ref:`🔗` Remove a branch from the local VCS. @@ -426,7 +426,7 @@ Remove a branch from the local VCS. .. rst-class:: classref-method -|void| **_remove_remote**\ (\ remote_name\: :ref:`String`\ ) |virtual| :ref:`🔗` +|void| **_remove_remote**\ (\ remote_name\: :ref:`String`\ ) |virtual| |required| :ref:`🔗` Remove a remote from the local VCS. @@ -438,7 +438,7 @@ Remove a remote from the local VCS. .. rst-class:: classref-method -|void| **_set_credentials**\ (\ username\: :ref:`String`, password\: :ref:`String`, ssh_public_key_path\: :ref:`String`, ssh_private_key_path\: :ref:`String`, ssh_passphrase\: :ref:`String`\ ) |virtual| :ref:`🔗` +|void| **_set_credentials**\ (\ username\: :ref:`String`, password\: :ref:`String`, ssh_public_key_path\: :ref:`String`, ssh_private_key_path\: :ref:`String`, ssh_passphrase\: :ref:`String`\ ) |virtual| |required| :ref:`🔗` Set user credentials in the underlying VCS. ``username`` and ``password`` are used only during HTTPS authentication unless not already mentioned in the remote URL. ``ssh_public_key_path``, ``ssh_private_key_path``, and ``ssh_passphrase`` are only used during SSH authentication. @@ -450,7 +450,7 @@ Set user credentials in the underlying VCS. ``username`` and ``password`` are us .. rst-class:: classref-method -:ref:`bool` **_shut_down**\ (\ ) |virtual| :ref:`🔗` +:ref:`bool` **_shut_down**\ (\ ) |virtual| |required| :ref:`🔗` Shuts down VCS plugin instance. Called when the user either closes the editor or shuts down the VCS plugin through the editor UI. @@ -462,7 +462,7 @@ Shuts down VCS plugin instance. Called when the user either closes the editor or .. rst-class:: classref-method -|void| **_stage_file**\ (\ file_path\: :ref:`String`\ ) |virtual| :ref:`🔗` +|void| **_stage_file**\ (\ file_path\: :ref:`String`\ ) |virtual| |required| :ref:`🔗` Stages the file present at ``file_path`` to the staged area. @@ -474,7 +474,7 @@ Stages the file present at ``file_path`` to the staged area. .. rst-class:: classref-method -|void| **_unstage_file**\ (\ file_path\: :ref:`String`\ ) |virtual| :ref:`🔗` +|void| **_unstage_file**\ (\ file_path\: :ref:`String`\ ) |virtual| |required| :ref:`🔗` Unstages the file present at ``file_path`` from the staged area to the unstaged area. @@ -575,6 +575,7 @@ Helper function to create a :ref:`Dictionary` used by editor t Pops up an error message in the editor which is shown as coming from the underlying VCS. Use this to show VCS specific error messages. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_encodedobjectasid.rst b/classes/class_encodedobjectasid.rst index 600f77725..c88c61c90 100644 --- a/classes/class_encodedobjectasid.rst +++ b/classes/class_encodedobjectasid.rst @@ -58,6 +58,7 @@ Property Descriptions The :ref:`Object` identifier stored in this **EncodedObjectAsID** instance. The object instance can be retrieved with :ref:`@GlobalScope.instance_from_id()`. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_enetconnection.rst b/classes/class_enetconnection.rst index d9beb1f99..04ee0b45f 100644 --- a/classes/class_enetconnection.rst +++ b/classes/class_enetconnection.rst @@ -418,7 +418,7 @@ Returns the list of peers associated with this host. :ref:`float` **pop_statistic**\ (\ statistic\: :ref:`HostStatistic`\ ) :ref:`🔗` -Returns and resets host statistics. See :ref:`HostStatistic` for more info. +Returns and resets host statistics. .. rst-class:: classref-item-separator @@ -467,6 +467,7 @@ This is useful as it serves to establish entries in NAT routing tables on all de This requires forward knowledge of a prospective client's address and communication port as seen by the public internet - after any NAT devices have handled their connection request. This information can be obtained by a `STUN `__ service, and must be handed off to your host by an entity that is not the prospective client. This will never work for a client behind a Symmetric NAT due to the nature of the Symmetric NAT routing algorithm, as their IP and Port cannot be known beforehand. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_enetmultiplayerpeer.rst b/classes/class_enetmultiplayerpeer.rst index 1cd6dce3a..6ff18eaef 100644 --- a/classes/class_enetmultiplayerpeer.rst +++ b/classes/class_enetmultiplayerpeer.rst @@ -167,6 +167,7 @@ Returns the :ref:`ENetPacketPeer` associated to the given The IP used when creating a server. This is set to the wildcard ``"*"`` by default, which binds to all available interfaces. The given IP needs to be in IPv4 or IPv6 address format, for example: ``"192.168.1.1"``. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_enetpacketpeer.rst b/classes/class_enetpacketpeer.rst index d5b444ad6..2973310ce 100644 --- a/classes/class_enetpacketpeer.rst +++ b/classes/class_enetpacketpeer.rst @@ -143,7 +143,7 @@ The peer is currently connected and ready to communicate with. :ref:`PeerState` **STATE_DISCONNECT_LATER** = ``6`` -The peer is slated to disconnect after it has no more outgoing packets to send. +The peer is expected to disconnect after it has no more outgoing packets to send. .. _class_ENetPacketPeer_constant_STATE_DISCONNECTING: @@ -403,7 +403,7 @@ Returns the remote port of this peer. :ref:`PeerState` **get_state**\ (\ ) |const| :ref:`🔗` -Returns the current peer state. See :ref:`PeerState`. +Returns the current peer state. .. rst-class:: classref-item-separator @@ -415,7 +415,7 @@ Returns the current peer state. See :ref:`PeerState` **get_statistic**\ (\ statistic\: :ref:`PeerStatistic`\ ) :ref:`🔗` -Returns the requested ``statistic`` for this peer. See :ref:`PeerStatistic`. +Returns the requested ``statistic`` for this peer. .. rst-class:: classref-item-separator @@ -548,6 +548,7 @@ When the throttle has a value of ``0``, all unreliable packets are dropped by EN Intermediate values for the throttle represent intermediate probabilities between 0% and 100% of unreliable packets being sent. The bandwidth limits of the local and foreign hosts are taken into account to determine a sensible limit for the throttle probability above which it should not raise even in the best of conditions. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_engine.rst b/classes/class_engine.rst index 6c83a23ca..46d425051 100644 --- a/classes/class_engine.rst +++ b/classes/class_engine.rst @@ -53,59 +53,61 @@ Methods .. table:: :widths: auto - +------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`String` | :ref:`get_architecture_name`\ (\ ) |const| | - +------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Dictionary` | :ref:`get_author_info`\ (\ ) |const| | - +------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Array`\[:ref:`Dictionary`\] | :ref:`get_copyright_info`\ (\ ) |const| | - +------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Dictionary` | :ref:`get_donor_info`\ (\ ) |const| | - +------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`get_frames_drawn`\ (\ ) | - +------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`float` | :ref:`get_frames_per_second`\ (\ ) |const| | - +------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Dictionary` | :ref:`get_license_info`\ (\ ) |const| | - +------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`String` | :ref:`get_license_text`\ (\ ) |const| | - +------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`MainLoop` | :ref:`get_main_loop`\ (\ ) |const| | - +------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`get_physics_frames`\ (\ ) |const| | - +------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`float` | :ref:`get_physics_interpolation_fraction`\ (\ ) |const| | - +------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`get_process_frames`\ (\ ) |const| | - +------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`ScriptLanguage` | :ref:`get_script_language`\ (\ index\: :ref:`int`\ ) |const| | - +------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`get_script_language_count`\ (\ ) | - +------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Object` | :ref:`get_singleton`\ (\ name\: :ref:`StringName`\ ) |const| | - +------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`PackedStringArray` | :ref:`get_singleton_list`\ (\ ) |const| | - +------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Dictionary` | :ref:`get_version_info`\ (\ ) |const| | - +------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`String` | :ref:`get_write_movie_path`\ (\ ) |const| | - +------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`has_singleton`\ (\ name\: :ref:`StringName`\ ) |const| | - +------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`is_editor_hint`\ (\ ) |const| | - +------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`is_embedded_in_editor`\ (\ ) |const| | - +------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`is_in_physics_frame`\ (\ ) |const| | - +------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Error` | :ref:`register_script_language`\ (\ language\: :ref:`ScriptLanguage`\ ) | - +------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`register_singleton`\ (\ name\: :ref:`StringName`, instance\: :ref:`Object`\ ) | - +------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Error` | :ref:`unregister_script_language`\ (\ language\: :ref:`ScriptLanguage`\ ) | - +------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`unregister_singleton`\ (\ name\: :ref:`StringName`\ ) | - +------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------+ + +----------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Array`\[:ref:`ScriptBacktrace`\] | :ref:`capture_script_backtraces`\ (\ include_variables\: :ref:`bool` = false\ ) |const| | + +----------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`get_architecture_name`\ (\ ) |const| | + +----------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Dictionary` | :ref:`get_author_info`\ (\ ) |const| | + +----------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Array`\[:ref:`Dictionary`\] | :ref:`get_copyright_info`\ (\ ) |const| | + +----------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Dictionary` | :ref:`get_donor_info`\ (\ ) |const| | + +----------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`get_frames_drawn`\ (\ ) | + +----------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`get_frames_per_second`\ (\ ) |const| | + +----------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Dictionary` | :ref:`get_license_info`\ (\ ) |const| | + +----------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`get_license_text`\ (\ ) |const| | + +----------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`MainLoop` | :ref:`get_main_loop`\ (\ ) |const| | + +----------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`get_physics_frames`\ (\ ) |const| | + +----------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`get_physics_interpolation_fraction`\ (\ ) |const| | + +----------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`get_process_frames`\ (\ ) |const| | + +----------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`ScriptLanguage` | :ref:`get_script_language`\ (\ index\: :ref:`int`\ ) |const| | + +----------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`get_script_language_count`\ (\ ) | + +----------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Object` | :ref:`get_singleton`\ (\ name\: :ref:`StringName`\ ) |const| | + +----------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`PackedStringArray` | :ref:`get_singleton_list`\ (\ ) |const| | + +----------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Dictionary` | :ref:`get_version_info`\ (\ ) |const| | + +----------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`get_write_movie_path`\ (\ ) |const| | + +----------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`has_singleton`\ (\ name\: :ref:`StringName`\ ) |const| | + +----------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`is_editor_hint`\ (\ ) |const| | + +----------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`is_embedded_in_editor`\ (\ ) |const| | + +----------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`is_in_physics_frame`\ (\ ) |const| | + +----------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Error` | :ref:`register_script_language`\ (\ language\: :ref:`ScriptLanguage`\ ) | + +----------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`register_singleton`\ (\ name\: :ref:`StringName`, instance\: :ref:`Object`\ ) | + +----------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Error` | :ref:`unregister_script_language`\ (\ language\: :ref:`ScriptLanguage`\ ) | + +----------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`unregister_singleton`\ (\ name\: :ref:`StringName`\ ) | + +----------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------+ .. rst-class:: classref-section-separator @@ -274,13 +276,31 @@ This value affects :ref:`Timer`, :ref:`SceneTreeTimer`\[:ref:`ScriptBacktrace`\] **capture_script_backtraces**\ (\ include_variables\: :ref:`bool` = false\ ) |const| :ref:`🔗` + +Captures and returns backtraces from all registered script languages. + +By default, the returned :ref:`ScriptBacktrace` will only contain stack frames in editor builds and debug builds. To enable them for release builds as well, you need to enable :ref:`ProjectSettings.debug/settings/gdscript/always_track_call_stacks`. + +If ``include_variables`` is ``true``, the backtrace will also include the names and values of any global variables (e.g. autoload singletons) at the point of the capture, as well as local variables and class member variables at each stack frame. This will however will only be respected when running the game with a debugger attached, like when running the game from the editor. To enable it for export builds as well, you need to enable :ref:`ProjectSettings.debug/settings/gdscript/always_track_local_variables`. + +\ **Warning:** When ``include_variables`` is ``true``, any captured variables can potentially (e.g. with GDScript backtraces) be their actual values, including any object references. This means that storing such a :ref:`ScriptBacktrace` will prevent those objects from being deallocated, so it's generally recommended not to do so. + +.. rst-class:: classref-item-separator + +---- + .. _class_Engine_method_get_architecture_name: .. rst-class:: classref-method :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. @@ -424,7 +444,7 @@ This method can be used to run expensive logic less often without relying on a : public override void _PhysicsProcess(double delta) { base._PhysicsProcess(delta); - + if (Engine.GetPhysicsFrames() % 2 == 0) { // Run expensive logic only once every 2 physics frames here. @@ -473,7 +493,7 @@ This method can be used to run expensive logic less often without relying on a : public override void _Process(double delta) { base._Process(delta); - + if (Engine.GetProcessFrames() % 5 == 0) { // Run expensive logic only once every 5 process (render) frames here. @@ -699,10 +719,10 @@ Returns ``true`` if the engine is inside the fixed physics process step of the m # Depending on when the node is added to the tree, # prints either "true" or "false". print(Engine.is_in_physics_frame()) - + func _process(delta): print(Engine.is_in_physics_frame()) # Prints false - + func _physics_process(delta): print(Engine.is_in_physics_frame()) # Prints true @@ -769,6 +789,7 @@ Returns: Removes the singleton registered under ``name``. The singleton object is *not* freed. Only works with user-defined singletons registered with :ref:`register_singleton()`. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_enginedebugger.rst b/classes/class_enginedebugger.rst index 7b63046a0..d82501683 100644 --- a/classes/class_enginedebugger.rst +++ b/classes/class_enginedebugger.rst @@ -371,6 +371,7 @@ Unregisters the message capture with given ``name``. Unregisters a profiler with given ``name``. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_engineprofiler.rst b/classes/class_engineprofiler.rst index 8c5743818..4e4af2b30 100644 --- a/classes/class_engineprofiler.rst +++ b/classes/class_engineprofiler.rst @@ -81,6 +81,7 @@ Called once every engine iteration when the profiler is active with information Called when the profiler is enabled/disabled, along with a set of ``options``. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_environment.rst b/classes/class_environment.rst index 1c0bb82e8..0fc75ba90 100644 --- a/classes/class_environment.rst +++ b/classes/class_environment.rst @@ -835,7 +835,7 @@ Luminance of background measured in nits (candela per square meter). Only used w - |void| **set_background**\ (\ value\: :ref:`BGMode`\ ) - :ref:`BGMode` **get_background**\ (\ ) -The background mode. See :ref:`BGMode` for possible values. +The background mode. .. rst-class:: classref-item-separator @@ -1030,7 +1030,7 @@ The fog's brightness. Higher values result in brighter fog. - |void| **set_fog_mode**\ (\ value\: :ref:`FogMode`\ ) - :ref:`FogMode` **get_fog_mode**\ (\ ) -The fog mode. See :ref:`FogMode` for possible values. +The fog mode. .. rst-class:: classref-item-separator @@ -2360,6 +2360,7 @@ Returns the intensity of the glow level ``idx``. Sets the intensity of the glow level ``idx``. A value above ``0.0`` enables the level. Each level relies on the previous level. This means that enabling higher glow levels will slow down the glow effect rendering, even if previous levels aren't enabled. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_expression.rst b/classes/class_expression.rst index c9023eab8..9ec4b5693 100644 --- a/classes/class_expression.rst +++ b/classes/class_expression.rst @@ -31,10 +31,10 @@ In the following example we use a :ref:`LineEdit` node to write .. code-tab:: gdscript var expression = Expression.new() - + func _ready(): $LineEdit.text_submitted.connect(self._on_text_submitted) - + func _on_text_submitted(command): var error = expression.parse(command) if error != OK: @@ -47,12 +47,12 @@ In the following example we use a :ref:`LineEdit` node to write .. code-tab:: csharp private Expression _expression = new Expression(); - + public override void _Ready() { GetNode("LineEdit").TextSubmitted += OnTextEntered; } - + private void OnTextEntered(string command) { Error error = _expression.Parse(command); @@ -153,6 +153,7 @@ Parses the expression and returns an :ref:`Error` code. You can optionally specify names of variables that may appear in the expression with ``input_names``, so that you can bind them when it gets executed. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_externaltexture.rst b/classes/class_externaltexture.rst index e9625e94f..bf7c54a2b 100644 --- a/classes/class_externaltexture.rst +++ b/classes/class_externaltexture.rst @@ -109,6 +109,7 @@ Sets the external buffer ID. Depending on your use case, you may need to call this with data received from a platform API, for example, ``SurfaceTexture.getHardwareBuffer()`` on Android. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_fastnoiselite.rst b/classes/class_fastnoiselite.rst index 6f8bc976d..0cc6aa805 100644 --- a/classes/class_fastnoiselite.rst +++ b/classes/class_fastnoiselite.rst @@ -104,7 +104,7 @@ A lattice of points are assigned random values then interpolated based on neighb :ref:`NoiseType` **TYPE_VALUE_CUBIC** = ``4`` -Similar to Value noise, but slower. Has more variance in peaks and valleys. +Similar to value noise (:ref:`TYPE_VALUE`), but slower. Has more variance in peaks and valleys. Cubic noise can be used to avoid certain artifacts when using value noise to create a bumpmap. In general, you should always use this mode if the value noise is being used for a heightmap or bumpmap. @@ -378,7 +378,7 @@ Property Descriptions - |void| **set_cellular_distance_function**\ (\ value\: :ref:`CellularDistanceFunction`\ ) - :ref:`CellularDistanceFunction` **get_cellular_distance_function**\ (\ ) -Determines how the distance to the nearest/second-nearest point is computed. See :ref:`CellularDistanceFunction` for options. +Determines how the distance to the nearest/second-nearest point is computed. .. rst-class:: classref-item-separator @@ -412,7 +412,7 @@ Maximum distance a point can move off of its grid position. Set to ``0`` for an - |void| **set_cellular_return_type**\ (\ value\: :ref:`CellularReturnType`\ ) - :ref:`CellularReturnType` **get_cellular_return_type**\ (\ ) -Return type from cellular noise calculations. See :ref:`CellularReturnType`. +Return type from cellular noise calculations. .. rst-class:: classref-item-separator @@ -482,7 +482,7 @@ A low value places more emphasis on the lower frequency base layers, while a hig - |void| **set_domain_warp_fractal_lacunarity**\ (\ value\: :ref:`float`\ ) - :ref:`float` **get_domain_warp_fractal_lacunarity**\ (\ ) -Octave lacunarity of the fractal noise which warps the space. Increasing this value results in higher octaves producing noise with finer details and a rougher appearance. +The change in frequency between octaves, also known as "lacunarity", of the fractal noise which warps the space. Increasing this value results in higher octaves, producing noise with finer details and a rougher appearance. .. rst-class:: classref-item-separator @@ -516,7 +516,7 @@ The number of noise layers that are sampled to get the final value for the fract - |void| **set_domain_warp_fractal_type**\ (\ value\: :ref:`DomainWarpFractalType`\ ) - :ref:`DomainWarpFractalType` **get_domain_warp_fractal_type**\ (\ ) -The method for combining octaves into a fractal which is used to warp the space. See :ref:`DomainWarpFractalType`. +The method for combining octaves into a fractal which is used to warp the space. .. rst-class:: classref-item-separator @@ -550,7 +550,7 @@ Frequency of the noise which warps the space. Low frequency results in smooth no - |void| **set_domain_warp_type**\ (\ value\: :ref:`DomainWarpType`\ ) - :ref:`DomainWarpType` **get_domain_warp_type**\ (\ ) -Sets the warp algorithm. See :ref:`DomainWarpType`. +The warp algorithm. .. rst-class:: classref-item-separator @@ -637,7 +637,7 @@ Sets the strength of the fractal ping pong type. - |void| **set_fractal_type**\ (\ value\: :ref:`FractalType`\ ) - :ref:`FractalType` **get_fractal_type**\ (\ ) -The method for combining octaves into a fractal. See :ref:`FractalType`. +The method for combining octaves into a fractal. .. rst-class:: classref-item-separator @@ -688,7 +688,7 @@ The frequency for all noise types. Low frequency results in smooth noise while h - |void| **set_noise_type**\ (\ value\: :ref:`NoiseType`\ ) - :ref:`NoiseType` **get_noise_type**\ (\ ) -The noise algorithm used. See :ref:`NoiseType`. +The noise algorithm used. .. rst-class:: classref-item-separator @@ -725,6 +725,7 @@ Translate the noise input coordinates by the given :ref:`Vector3` The random number seed for all noise types. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_fbxdocument.rst b/classes/class_fbxdocument.rst index 0861a63ba..78b5f7225 100644 --- a/classes/class_fbxdocument.rst +++ b/classes/class_fbxdocument.rst @@ -26,6 +26,7 @@ The FBXDocument handles FBX documents. It provides methods to append data from b When exporting FBX from Blender, use the "FBX Units Scale" option. The "FBX Units Scale" option sets the correct scale factor and avoids manual adjustments when re-importing into Blender, such as through glTF export. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_fbxstate.rst b/classes/class_fbxstate.rst index 819a60fcf..2bc35d2c0 100644 --- a/classes/class_fbxstate.rst +++ b/classes/class_fbxstate.rst @@ -56,6 +56,7 @@ Property Descriptions If ``true``, the import process used auxiliary nodes called geometry helper nodes. These nodes help preserve the pivots and transformations of the original 3D model during import. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_fileaccess.rst b/classes/class_fileaccess.rst index b5e79a152..fd8152ebf 100644 --- a/classes/class_fileaccess.rst +++ b/classes/class_fileaccess.rst @@ -21,7 +21,7 @@ Description This class can be used to permanently store data in the user device's file system and to read from it. This is useful for storing game save data or player configuration files. -Here's a sample on how to write and read from a file: +\ **Example:** How to write and read from a file. The file named ``"save_game.dat"`` will be stored in the user data folder, as specified in the :doc:`Data paths <../tutorials/io/data_paths>` documentation: .. tabs:: @@ -31,7 +31,7 @@ Here's a sample on how to write and read from a file: func save_to_file(content): var file = FileAccess.open("user://save_game.dat", FileAccess.WRITE) file.store_string(content) - + func load_from_file(): var file = FileAccess.open("user://save_game.dat", FileAccess.READ) var content = file.get_as_text() @@ -44,7 +44,7 @@ Here's a sample on how to write and read from a file: using var file = FileAccess.Open("user://save_game.dat", FileAccess.ModeFlags.Write); file.StoreString(content); } - + public string LoadFromFile() { using var file = FileAccess.Open("user://save_game.dat", FileAccess.ModeFlags.Read); @@ -54,13 +54,13 @@ Here's a sample on how to write and read from a file: -In the example above, the file will be saved in the user data folder as specified in the :doc:`Data paths <../tutorials/io/data_paths>` documentation. +A **FileAccess** instance has its own file cursor, which is the position in bytes in the file where the next read/write operation will occur. Functions such as :ref:`get_8()`, :ref:`get_16()`, :ref:`store_8()`, and :ref:`store_16()` will move the file cursor forward by the number of bytes read/written. The file cursor can be moved to a specific position using :ref:`seek()` or :ref:`seek_end()`, and its position can be retrieved using :ref:`get_position()`. -\ **FileAccess** will close when it's freed, which happens when it goes out of scope or when it gets assigned with ``null``. :ref:`close()` can be used to close it before then explicitly. In C# the reference must be disposed manually, which can be done with the ``using`` statement or by calling the ``Dispose`` method directly. +A **FileAccess** instance will close its file when the instance is freed. Since it inherits :ref:`RefCounted`, this happens automatically when it is no longer in use. :ref:`close()` can be called to close it earlier. In C#, the reference must be disposed manually, which can be done with the ``using`` statement or by calling the ``Dispose`` method directly. \ **Note:** To access project resources once exported, it is recommended to use :ref:`ResourceLoader` instead of **FileAccess**, as some files are converted to engine-specific formats and their original source files might not be present in the exported PCK package. If using **FileAccess**, make sure the file is included in the export by changing its import mode to **Keep File (exported as is)** in the Import dock, or, for files where this option is not available, change the non-resource export filter in the Export dialog to include the file's extension (e.g. ``*.txt``). -\ **Note:** Files are automatically closed only if the process exits "normally" (such as by clicking the window manager's close button or pressing **Alt + F4**). If you stop the project execution by pressing **F8** while the project is running, the file won't be closed as the game process will be killed. You can work around this by calling :ref:`flush()` at regular intervals. +\ **Note:** Files are automatically closed only if the process exits "normally" (such as by clicking the window manager's close button or pressing :kbd:`Alt + F4`). If you stop the project execution by pressing :kbd:`F8` while the project is running, the file won't be closed as the game process will be killed. You can work around this by calling :ref:`flush()` at regular intervals. .. rst-class:: classref-introduction-group @@ -71,6 +71,8 @@ Tutorials - :doc:`Runtime file loading and saving <../tutorials/io/runtime_file_loading_and_saving>` +- :doc:`Binary serialization API <../tutorials/io/binary_serialization_api>` + - `3D Voxel Demo `__ .. rst-class:: classref-reftable-group @@ -112,6 +114,8 @@ Methods +-------------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`get_64`\ (\ ) |const| | +-------------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`get_access_time`\ (\ file\: :ref:`String`\ ) |static| | + +-------------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`String` | :ref:`get_as_text`\ (\ skip_cr\: :ref:`bool` = false\ ) |const| | +-------------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`PackedByteArray` | :ref:`get_buffer`\ (\ length\: :ref:`int`\ ) |const| | @@ -156,6 +160,8 @@ Methods +-------------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`String` | :ref:`get_sha256`\ (\ path\: :ref:`String`\ ) |static| | +-------------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`get_size`\ (\ file\: :ref:`String`\ ) |static| | + +-------------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |bitfield|\[:ref:`UnixPermissionFlags`\] | :ref:`get_unix_permissions`\ (\ file\: :ref:`String`\ ) |static| | +-------------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`Variant` | :ref:`get_var`\ (\ allow_objects\: :ref:`bool` = false\ ) |const| | @@ -232,7 +238,7 @@ enum **ModeFlags**: :ref:`🔗` :ref:`ModeFlags` **READ** = ``1`` -Opens the file for read operations. The cursor is positioned at the beginning of the file. +Opens the file for read operations. The file cursor is positioned at the beginning of the file. .. _class_FileAccess_constant_WRITE: @@ -250,7 +256,7 @@ Opens the file for write operations. The file is created if it does not exist, a :ref:`ModeFlags` **READ_WRITE** = ``3`` -Opens the file for read and write operations. Does not truncate the file. The cursor is positioned at the beginning of the file. +Opens the file for read and write operations. Does not truncate the file. The file cursor is positioned at the beginning of the file. .. _class_FileAccess_constant_WRITE_READ: @@ -258,7 +264,7 @@ Opens the file for read and write operations. Does not truncate the file. The cu :ref:`ModeFlags` **WRITE_READ** = ``7`` -Opens the file for read and write operations. The file is created if it does not exist, and truncated if it does. The cursor is positioned at the beginning of the file. +Opens the file for read and write operations. The file is created if it does not exist, and truncated if it does. The file cursor is positioned at the beginning of the file. \ **Note:** When creating a file it must be in an already existing directory. To recursively create directories for a file path, see :ref:`DirAccess.make_dir_recursive()`. @@ -440,9 +446,7 @@ Property Descriptions If ``true``, the file is read with big-endian `endianness `__. If ``false``, the file is read with little-endian endianness. If in doubt, leave this to ``false`` as most files are written with little-endian endianness. -\ **Note:** :ref:`big_endian` is only about the file format, not the CPU type. The CPU endianness doesn't affect the default endianness for files written. - -\ **Note:** This is always reset to ``false`` whenever you open the file. Therefore, you must set :ref:`big_endian` *after* opening the file, not before. +\ **Note:** This is always reset to system endianness, which is little-endian on all supported platforms, whenever you open the file. Therefore, you must set :ref:`big_endian` *after* opening the file, not before. .. rst-class:: classref-section-separator @@ -554,7 +558,7 @@ Writes the file's buffer to disk. Flushing is automatically performed when the f :ref:`int` **get_8**\ (\ ) |const| :ref:`🔗` -Returns the next 8 bits from the file as an integer. See :ref:`store_8()` for details on what values can be stored and retrieved this way. +Returns the next 8 bits from the file as an integer. This advances the file cursor by 1 byte. See :ref:`store_8()` for details on what values can be stored and retrieved this way. .. rst-class:: classref-item-separator @@ -566,7 +570,7 @@ Returns the next 8 bits from the file as an integer. See :ref:`store_8()` **get_16**\ (\ ) |const| :ref:`🔗` -Returns the next 16 bits from the file as an integer. See :ref:`store_16()` for details on what values can be stored and retrieved this way. +Returns the next 16 bits from the file as an integer. This advances the file cursor by 2 bytes. See :ref:`store_16()` for details on what values can be stored and retrieved this way. .. rst-class:: classref-item-separator @@ -578,7 +582,7 @@ Returns the next 16 bits from the file as an integer. See :ref:`store_16()` **get_32**\ (\ ) |const| :ref:`🔗` -Returns the next 32 bits from the file as an integer. See :ref:`store_32()` for details on what values can be stored and retrieved this way. +Returns the next 32 bits from the file as an integer. This advances the file cursor by 4 bytes. See :ref:`store_32()` for details on what values can be stored and retrieved this way. .. rst-class:: classref-item-separator @@ -590,7 +594,19 @@ Returns the next 32 bits from the file as an integer. See :ref:`store_32()` **get_64**\ (\ ) |const| :ref:`🔗` -Returns the next 64 bits from the file as an integer. See :ref:`store_64()` for details on what values can be stored and retrieved this way. +Returns the next 64 bits from the file as an integer. This advances the file cursor by 8 bytes. See :ref:`store_64()` for details on what values can be stored and retrieved this way. + +.. rst-class:: classref-item-separator + +---- + +.. _class_FileAccess_method_get_access_time: + +.. rst-class:: classref-method + +:ref:`int` **get_access_time**\ (\ file\: :ref:`String`\ ) |static| :ref:`🔗` + +Returns the last time the ``file`` was accessed in Unix timestamp format, or ``0`` on error. This Unix timestamp can be converted to another format using the :ref:`Time` singleton. .. rst-class:: classref-item-separator @@ -602,7 +618,7 @@ Returns the next 64 bits from the file as an integer. See :ref:`store_64()` **get_as_text**\ (\ skip_cr\: :ref:`bool` = false\ ) |const| :ref:`🔗` -Returns the whole file as a :ref:`String`. Text is interpreted as being UTF-8 encoded. +Returns the whole file as a :ref:`String`. Text is interpreted as being UTF-8 encoded. This ignores the file cursor and does not affect it. If ``skip_cr`` is ``true``, carriage return characters (``\r``, CR) will be ignored when parsing the UTF-8, so that only line feed characters (``\n``, LF) represent a new line (Unix convention). @@ -616,7 +632,7 @@ If ``skip_cr`` is ``true``, carriage return characters (``\r``, CR) will be igno :ref:`PackedByteArray` **get_buffer**\ (\ length\: :ref:`int`\ ) |const| :ref:`🔗` -Returns next ``length`` bytes of the file as a :ref:`PackedByteArray`. +Returns next ``length`` bytes of the file as a :ref:`PackedByteArray`. This advances the file cursor by ``length`` bytes. .. rst-class:: classref-item-separator @@ -630,7 +646,7 @@ Returns next ``length`` bytes of the file as a :ref:`PackedByteArray` **get_double**\ (\ ) |const| :ref:`🔗` -Returns the next 64 bits from the file as a floating-point number. +Returns the next 64 bits from the file as a floating-point number. This advances the file cursor by 8 bytes. .. rst-class:: classref-item-separator @@ -704,7 +720,7 @@ Returns an empty :ref:`String` if an error occurred while opening :ref:`float` **get_float**\ (\ ) |const| :ref:`🔗` -Returns the next 32 bits from the file as a floating-point number. +Returns the next 32 bits from the file as a floating-point number. This advances the file cursor by 4 bytes. .. rst-class:: classref-item-separator @@ -716,7 +732,7 @@ Returns the next 32 bits from the file as a floating-point number. :ref:`float` **get_half**\ (\ ) |const| :ref:`🔗` -Returns the next 16 bits from the file as a half-precision floating-point number. +Returns the next 16 bits from the file as a half-precision floating-point number. This advances the file cursor by 2 bytes. .. rst-class:: classref-item-separator @@ -754,7 +770,7 @@ Returns the size of the file in bytes. For a pipe, returns the number of bytes a :ref:`String` **get_line**\ (\ ) |const| :ref:`🔗` -Returns the next line of the file as a :ref:`String`. The returned string doesn't include newline (``\n``) or carriage return (``\r``) characters, but does include any other leading or trailing whitespace. +Returns the next line of the file as a :ref:`String`. The returned string doesn't include newline (``\n``) or carriage return (``\r``) characters, but does include any other leading or trailing whitespace. This advances the file cursor to after the newline character at the end of the line. Text is interpreted as being UTF-8 encoded. @@ -804,7 +820,7 @@ Returns the result of the last :ref:`open()` call :ref:`String` **get_pascal_string**\ (\ ) :ref:`🔗` -Returns a :ref:`String` saved in Pascal format from the file. +Returns a :ref:`String` saved in Pascal format from the file, meaning that the length of the string is explicitly stored at the start. See :ref:`store_pascal_string()`. This may include newline characters. The file cursor is advanced after the bytes read. Text is interpreted as being UTF-8 encoded. @@ -842,7 +858,7 @@ Returns the absolute path as a :ref:`String` for the current open :ref:`int` **get_position**\ (\ ) |const| :ref:`🔗` -Returns the file cursor's position. +Returns the file cursor's position in bytes from the beginning of the file. This is the file reading/writing cursor set by :ref:`seek()` or :ref:`seek_end()` and advanced by read/write operations. .. rst-class:: classref-item-separator @@ -868,7 +884,9 @@ Returns ``true``, if file ``read only`` attribute is set. :ref:`float` **get_real**\ (\ ) |const| :ref:`🔗` -Returns the next bits from the file as a floating-point number. +Returns the next bits from the file as a floating-point number. This advances the file cursor by either 4 or 8 bytes, depending on the precision used by the Godot build that saved the file. + +If the file was saved by a Godot build compiled with the ``precision=single`` option (the default), the number of read bits for that file is 32. Otherwise, if compiled with the ``precision=double`` option, the number of read bits is 64. .. rst-class:: classref-item-separator @@ -886,6 +904,18 @@ Returns an SHA-256 :ref:`String` representing the file at the give ---- +.. _class_FileAccess_method_get_size: + +.. rst-class:: classref-method + +:ref:`int` **get_size**\ (\ file\: :ref:`String`\ ) |static| :ref:`🔗` + +Returns file size in bytes, or ``-1`` on error. + +.. rst-class:: classref-item-separator + +---- + .. _class_FileAccess_method_get_unix_permissions: .. rst-class:: classref-method @@ -906,9 +936,9 @@ Returns file UNIX permissions. :ref:`Variant` **get_var**\ (\ allow_objects\: :ref:`bool` = false\ ) |const| :ref:`🔗` -Returns the next :ref:`Variant` value from the file. If ``allow_objects`` is ``true``, decoding objects is allowed. +Returns the next :ref:`Variant` value from the file. If ``allow_objects`` is ``true``, decoding objects is allowed. This advances the file cursor by the number of bytes read. -Internally, this uses the same decoding mechanism as the :ref:`@GlobalScope.bytes_to_var()` method. +Internally, this uses the same decoding mechanism as the :ref:`@GlobalScope.bytes_to_var()` method, as described in the :doc:`Binary serialization API <../tutorials/io/binary_serialization_api>` documentation. \ **Warning:** Deserialized objects can contain code which gets executed. Do not use this option if the serialized object comes from untrusted sources to avoid potential security threats such as remote code execution. @@ -1006,7 +1036,7 @@ Resizes the file to a specified length. The file must be open in a mode that per |void| **seek**\ (\ position\: :ref:`int`\ ) :ref:`🔗` -Changes the file reading/writing cursor to the specified position (in bytes from the beginning of the file). +Changes the file reading/writing cursor to the specified position (in bytes from the beginning of the file). This changes the value returned by :ref:`get_position()`. .. rst-class:: classref-item-separator @@ -1018,9 +1048,9 @@ Changes the file reading/writing cursor to the specified position (in bytes from |void| **seek_end**\ (\ position\: :ref:`int` = 0\ ) :ref:`🔗` -Changes the file reading/writing cursor to the specified position (in bytes from the end of the file). +Changes the file reading/writing cursor to the specified position (in bytes from the end of the file). This changes the value returned by :ref:`get_position()`. -\ **Note:** This is an offset, so you should use negative numbers or the cursor will be at the end of the file. +\ **Note:** This is an offset, so you should use negative numbers or the file cursor will be at the end of the file. .. rst-class:: classref-item-separator @@ -1074,7 +1104,7 @@ Sets file UNIX permissions. :ref:`bool` **store_8**\ (\ value\: :ref:`int`\ ) :ref:`🔗` -Stores an integer as 8 bits in the file. +Stores an integer as 8 bits in the file. This advances the file cursor by 1 byte. Returns ``true`` if the operation is successful. \ **Note:** The ``value`` should lie in the interval ``[0, 255]``. Any other value will overflow and wrap around. @@ -1092,7 +1122,7 @@ To store a signed integer, use :ref:`store_64()` **store_16**\ (\ value\: :ref:`int`\ ) :ref:`🔗` -Stores an integer as 16 bits in the file. +Stores an integer as 16 bits in the file. This advances the file cursor by 2 bytes. Returns ``true`` if the operation is successful. \ **Note:** The ``value`` should lie in the interval ``[0, 2^16 - 1]``. Any other value will overflow and wrap around. @@ -1107,10 +1137,10 @@ To store a signed integer, use :ref:`store_64()` **store_32**\ (\ value\: :ref:`int`\ ) :ref:`🔗` -Stores an integer as 32 bits in the file. +Stores an integer as 32 bits in the file. This advances the file cursor by 4 bytes. Returns ``true`` if the operation is successful. \ **Note:** The ``value`` should lie in the interval ``[0, 2^32 - 1]``. Any other value will overflow and wrap around. @@ -1165,7 +1195,7 @@ To store a signed integer, use :ref:`store_64()` **store_64**\ (\ value\: :ref:`int`\ ) :ref:`🔗` -Stores an integer as 64 bits in the file. +Stores an integer as 64 bits in the file. This advances the file cursor by 8 bytes. Returns ``true`` if the operation is successful. \ **Note:** The ``value`` must lie in the interval ``[-2^63, 2^63 - 1]`` (i.e. be a valid :ref:`int` value). @@ -1181,7 +1211,7 @@ Stores an integer as 64 bits in the file. :ref:`bool` **store_buffer**\ (\ buffer\: :ref:`PackedByteArray`\ ) :ref:`🔗` -Stores the given array of bytes in the file. +Stores the given array of bytes in the file. This advances the file cursor by the number of bytes written. Returns ``true`` if the operation is successful. \ **Note:** If an error occurs, the resulting value of the file position indicator is indeterminate. @@ -1197,7 +1227,7 @@ Stores the given array of bytes in the file. Store the given :ref:`PackedStringArray` in the file as a line formatted in the CSV (Comma-Separated Values) format. You can pass a different delimiter ``delim`` to use other than the default ``","`` (comma). This delimiter must be one-character long. -Text will be encoded as UTF-8. +Text will be encoded as UTF-8. Returns ``true`` if the operation is successful. \ **Note:** If an error occurs, the resulting value of the file position indicator is indeterminate. @@ -1211,7 +1241,7 @@ Text will be encoded as UTF-8. :ref:`bool` **store_double**\ (\ value\: :ref:`float`\ ) :ref:`🔗` -Stores a floating-point number as 64 bits in the file. +Stores a floating-point number as 64 bits in the file. This advances the file cursor by 8 bytes. Returns ``true`` if the operation is successful. \ **Note:** If an error occurs, the resulting value of the file position indicator is indeterminate. @@ -1225,7 +1255,7 @@ Stores a floating-point number as 64 bits in the file. :ref:`bool` **store_float**\ (\ value\: :ref:`float`\ ) :ref:`🔗` -Stores a floating-point number as 32 bits in the file. +Stores a floating-point number as 32 bits in the file. This advances the file cursor by 4 bytes. Returns ``true`` if the operation is successful. \ **Note:** If an error occurs, the resulting value of the file position indicator is indeterminate. @@ -1239,7 +1269,9 @@ Stores a floating-point number as 32 bits in the file. :ref:`bool` **store_half**\ (\ value\: :ref:`float`\ ) :ref:`🔗` -Stores a half-precision floating-point number as 16 bits in the file. +Stores a half-precision floating-point number as 16 bits in the file. This advances the file cursor by 2 bytes. Returns ``true`` if the operation is successful. + +\ **Note:** If an error occurs, the resulting value of the file position indicator is indeterminate. .. rst-class:: classref-item-separator @@ -1251,7 +1283,7 @@ Stores a half-precision floating-point number as 16 bits in the file. :ref:`bool` **store_line**\ (\ line\: :ref:`String`\ ) :ref:`🔗` -Stores ``line`` in the file followed by a newline character (``\n``), encoding the text as UTF-8. +Stores ``line`` in the file followed by a newline character (``\n``), encoding the text as UTF-8. This advances the file cursor by the length of the line, after the newline character. The amount of bytes written depends on the UTF-8 encoded bytes, which may be different from :ref:`String.length()` which counts the number of UTF-32 codepoints. Returns ``true`` if the operation is successful. \ **Note:** If an error occurs, the resulting value of the file position indicator is indeterminate. @@ -1265,9 +1297,7 @@ Stores ``line`` in the file followed by a newline character (``\n``), encoding t :ref:`bool` **store_pascal_string**\ (\ string\: :ref:`String`\ ) :ref:`🔗` -Stores the given :ref:`String` as a line in the file in Pascal format (i.e. also store the length of the string). - -Text will be encoded as UTF-8. +Stores the given :ref:`String` as a line in the file in Pascal format (i.e. also store the length of the string). Text will be encoded as UTF-8. This advances the file cursor by the number of bytes written depending on the UTF-8 encoded bytes, which may be different from :ref:`String.length()` which counts the number of UTF-32 codepoints. Returns ``true`` if the operation is successful. \ **Note:** If an error occurs, the resulting value of the file position indicator is indeterminate. @@ -1281,7 +1311,9 @@ Text will be encoded as UTF-8. :ref:`bool` **store_real**\ (\ value\: :ref:`float`\ ) :ref:`🔗` -Stores a floating-point number in the file. +Stores a floating-point number in the file. This advances the file cursor by either 4 or 8 bytes, depending on the precision used by the current Godot build. + +If using a Godot build compiled with the ``precision=single`` option (the default), this method will save a 32-bit float. Otherwise, if compiled with the ``precision=double`` option, this will save a 64-bit float. Returns ``true`` if the operation is successful. \ **Note:** If an error occurs, the resulting value of the file position indicator is indeterminate. @@ -1295,7 +1327,7 @@ Stores a floating-point number in the file. :ref:`bool` **store_string**\ (\ string\: :ref:`String`\ ) :ref:`🔗` -Stores ``string`` in the file without a newline character (``\n``), encoding the text as UTF-8. +Stores ``string`` in the file without a newline character (``\n``), encoding the text as UTF-8. This advances the file cursor by the length of the string in UTF-8 encoded bytes, which may be different from :ref:`String.length()` which counts the number of UTF-32 codepoints. Returns ``true`` if the operation is successful. \ **Note:** This method is intended to be used to write text files. The string is stored as a UTF-8 encoded buffer without string length or terminating zero, which means that it can't be loaded back easily. If you want to store a retrievable string in a binary file, consider using :ref:`store_pascal_string()` instead. For retrieving strings from a text file, you can use ``get_buffer(length).get_string_from_utf8()`` (if you know the length) or :ref:`get_as_text()`. @@ -1311,15 +1343,16 @@ Stores ``string`` in the file without a newline character (``\n``), encoding the :ref:`bool` **store_var**\ (\ value\: :ref:`Variant`, full_objects\: :ref:`bool` = false\ ) :ref:`🔗` -Stores any Variant value in the file. If ``full_objects`` is ``true``, encoding objects is allowed (and can potentially include code). +Stores any Variant value in the file. If ``full_objects`` is ``true``, encoding objects is allowed (and can potentially include code). This advances the file cursor by the number of bytes written. Returns ``true`` if the operation is successful. -Internally, this uses the same encoding mechanism as the :ref:`@GlobalScope.var_to_bytes()` method. +Internally, this uses the same encoding mechanism as the :ref:`@GlobalScope.var_to_bytes()` method, as described in the :doc:`Binary serialization API <../tutorials/io/binary_serialization_api>` documentation. \ **Note:** Not all properties are included. Only properties that are configured with the :ref:`@GlobalScope.PROPERTY_USAGE_STORAGE` flag set will be serialized. You can add a new usage flag to a property by overriding the :ref:`Object._get_property_list()` method in your class. You can also check how property usage is configured by calling :ref:`Object._get_property_list()`. See :ref:`PropertyUsageFlags` for the possible usage flags. \ **Note:** If an error occurs, the resulting value of the file position indicator is indeterminate. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_filedialog.rst b/classes/class_filedialog.rst index 14ee10481..d0d281e12 100644 --- a/classes/class_filedialog.rst +++ b/classes/class_filedialog.rst @@ -29,39 +29,53 @@ Properties .. table:: :widths: auto - +---------------------------------------------------+-----------------------------------------------------------------------------+------------------------------------------------------------------------------------------+ - | :ref:`Access` | :ref:`access` | ``0`` | - +---------------------------------------------------+-----------------------------------------------------------------------------+------------------------------------------------------------------------------------------+ - | :ref:`String` | :ref:`current_dir` | | - +---------------------------------------------------+-----------------------------------------------------------------------------+------------------------------------------------------------------------------------------+ - | :ref:`String` | :ref:`current_file` | | - +---------------------------------------------------+-----------------------------------------------------------------------------+------------------------------------------------------------------------------------------+ - | :ref:`String` | :ref:`current_path` | | - +---------------------------------------------------+-----------------------------------------------------------------------------+------------------------------------------------------------------------------------------+ - | :ref:`bool` | dialog_hide_on_ok | ``false`` (overrides :ref:`AcceptDialog`) | - +---------------------------------------------------+-----------------------------------------------------------------------------+------------------------------------------------------------------------------------------+ - | :ref:`FileMode` | :ref:`file_mode` | ``4`` | - +---------------------------------------------------+-----------------------------------------------------------------------------+------------------------------------------------------------------------------------------+ - | :ref:`String` | :ref:`filename_filter` | ``""`` | - +---------------------------------------------------+-----------------------------------------------------------------------------+------------------------------------------------------------------------------------------+ - | :ref:`PackedStringArray` | :ref:`filters` | ``PackedStringArray()`` | - +---------------------------------------------------+-----------------------------------------------------------------------------+------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`mode_overrides_title` | ``true`` | - +---------------------------------------------------+-----------------------------------------------------------------------------+------------------------------------------------------------------------------------------+ - | :ref:`String` | ok_button_text | ``"Save"`` (overrides :ref:`AcceptDialog`) | - +---------------------------------------------------+-----------------------------------------------------------------------------+------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`option_count` | ``0`` | - +---------------------------------------------------+-----------------------------------------------------------------------------+------------------------------------------------------------------------------------------+ - | :ref:`String` | :ref:`root_subfolder` | ``""`` | - +---------------------------------------------------+-----------------------------------------------------------------------------+------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`show_hidden_files` | ``false`` | - +---------------------------------------------------+-----------------------------------------------------------------------------+------------------------------------------------------------------------------------------+ - | :ref:`Vector2i` | size | ``Vector2i(640, 360)`` (overrides :ref:`Window`) | - +---------------------------------------------------+-----------------------------------------------------------------------------+------------------------------------------------------------------------------------------+ - | :ref:`String` | title | ``"Save a File"`` (overrides :ref:`Window`) | - +---------------------------------------------------+-----------------------------------------------------------------------------+------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`use_native_dialog` | ``false`` | - +---------------------------------------------------+-----------------------------------------------------------------------------+------------------------------------------------------------------------------------------+ + +---------------------------------------------------+-------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------+ + | :ref:`Access` | :ref:`access` | ``0`` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`current_dir` | | + +---------------------------------------------------+-------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`current_file` | | + +---------------------------------------------------+-------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`current_path` | | + +---------------------------------------------------+-------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------+ + | :ref:`bool` | dialog_hide_on_ok | ``false`` (overrides :ref:`AcceptDialog`) | + +---------------------------------------------------+-------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------+ + | :ref:`DisplayMode` | :ref:`display_mode` | ``0`` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`favorites_enabled` | ``true`` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`file_filter_toggle_enabled` | ``true`` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------+ + | :ref:`FileMode` | :ref:`file_mode` | ``4`` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`file_sort_options_enabled` | ``true`` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`filename_filter` | ``""`` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------+ + | :ref:`PackedStringArray` | :ref:`filters` | ``PackedStringArray()`` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`folder_creation_enabled` | ``true`` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`hidden_files_toggle_enabled` | ``true`` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`layout_toggle_enabled` | ``true`` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`mode_overrides_title` | ``true`` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`option_count` | ``0`` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`recent_list_enabled` | ``true`` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`root_subfolder` | ``""`` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`show_hidden_files` | ``false`` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------+ + | :ref:`Vector2i` | size | ``Vector2i(640, 360)`` (overrides :ref:`Window`) | + +---------------------------------------------------+-------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------+ + | :ref:`String` | title | ``"Save a File"`` (overrides :ref:`Window`) | + +---------------------------------------------------+-------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`use_native_dialog` | ``false`` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------+ .. rst-class:: classref-reftable-group @@ -96,6 +110,10 @@ Methods +---------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`invalidate`\ (\ ) | +---------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`is_customization_flag_enabled`\ (\ flag\: :ref:`Customization`\ ) |const| | + +---------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_customization_flag_enabled`\ (\ flag\: :ref:`Customization`, enabled\: :ref:`bool`\ ) | + +---------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`set_option_default`\ (\ option\: :ref:`int`, default_value_index\: :ref:`int`\ ) | +---------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`set_option_name`\ (\ option\: :ref:`int`, name\: :ref:`String`\ ) | @@ -118,20 +136,38 @@ Theme Properties +-----------------------------------+-----------------------------------------------------------------------------------+--------------------------+ | :ref:`Color` | :ref:`folder_icon_color` | ``Color(1, 1, 1, 1)`` | +-----------------------------------+-----------------------------------------------------------------------------------+--------------------------+ + | :ref:`int` | :ref:`thumbnail_size` | ``64`` | + +-----------------------------------+-----------------------------------------------------------------------------------+--------------------------+ | :ref:`Texture2D` | :ref:`back_folder` | | +-----------------------------------+-----------------------------------------------------------------------------------+--------------------------+ | :ref:`Texture2D` | :ref:`create_folder` | | +-----------------------------------+-----------------------------------------------------------------------------------+--------------------------+ + | :ref:`Texture2D` | :ref:`favorite` | | + +-----------------------------------+-----------------------------------------------------------------------------------+--------------------------+ + | :ref:`Texture2D` | :ref:`favorite_down` | | + +-----------------------------------+-----------------------------------------------------------------------------------+--------------------------+ + | :ref:`Texture2D` | :ref:`favorite_up` | | + +-----------------------------------+-----------------------------------------------------------------------------------+--------------------------+ | :ref:`Texture2D` | :ref:`file` | | +-----------------------------------+-----------------------------------------------------------------------------------+--------------------------+ + | :ref:`Texture2D` | :ref:`file_thumbnail` | | + +-----------------------------------+-----------------------------------------------------------------------------------+--------------------------+ | :ref:`Texture2D` | :ref:`folder` | | +-----------------------------------+-----------------------------------------------------------------------------------+--------------------------+ + | :ref:`Texture2D` | :ref:`folder_thumbnail` | | + +-----------------------------------+-----------------------------------------------------------------------------------+--------------------------+ | :ref:`Texture2D` | :ref:`forward_folder` | | +-----------------------------------+-----------------------------------------------------------------------------------+--------------------------+ + | :ref:`Texture2D` | :ref:`list_mode` | | + +-----------------------------------+-----------------------------------------------------------------------------------+--------------------------+ | :ref:`Texture2D` | :ref:`parent_folder` | | +-----------------------------------+-----------------------------------------------------------------------------------+--------------------------+ | :ref:`Texture2D` | :ref:`reload` | | +-----------------------------------+-----------------------------------------------------------------------------------+--------------------------+ + | :ref:`Texture2D` | :ref:`sort` | | + +-----------------------------------+-----------------------------------------------------------------------------------+--------------------------+ + | :ref:`Texture2D` | :ref:`thumbnail_mode` | | + +-----------------------------------+-----------------------------------------------------------------------------------+--------------------------+ | :ref:`Texture2D` | :ref:`toggle_filename_filter` | | +-----------------------------------+-----------------------------------------------------------------------------------+--------------------------+ | :ref:`Texture2D` | :ref:`toggle_hidden` | | @@ -279,6 +315,112 @@ The dialog only allows accessing files under user data path (``user://``). The dialog allows accessing files on the whole file system. +.. rst-class:: classref-item-separator + +---- + +.. _enum_FileDialog_DisplayMode: + +.. rst-class:: classref-enumeration + +enum **DisplayMode**: :ref:`🔗` + +.. _class_FileDialog_constant_DISPLAY_THUMBNAILS: + +.. rst-class:: classref-enumeration-constant + +:ref:`DisplayMode` **DISPLAY_THUMBNAILS** = ``0`` + +The dialog displays files as a grid of thumbnails. Use :ref:`thumbnail_size` to adjust their size. + +.. _class_FileDialog_constant_DISPLAY_LIST: + +.. rst-class:: classref-enumeration-constant + +:ref:`DisplayMode` **DISPLAY_LIST** = ``1`` + +The dialog displays files as a list of filenames. + +.. rst-class:: classref-item-separator + +---- + +.. _enum_FileDialog_Customization: + +.. rst-class:: classref-enumeration + +enum **Customization**: :ref:`🔗` + +.. _class_FileDialog_constant_CUSTOMIZATION_HIDDEN_FILES: + +.. rst-class:: classref-enumeration-constant + +:ref:`Customization` **CUSTOMIZATION_HIDDEN_FILES** = ``0`` + +Toggles visibility of the favorite button, and the favorite list on the left side of the dialog. + +Equivalent to :ref:`hidden_files_toggle_enabled`. + +.. _class_FileDialog_constant_CUSTOMIZATION_CREATE_FOLDER: + +.. rst-class:: classref-enumeration-constant + +:ref:`Customization` **CUSTOMIZATION_CREATE_FOLDER** = ``1`` + +If enabled, shows the button for creating new directories (when using :ref:`FILE_MODE_OPEN_DIR`, :ref:`FILE_MODE_OPEN_ANY`, or :ref:`FILE_MODE_SAVE_FILE`). + +Equivalent to :ref:`folder_creation_enabled`. + +.. _class_FileDialog_constant_CUSTOMIZATION_FILE_FILTER: + +.. rst-class:: classref-enumeration-constant + +:ref:`Customization` **CUSTOMIZATION_FILE_FILTER** = ``2`` + +If enabled, shows the toggle file filter button. + +Equivalent to :ref:`file_filter_toggle_enabled`. + +.. _class_FileDialog_constant_CUSTOMIZATION_FILE_SORT: + +.. rst-class:: classref-enumeration-constant + +:ref:`Customization` **CUSTOMIZATION_FILE_SORT** = ``3`` + +If enabled, shows the file sorting options button. + +Equivalent to :ref:`file_sort_options_enabled`. + +.. _class_FileDialog_constant_CUSTOMIZATION_FAVORITES: + +.. rst-class:: classref-enumeration-constant + +:ref:`Customization` **CUSTOMIZATION_FAVORITES** = ``4`` + +If enabled, shows the toggle favorite button and favorite list on the left side of the dialog. + +Equivalent to :ref:`favorites_enabled`. + +.. _class_FileDialog_constant_CUSTOMIZATION_RECENT: + +.. rst-class:: classref-enumeration-constant + +:ref:`Customization` **CUSTOMIZATION_RECENT** = ``5`` + +If enabled, shows the recent directories list on the left side of the dialog. + +Equivalent to :ref:`recent_list_enabled`. + +.. _class_FileDialog_constant_CUSTOMIZATION_LAYOUT: + +.. rst-class:: classref-enumeration-constant + +:ref:`Customization` **CUSTOMIZATION_LAYOUT** = ``6`` + +If enabled, shows the layout switch buttons (list/thumbnails). + +Equivalent to :ref:`layout_toggle_enabled`. + .. rst-class:: classref-section-separator ---- @@ -299,7 +441,7 @@ Property Descriptions - |void| **set_access**\ (\ value\: :ref:`Access`\ ) - :ref:`Access` **get_access**\ (\ ) -The file system access scope. See :ref:`Access` constants. +The file system access scope. \ **Warning:** In Web builds, FileDialog cannot access the host file system. In sandboxed Linux and macOS environments, :ref:`use_native_dialog` is automatically used to allow limited access to host file system. @@ -360,6 +502,57 @@ The currently selected file path of the file dialog. ---- +.. _class_FileDialog_property_display_mode: + +.. rst-class:: classref-property + +:ref:`DisplayMode` **display_mode** = ``0`` :ref:`🔗` + +.. rst-class:: classref-property-setget + +- |void| **set_display_mode**\ (\ value\: :ref:`DisplayMode`\ ) +- :ref:`DisplayMode` **get_display_mode**\ (\ ) + +Display mode of the dialog's file list. + +.. rst-class:: classref-item-separator + +---- + +.. _class_FileDialog_property_favorites_enabled: + +.. rst-class:: classref-property + +:ref:`bool` **favorites_enabled** = ``true`` :ref:`🔗` + +.. rst-class:: classref-property-setget + +- |void| **set_customization_flag_enabled**\ (\ flag\: :ref:`Customization`, enabled\: :ref:`bool`\ ) +- :ref:`bool` **is_customization_flag_enabled**\ (\ flag\: :ref:`Customization`\ ) |const| + +If ``true``, shows the toggle favorite button and favorite list on the left side of the dialog. + +.. rst-class:: classref-item-separator + +---- + +.. _class_FileDialog_property_file_filter_toggle_enabled: + +.. rst-class:: classref-property + +:ref:`bool` **file_filter_toggle_enabled** = ``true`` :ref:`🔗` + +.. rst-class:: classref-property-setget + +- |void| **set_customization_flag_enabled**\ (\ flag\: :ref:`Customization`, enabled\: :ref:`bool`\ ) +- :ref:`bool` **is_customization_flag_enabled**\ (\ flag\: :ref:`Customization`\ ) |const| + +If ``true``, shows the toggle file filter button. + +.. rst-class:: classref-item-separator + +---- + .. _class_FileDialog_property_file_mode: .. rst-class:: classref-property @@ -371,7 +564,24 @@ The currently selected file path of the file dialog. - |void| **set_file_mode**\ (\ value\: :ref:`FileMode`\ ) - :ref:`FileMode` **get_file_mode**\ (\ ) -The dialog's open or save mode, which affects the selection behavior. See :ref:`FileMode`. +The dialog's open or save mode, which affects the selection behavior. + +.. rst-class:: classref-item-separator + +---- + +.. _class_FileDialog_property_file_sort_options_enabled: + +.. rst-class:: classref-property + +:ref:`bool` **file_sort_options_enabled** = ``true`` :ref:`🔗` + +.. rst-class:: classref-property-setget + +- |void| **set_customization_flag_enabled**\ (\ flag\: :ref:`Customization`, enabled\: :ref:`bool`\ ) +- :ref:`bool` **is_customization_flag_enabled**\ (\ flag\: :ref:`Customization`\ ) |const| + +If ``true``, shows the file sorting options button. .. rst-class:: classref-item-separator @@ -417,6 +627,57 @@ The available file type filters. Each filter string in the array should be forma ---- +.. _class_FileDialog_property_folder_creation_enabled: + +.. rst-class:: classref-property + +:ref:`bool` **folder_creation_enabled** = ``true`` :ref:`🔗` + +.. rst-class:: classref-property-setget + +- |void| **set_customization_flag_enabled**\ (\ flag\: :ref:`Customization`, enabled\: :ref:`bool`\ ) +- :ref:`bool` **is_customization_flag_enabled**\ (\ flag\: :ref:`Customization`\ ) |const| + +If ``true``, shows the button for creating new directories (when using :ref:`FILE_MODE_OPEN_DIR`, :ref:`FILE_MODE_OPEN_ANY`, or :ref:`FILE_MODE_SAVE_FILE`). + +.. rst-class:: classref-item-separator + +---- + +.. _class_FileDialog_property_hidden_files_toggle_enabled: + +.. rst-class:: classref-property + +:ref:`bool` **hidden_files_toggle_enabled** = ``true`` :ref:`🔗` + +.. rst-class:: classref-property-setget + +- |void| **set_customization_flag_enabled**\ (\ flag\: :ref:`Customization`, enabled\: :ref:`bool`\ ) +- :ref:`bool` **is_customization_flag_enabled**\ (\ flag\: :ref:`Customization`\ ) |const| + +If ``true``, shows the toggle hidden files button. + +.. rst-class:: classref-item-separator + +---- + +.. _class_FileDialog_property_layout_toggle_enabled: + +.. rst-class:: classref-property + +:ref:`bool` **layout_toggle_enabled** = ``true`` :ref:`🔗` + +.. rst-class:: classref-property-setget + +- |void| **set_customization_flag_enabled**\ (\ flag\: :ref:`Customization`, enabled\: :ref:`bool`\ ) +- :ref:`bool` **is_customization_flag_enabled**\ (\ flag\: :ref:`Customization`\ ) |const| + +If ``true``, shows the layout switch buttons (list/thumbnails). + +.. rst-class:: classref-item-separator + +---- + .. _class_FileDialog_property_mode_overrides_title: .. rst-class:: classref-property @@ -451,6 +712,23 @@ The number of additional :ref:`OptionButton`\ s and :ref:`Ch ---- +.. _class_FileDialog_property_recent_list_enabled: + +.. rst-class:: classref-property + +:ref:`bool` **recent_list_enabled** = ``true`` :ref:`🔗` + +.. rst-class:: classref-property-setget + +- |void| **set_customization_flag_enabled**\ (\ flag\: :ref:`Customization`, enabled\: :ref:`bool`\ ) +- :ref:`bool` **is_customization_flag_enabled**\ (\ flag\: :ref:`Customization`\ ) |const| + +If ``true``, shows the recent directories list on the left side of the dialog. + +.. rst-class:: classref-item-separator + +---- + .. _class_FileDialog_property_root_subfolder: .. rst-class:: classref-property @@ -502,7 +780,7 @@ If ``true``, the dialog will show hidden files. If ``true``, and if supported by the current :ref:`DisplayServer`, OS native dialog will be used instead of custom one. -\ **Note:** On Android, it is only supported when using :ref:`ACCESS_FILESYSTEM`. For access mode :ref:`ACCESS_RESOURCES` and :ref:`ACCESS_USERDATA`, the system will fall back to custom FileDialog. +\ **Note:** On Android, it is only supported for Android 10+ devices and when using :ref:`ACCESS_FILESYSTEM`. For access mode :ref:`ACCESS_RESOURCES` and :ref:`ACCESS_USERDATA`, the system will fall back to custom FileDialog. \ **Note:** On Linux and macOS, sandboxed apps always use native dialogs to access the host file system. @@ -525,7 +803,7 @@ Method Descriptions |void| **add_filter**\ (\ filter\: :ref:`String`, description\: :ref:`String` = ""\ ) :ref:`🔗` -Adds a comma-delimited file name ``filter`` option to the **FileDialog** with an optional ``description``, which restricts what files can be picked. +Adds a comma-separated file name ``filter`` option to the **FileDialog** with an optional ``description``, which restricts what files can be picked. A ``filter`` should be of the form ``"filename.extension"``, where filename and extension can be ``*`` to match any string. Filters starting with ``.`` (i.e. empty filenames) are not allowed. @@ -677,6 +955,30 @@ Invalidate and update the current dialog content list. ---- +.. _class_FileDialog_method_is_customization_flag_enabled: + +.. rst-class:: classref-method + +:ref:`bool` **is_customization_flag_enabled**\ (\ flag\: :ref:`Customization`\ ) |const| :ref:`🔗` + +Returns ``true`` if the provided ``flag`` is enabled. + +.. rst-class:: classref-item-separator + +---- + +.. _class_FileDialog_method_set_customization_flag_enabled: + +.. rst-class:: classref-method + +|void| **set_customization_flag_enabled**\ (\ flag\: :ref:`Customization`, enabled\: :ref:`bool`\ ) :ref:`🔗` + +Toggles the specified customization ``flag``, allowing to customize features available in this **FileDialog**. See :ref:`Customization` for options. + +.. rst-class:: classref-item-separator + +---- + .. _class_FileDialog_method_set_option_default: .. rst-class:: classref-method @@ -754,6 +1056,18 @@ The color modulation applied to the folder icon. ---- +.. _class_FileDialog_theme_constant_thumbnail_size: + +.. rst-class:: classref-themeproperty + +:ref:`int` **thumbnail_size** = ``64`` :ref:`🔗` + +The size of thumbnail icons when :ref:`DISPLAY_THUMBNAILS` is enabled. + +.. rst-class:: classref-item-separator + +---- + .. _class_FileDialog_theme_icon_back_folder: .. rst-class:: classref-themeproperty @@ -778,6 +1092,42 @@ Custom icon for the create folder button. ---- +.. _class_FileDialog_theme_icon_favorite: + +.. rst-class:: classref-themeproperty + +:ref:`Texture2D` **favorite** :ref:`🔗` + +Custom icon for favorite folder button. + +.. rst-class:: classref-item-separator + +---- + +.. _class_FileDialog_theme_icon_favorite_down: + +.. rst-class:: classref-themeproperty + +:ref:`Texture2D` **favorite_down** :ref:`🔗` + +Custom icon for button to move down a favorite entry. + +.. rst-class:: classref-item-separator + +---- + +.. _class_FileDialog_theme_icon_favorite_up: + +.. rst-class:: classref-themeproperty + +:ref:`Texture2D` **favorite_up** :ref:`🔗` + +Custom icon for button to move up a favorite entry. + +.. rst-class:: classref-item-separator + +---- + .. _class_FileDialog_theme_icon_file: .. rst-class:: classref-themeproperty @@ -790,6 +1140,18 @@ Custom icon for files. ---- +.. _class_FileDialog_theme_icon_file_thumbnail: + +.. rst-class:: classref-themeproperty + +:ref:`Texture2D` **file_thumbnail** :ref:`🔗` + +Icon for files when in thumbnail mode. + +.. rst-class:: classref-item-separator + +---- + .. _class_FileDialog_theme_icon_folder: .. rst-class:: classref-themeproperty @@ -802,6 +1164,18 @@ Custom icon for folders. ---- +.. _class_FileDialog_theme_icon_folder_thumbnail: + +.. rst-class:: classref-themeproperty + +:ref:`Texture2D` **folder_thumbnail** :ref:`🔗` + +Icon for folders when in thumbnail mode. + +.. rst-class:: classref-item-separator + +---- + .. _class_FileDialog_theme_icon_forward_folder: .. rst-class:: classref-themeproperty @@ -814,6 +1188,18 @@ Custom icon for the forward arrow. ---- +.. _class_FileDialog_theme_icon_list_mode: + +.. rst-class:: classref-themeproperty + +:ref:`Texture2D` **list_mode** :ref:`🔗` + +Icon for the button that enables list mode. + +.. rst-class:: classref-item-separator + +---- + .. _class_FileDialog_theme_icon_parent_folder: .. rst-class:: classref-themeproperty @@ -838,6 +1224,30 @@ Custom icon for the reload button. ---- +.. _class_FileDialog_theme_icon_sort: + +.. rst-class:: classref-themeproperty + +:ref:`Texture2D` **sort** :ref:`🔗` + +Custom icon for the sorting options menu. + +.. rst-class:: classref-item-separator + +---- + +.. _class_FileDialog_theme_icon_thumbnail_mode: + +.. rst-class:: classref-themeproperty + +:ref:`Texture2D` **thumbnail_mode** :ref:`🔗` + +Icon for the button that enables thumbnail mode. + +.. rst-class:: classref-item-separator + +---- + .. _class_FileDialog_theme_icon_toggle_filename_filter: .. rst-class:: classref-themeproperty @@ -859,6 +1269,7 @@ Custom icon for the toggle button for the filter for file names. Custom icon for the toggle hidden button. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_filesystemdock.rst b/classes/class_filesystemdock.rst index 51812c937..88705645c 100644 --- a/classes/class_filesystemdock.rst +++ b/classes/class_filesystemdock.rst @@ -194,6 +194,7 @@ Sets the given ``path`` as currently selected, ensuring that the selected file/d Removes an :ref:`EditorResourceTooltipPlugin`. Fails if the plugin wasn't previously added. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_float.rst b/classes/class_float.rst index 54477d0aa..2efc70941 100644 --- a/classes/class_float.rst +++ b/classes/class_float.rst @@ -615,6 +615,7 @@ Returns the same value as if the ``+`` was not there. Unary ``+`` does nothing, Returns the negative value of the **float**. If positive, turns the number negative. If negative, turns the number positive. With floats, the number zero can be either positive or negative. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_flowcontainer.rst b/classes/class_flowcontainer.rst index 53c65e8c1..87b1bdeab 100644 --- a/classes/class_flowcontainer.rst +++ b/classes/class_flowcontainer.rst @@ -279,6 +279,7 @@ The horizontal separation of child nodes. The vertical separation of child nodes. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_fogmaterial.rst b/classes/class_fogmaterial.rst index 4a2b18e66..4402b1e46 100644 --- a/classes/class_fogmaterial.rst +++ b/classes/class_fogmaterial.rst @@ -155,6 +155,7 @@ The :ref:`Color` of the light emitted by the :ref:`FogVolume`. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_fogvolume.rst b/classes/class_fogvolume.rst index 8d9b06e01..871fb4586 100644 --- a/classes/class_fogvolume.rst +++ b/classes/class_fogvolume.rst @@ -109,6 +109,7 @@ The size of the **FogVolume** when :ref:`shape` \ **Note:** If :ref:`shape` is :ref:`RenderingServer.FOG_VOLUME_SHAPE_CONE` or :ref:`RenderingServer.FOG_VOLUME_SHAPE_CYLINDER`, the cone/cylinder will be adjusted to fit within the size. Non-uniform scaling of cone/cylinder shapes via the :ref:`size` property is not supported, but you can scale the **FogVolume** node instead. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_foldablecontainer.rst b/classes/class_foldablecontainer.rst new file mode 100644 index 000000000..1bb6253af --- /dev/null +++ b/classes/class_foldablecontainer.rst @@ -0,0 +1,602 @@ +:github_url: hide + +.. meta:: + :keywords: expandable, collapsible, collapse + +.. DO NOT EDIT THIS FILE!!! +.. Generated automatically from Godot engine sources. +.. Generator: https://github.com/godotengine/godot/tree/master/doc/tools/make_rst.py. +.. XML source: https://github.com/godotengine/godot/tree/master/doc/classes/FoldableContainer.xml. + +.. _class_FoldableContainer: + +FoldableContainer +================= + +**Inherits:** :ref:`Container` **<** :ref:`Control` **<** :ref:`CanvasItem` **<** :ref:`Node` **<** :ref:`Object` + +A container that can be expanded/collapsed. + +.. rst-class:: classref-introduction-group + +Description +----------- + +A container that can be expanded/collapsed, with a title that can be filled with controls, such as buttons. + +The title can be positioned at the top or bottom of the container. + +The container can be expanded or collapsed by clicking the title or by pressing ``ui_accept`` when focused. + +Child control nodes are hidden when the container is collapsed. Ignores non-control children. + +Can allow grouping with other FoldableContainers, check :ref:`foldable_group` and :ref:`FoldableGroup`. + +.. rst-class:: classref-reftable-group + +Properties +---------- + +.. table:: + :widths: auto + + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------+ + | :ref:`FocusMode` | focus_mode | ``2`` (overrides :ref:`Control`) | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------+ + | :ref:`FoldableGroup` | :ref:`foldable_group` | | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------+ + | :ref:`bool` | :ref:`folded` | ``false`` | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------+ + | :ref:`String` | :ref:`language` | ``""`` | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------+ + | :ref:`MouseFilter` | mouse_filter | ``0`` (overrides :ref:`Control`) | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------+ + | :ref:`String` | :ref:`title` | ``""`` | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------+ + | :ref:`HorizontalAlignment` | :ref:`title_alignment` | ``0`` | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------+ + | :ref:`TitlePosition` | :ref:`title_position` | ``0`` | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------+ + | :ref:`TextDirection` | :ref:`title_text_direction` | ``0`` | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------+ + | :ref:`OverrunBehavior` | :ref:`title_text_overrun_behavior` | ``0`` | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------+ + +.. rst-class:: classref-reftable-group + +Methods +------- + +.. table:: + :widths: auto + + +--------+-----------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`add_title_bar_control`\ (\ control\: :ref:`Control`\ ) | + +--------+-----------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`expand`\ (\ ) | + +--------+-----------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`fold`\ (\ ) | + +--------+-----------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`remove_title_bar_control`\ (\ control\: :ref:`Control`\ ) | + +--------+-----------------------------------------------------------------------------------------------------------------------------------------+ + +.. rst-class:: classref-reftable-group + +Theme Properties +---------------- + +.. table:: + :widths: auto + + +-----------------------------------+-----------------------------------------------------------------------------------------------------+-----------------------------------+ + | :ref:`Color` | :ref:`collapsed_font_color` | ``Color(1, 1, 1, 1)`` | + +-----------------------------------+-----------------------------------------------------------------------------------------------------+-----------------------------------+ + | :ref:`Color` | :ref:`font_color` | ``Color(0.875, 0.875, 0.875, 1)`` | + +-----------------------------------+-----------------------------------------------------------------------------------------------------+-----------------------------------+ + | :ref:`Color` | :ref:`font_outline_color` | ``Color(1, 1, 1, 1)`` | + +-----------------------------------+-----------------------------------------------------------------------------------------------------+-----------------------------------+ + | :ref:`Color` | :ref:`hover_font_color` | ``Color(0.95, 0.95, 0.95, 1)`` | + +-----------------------------------+-----------------------------------------------------------------------------------------------------+-----------------------------------+ + | :ref:`int` | :ref:`h_separation` | ``2`` | + +-----------------------------------+-----------------------------------------------------------------------------------------------------+-----------------------------------+ + | :ref:`int` | :ref:`outline_size` | ``0`` | + +-----------------------------------+-----------------------------------------------------------------------------------------------------+-----------------------------------+ + | :ref:`Font` | :ref:`font` | | + +-----------------------------------+-----------------------------------------------------------------------------------------------------+-----------------------------------+ + | :ref:`int` | :ref:`font_size` | | + +-----------------------------------+-----------------------------------------------------------------------------------------------------+-----------------------------------+ + | :ref:`Texture2D` | :ref:`expanded_arrow` | | + +-----------------------------------+-----------------------------------------------------------------------------------------------------+-----------------------------------+ + | :ref:`Texture2D` | :ref:`expanded_arrow_mirrored` | | + +-----------------------------------+-----------------------------------------------------------------------------------------------------+-----------------------------------+ + | :ref:`Texture2D` | :ref:`folded_arrow` | | + +-----------------------------------+-----------------------------------------------------------------------------------------------------+-----------------------------------+ + | :ref:`Texture2D` | :ref:`folded_arrow_mirrored` | | + +-----------------------------------+-----------------------------------------------------------------------------------------------------+-----------------------------------+ + | :ref:`StyleBox` | :ref:`focus` | | + +-----------------------------------+-----------------------------------------------------------------------------------------------------+-----------------------------------+ + | :ref:`StyleBox` | :ref:`panel` | | + +-----------------------------------+-----------------------------------------------------------------------------------------------------+-----------------------------------+ + | :ref:`StyleBox` | :ref:`title_collapsed_hover_panel` | | + +-----------------------------------+-----------------------------------------------------------------------------------------------------+-----------------------------------+ + | :ref:`StyleBox` | :ref:`title_collapsed_panel` | | + +-----------------------------------+-----------------------------------------------------------------------------------------------------+-----------------------------------+ + | :ref:`StyleBox` | :ref:`title_hover_panel` | | + +-----------------------------------+-----------------------------------------------------------------------------------------------------+-----------------------------------+ + | :ref:`StyleBox` | :ref:`title_panel` | | + +-----------------------------------+-----------------------------------------------------------------------------------------------------+-----------------------------------+ + +.. rst-class:: classref-section-separator + +---- + +.. rst-class:: classref-descriptions-group + +Signals +------- + +.. _class_FoldableContainer_signal_folding_changed: + +.. rst-class:: classref-signal + +**folding_changed**\ (\ is_folded\: :ref:`bool`\ ) :ref:`🔗` + +Emitted when the container is folded/expanded. + +.. rst-class:: classref-section-separator + +---- + +.. rst-class:: classref-descriptions-group + +Enumerations +------------ + +.. _enum_FoldableContainer_TitlePosition: + +.. rst-class:: classref-enumeration + +enum **TitlePosition**: :ref:`🔗` + +.. _class_FoldableContainer_constant_POSITION_TOP: + +.. rst-class:: classref-enumeration-constant + +:ref:`TitlePosition` **POSITION_TOP** = ``0`` + +Makes the title appear at the top of the container. + +.. _class_FoldableContainer_constant_POSITION_BOTTOM: + +.. rst-class:: classref-enumeration-constant + +:ref:`TitlePosition` **POSITION_BOTTOM** = ``1`` + +Makes the title appear at the bottom of the container. Also makes all StyleBoxes flipped vertically. + +.. rst-class:: classref-section-separator + +---- + +.. rst-class:: classref-descriptions-group + +Property Descriptions +--------------------- + +.. _class_FoldableContainer_property_foldable_group: + +.. rst-class:: classref-property + +:ref:`FoldableGroup` **foldable_group** :ref:`🔗` + +.. rst-class:: classref-property-setget + +- |void| **set_foldable_group**\ (\ value\: :ref:`FoldableGroup`\ ) +- :ref:`FoldableGroup` **get_foldable_group**\ (\ ) + +The :ref:`FoldableGroup` associated with the container. When multiple **FoldableContainer** nodes share the same group, only one of them is allowed to be unfolded. + +.. rst-class:: classref-item-separator + +---- + +.. _class_FoldableContainer_property_folded: + +.. rst-class:: classref-property + +:ref:`bool` **folded** = ``false`` :ref:`🔗` + +.. rst-class:: classref-property-setget + +- |void| **set_folded**\ (\ value\: :ref:`bool`\ ) +- :ref:`bool` **is_folded**\ (\ ) + +If ``true``, the container will becomes folded and will hide all its children. + +.. rst-class:: classref-item-separator + +---- + +.. _class_FoldableContainer_property_language: + +.. rst-class:: classref-property + +:ref:`String` **language** = ``""`` :ref:`🔗` + +.. rst-class:: classref-property-setget + +- |void| **set_language**\ (\ value\: :ref:`String`\ ) +- :ref:`String` **get_language**\ (\ ) + +Language code used for text shaping algorithms. If left empty, current locale is used instead. + +.. rst-class:: classref-item-separator + +---- + +.. _class_FoldableContainer_property_title: + +.. rst-class:: classref-property + +:ref:`String` **title** = ``""`` :ref:`🔗` + +.. rst-class:: classref-property-setget + +- |void| **set_title**\ (\ value\: :ref:`String`\ ) +- :ref:`String` **get_title**\ (\ ) + +The container's title text. + +.. rst-class:: classref-item-separator + +---- + +.. _class_FoldableContainer_property_title_alignment: + +.. rst-class:: classref-property + +:ref:`HorizontalAlignment` **title_alignment** = ``0`` :ref:`🔗` + +.. rst-class:: classref-property-setget + +- |void| **set_title_alignment**\ (\ value\: :ref:`HorizontalAlignment`\ ) +- :ref:`HorizontalAlignment` **get_title_alignment**\ (\ ) + +Title's horizontal text alignment. + +.. rst-class:: classref-item-separator + +---- + +.. _class_FoldableContainer_property_title_position: + +.. rst-class:: classref-property + +:ref:`TitlePosition` **title_position** = ``0`` :ref:`🔗` + +.. rst-class:: classref-property-setget + +- |void| **set_title_position**\ (\ value\: :ref:`TitlePosition`\ ) +- :ref:`TitlePosition` **get_title_position**\ (\ ) + +Title's position. + +.. rst-class:: classref-item-separator + +---- + +.. _class_FoldableContainer_property_title_text_direction: + +.. rst-class:: classref-property + +:ref:`TextDirection` **title_text_direction** = ``0`` :ref:`🔗` + +.. rst-class:: classref-property-setget + +- |void| **set_title_text_direction**\ (\ value\: :ref:`TextDirection`\ ) +- :ref:`TextDirection` **get_title_text_direction**\ (\ ) + +Title text writing direction. + +.. rst-class:: classref-item-separator + +---- + +.. _class_FoldableContainer_property_title_text_overrun_behavior: + +.. rst-class:: classref-property + +:ref:`OverrunBehavior` **title_text_overrun_behavior** = ``0`` :ref:`🔗` + +.. rst-class:: classref-property-setget + +- |void| **set_title_text_overrun_behavior**\ (\ value\: :ref:`OverrunBehavior`\ ) +- :ref:`OverrunBehavior` **get_title_text_overrun_behavior**\ (\ ) + +Defines the behavior of the title when the text is longer than the available space. + +.. rst-class:: classref-section-separator + +---- + +.. rst-class:: classref-descriptions-group + +Method Descriptions +------------------- + +.. _class_FoldableContainer_method_add_title_bar_control: + +.. rst-class:: classref-method + +|void| **add_title_bar_control**\ (\ control\: :ref:`Control`\ ) :ref:`🔗` + +Adds a :ref:`Control` that will be placed next to the container's title, obscuring the clickable area. Prime usage is adding :ref:`Button` nodes, but it can be any :ref:`Control`. + +The control will be added as a child of this container and removed from previous parent if necessary. The controls will be placed aligned to the right, with the first added control being the leftmost one. + +.. rst-class:: classref-item-separator + +---- + +.. _class_FoldableContainer_method_expand: + +.. rst-class:: classref-method + +|void| **expand**\ (\ ) :ref:`🔗` + +Expands the container and emits :ref:`folding_changed`. + +.. rst-class:: classref-item-separator + +---- + +.. _class_FoldableContainer_method_fold: + +.. rst-class:: classref-method + +|void| **fold**\ (\ ) :ref:`🔗` + +Folds the container and emits :ref:`folding_changed`. + +.. rst-class:: classref-item-separator + +---- + +.. _class_FoldableContainer_method_remove_title_bar_control: + +.. rst-class:: classref-method + +|void| **remove_title_bar_control**\ (\ control\: :ref:`Control`\ ) :ref:`🔗` + +Removes a :ref:`Control` added with :ref:`add_title_bar_control()`. The node is not freed automatically, you need to use :ref:`Node.queue_free()`. + +.. rst-class:: classref-section-separator + +---- + +.. rst-class:: classref-descriptions-group + +Theme Property Descriptions +--------------------------- + +.. _class_FoldableContainer_theme_color_collapsed_font_color: + +.. rst-class:: classref-themeproperty + +:ref:`Color` **collapsed_font_color** = ``Color(1, 1, 1, 1)`` :ref:`🔗` + +The title's font color when collapsed. + +.. rst-class:: classref-item-separator + +---- + +.. _class_FoldableContainer_theme_color_font_color: + +.. rst-class:: classref-themeproperty + +:ref:`Color` **font_color** = ``Color(0.875, 0.875, 0.875, 1)`` :ref:`🔗` + +The title's font color when expanded. + +.. rst-class:: classref-item-separator + +---- + +.. _class_FoldableContainer_theme_color_font_outline_color: + +.. rst-class:: classref-themeproperty + +:ref:`Color` **font_outline_color** = ``Color(1, 1, 1, 1)`` :ref:`🔗` + +The title's font outline color. + +.. rst-class:: classref-item-separator + +---- + +.. _class_FoldableContainer_theme_color_hover_font_color: + +.. rst-class:: classref-themeproperty + +:ref:`Color` **hover_font_color** = ``Color(0.95, 0.95, 0.95, 1)`` :ref:`🔗` + +The title's font hover color. + +.. rst-class:: classref-item-separator + +---- + +.. _class_FoldableContainer_theme_constant_h_separation: + +.. rst-class:: classref-themeproperty + +:ref:`int` **h_separation** = ``2`` :ref:`🔗` + +The horizontal separation between the title's icon and text, and between title bar controls. + +.. rst-class:: classref-item-separator + +---- + +.. _class_FoldableContainer_theme_constant_outline_size: + +.. rst-class:: classref-themeproperty + +:ref:`int` **outline_size** = ``0`` :ref:`🔗` + +The title's font outline size. + +.. rst-class:: classref-item-separator + +---- + +.. _class_FoldableContainer_theme_font_font: + +.. rst-class:: classref-themeproperty + +:ref:`Font` **font** :ref:`🔗` + +The title's font. + +.. rst-class:: classref-item-separator + +---- + +.. _class_FoldableContainer_theme_font_size_font_size: + +.. rst-class:: classref-themeproperty + +:ref:`int` **font_size** :ref:`🔗` + +The title's font size. + +.. rst-class:: classref-item-separator + +---- + +.. _class_FoldableContainer_theme_icon_expanded_arrow: + +.. rst-class:: classref-themeproperty + +:ref:`Texture2D` **expanded_arrow** :ref:`🔗` + +The title's icon used when expanded. + +.. rst-class:: classref-item-separator + +---- + +.. _class_FoldableContainer_theme_icon_expanded_arrow_mirrored: + +.. rst-class:: classref-themeproperty + +:ref:`Texture2D` **expanded_arrow_mirrored** :ref:`🔗` + +The title's icon used when expanded (for bottom title). + +.. rst-class:: classref-item-separator + +---- + +.. _class_FoldableContainer_theme_icon_folded_arrow: + +.. rst-class:: classref-themeproperty + +:ref:`Texture2D` **folded_arrow** :ref:`🔗` + +The title's icon used when folded (for left-to-right layouts). + +.. rst-class:: classref-item-separator + +---- + +.. _class_FoldableContainer_theme_icon_folded_arrow_mirrored: + +.. rst-class:: classref-themeproperty + +:ref:`Texture2D` **folded_arrow_mirrored** :ref:`🔗` + +The title's icon used when collapsed (for right-to-left layouts). + +.. rst-class:: classref-item-separator + +---- + +.. _class_FoldableContainer_theme_style_focus: + +.. rst-class:: classref-themeproperty + +:ref:`StyleBox` **focus** :ref:`🔗` + +Background used when **FoldableContainer** has GUI focus. The :ref:`focus` :ref:`StyleBox` is displayed *over* the base :ref:`StyleBox`, so a partially transparent :ref:`StyleBox` should be used to ensure the base :ref:`StyleBox` remains visible. A :ref:`StyleBox` that represents an outline or an underline works well for this purpose. To disable the focus visual effect, assign a :ref:`StyleBoxEmpty` resource. Note that disabling the focus visual effect will harm keyboard/controller navigation usability, so this is not recommended for accessibility reasons. + +.. rst-class:: classref-item-separator + +---- + +.. _class_FoldableContainer_theme_style_panel: + +.. rst-class:: classref-themeproperty + +:ref:`StyleBox` **panel** :ref:`🔗` + +Default background for the **FoldableContainer**. + +.. rst-class:: classref-item-separator + +---- + +.. _class_FoldableContainer_theme_style_title_collapsed_hover_panel: + +.. rst-class:: classref-themeproperty + +:ref:`StyleBox` **title_collapsed_hover_panel** :ref:`🔗` + +Background used when the mouse cursor enters the title's area when collapsed. + +.. rst-class:: classref-item-separator + +---- + +.. _class_FoldableContainer_theme_style_title_collapsed_panel: + +.. rst-class:: classref-themeproperty + +:ref:`StyleBox` **title_collapsed_panel** :ref:`🔗` + +Default background for the **FoldableContainer**'s title when collapsed. + +.. rst-class:: classref-item-separator + +---- + +.. _class_FoldableContainer_theme_style_title_hover_panel: + +.. rst-class:: classref-themeproperty + +:ref:`StyleBox` **title_hover_panel** :ref:`🔗` + +Background used when the mouse cursor enters the title's area when expanded. + +.. rst-class:: classref-item-separator + +---- + +.. _class_FoldableContainer_theme_style_title_panel: + +.. rst-class:: classref-themeproperty + +:ref:`StyleBox` **title_panel** :ref:`🔗` + +Default background for the **FoldableContainer**'s title when expanded. + +.. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` +.. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` +.. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` +.. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` +.. |static| replace:: :abbr:`static (This method doesn't need an instance to be called, so it can be called directly using the class name.)` +.. |operator| replace:: :abbr:`operator (This method describes a valid operator to use with this type as left-hand operand.)` +.. |bitfield| replace:: :abbr:`BitField (This value is an integer composed as a bitmask of the following flags.)` +.. |void| replace:: :abbr:`void (No return value.)` diff --git a/classes/class_foldablegroup.rst b/classes/class_foldablegroup.rst new file mode 100644 index 000000000..5b442b32d --- /dev/null +++ b/classes/class_foldablegroup.rst @@ -0,0 +1,131 @@ +:github_url: hide + +.. meta:: + :keywords: expandable, collapsible, collapse + +.. DO NOT EDIT THIS FILE!!! +.. Generated automatically from Godot engine sources. +.. Generator: https://github.com/godotengine/godot/tree/master/doc/tools/make_rst.py. +.. XML source: https://github.com/godotengine/godot/tree/master/doc/classes/FoldableGroup.xml. + +.. _class_FoldableGroup: + +FoldableGroup +============= + +**Inherits:** :ref:`Resource` **<** :ref:`RefCounted` **<** :ref:`Object` + +A group of foldable containers that doesn't allow more than one container to be expanded at a time. + +.. rst-class:: classref-introduction-group + +Description +----------- + +A group of :ref:`FoldableContainer`-derived nodes. Only one container can be expanded at a time. + +.. rst-class:: classref-reftable-group + +Properties +---------- + +.. table:: + :widths: auto + + +-------------------------+--------------------------------------------------------------------------+---------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`allow_folding_all` | ``false`` | + +-------------------------+--------------------------------------------------------------------------+---------------------------------------------------------------------------------------+ + | :ref:`bool` | resource_local_to_scene | ``true`` (overrides :ref:`Resource`) | + +-------------------------+--------------------------------------------------------------------------+---------------------------------------------------------------------------------------+ + +.. rst-class:: classref-reftable-group + +Methods +------- + +.. table:: + :widths: auto + + +--------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------+ + | :ref:`Array`\[:ref:`FoldableContainer`\] | :ref:`get_containers`\ (\ ) |const| | + +--------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------+ + | :ref:`FoldableContainer` | :ref:`get_expanded_container`\ (\ ) |const| | + +--------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------+ + +.. rst-class:: classref-section-separator + +---- + +.. rst-class:: classref-descriptions-group + +Signals +------- + +.. _class_FoldableGroup_signal_expanded: + +.. rst-class:: classref-signal + +**expanded**\ (\ container\: :ref:`FoldableContainer`\ ) :ref:`🔗` + +Emitted when one of the containers of the group is expanded. + +.. rst-class:: classref-section-separator + +---- + +.. rst-class:: classref-descriptions-group + +Property Descriptions +--------------------- + +.. _class_FoldableGroup_property_allow_folding_all: + +.. rst-class:: classref-property + +:ref:`bool` **allow_folding_all** = ``false`` :ref:`🔗` + +.. rst-class:: classref-property-setget + +- |void| **set_allow_folding_all**\ (\ value\: :ref:`bool`\ ) +- :ref:`bool` **is_allow_folding_all**\ (\ ) + +If ``true``, it is possible to fold all containers in this FoldableGroup. + +.. rst-class:: classref-section-separator + +---- + +.. rst-class:: classref-descriptions-group + +Method Descriptions +------------------- + +.. _class_FoldableGroup_method_get_containers: + +.. rst-class:: classref-method + +:ref:`Array`\[:ref:`FoldableContainer`\] **get_containers**\ (\ ) |const| :ref:`🔗` + +Returns an :ref:`Array` of :ref:`FoldableContainer`\ s that have this as their FoldableGroup (see :ref:`FoldableContainer.foldable_group`). This is equivalent to :ref:`ButtonGroup` but for FoldableContainers. + +.. rst-class:: classref-item-separator + +---- + +.. _class_FoldableGroup_method_get_expanded_container: + +.. rst-class:: classref-method + +:ref:`FoldableContainer` **get_expanded_container**\ (\ ) |const| :ref:`🔗` + +Returns the current expanded container. + +.. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` +.. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` +.. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` +.. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` +.. |static| replace:: :abbr:`static (This method doesn't need an instance to be called, so it can be called directly using the class name.)` +.. |operator| replace:: :abbr:`operator (This method describes a valid operator to use with this type as left-hand operand.)` +.. |bitfield| replace:: :abbr:`BitField (This value is an integer composed as a bitmask of the following flags.)` +.. |void| replace:: :abbr:`void (No return value.)` diff --git a/classes/class_font.rst b/classes/class_font.rst index 204d3a67a..2b2c45013 100644 --- a/classes/class_font.rst +++ b/classes/class_font.rst @@ -43,71 +43,71 @@ Methods .. table:: :widths: auto - +-----------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`float` | :ref:`draw_char`\ (\ canvas_item\: :ref:`RID`, pos\: :ref:`Vector2`, char\: :ref:`int`, font_size\: :ref:`int`, modulate\: :ref:`Color` = Color(1, 1, 1, 1)\ ) |const| | - +-----------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`float` | :ref:`draw_char_outline`\ (\ canvas_item\: :ref:`RID`, pos\: :ref:`Vector2`, char\: :ref:`int`, font_size\: :ref:`int`, size\: :ref:`int` = -1, modulate\: :ref:`Color` = Color(1, 1, 1, 1)\ ) |const| | - +-----------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`draw_multiline_string`\ (\ canvas_item\: :ref:`RID`, pos\: :ref:`Vector2`, text\: :ref:`String`, alignment\: :ref:`HorizontalAlignment` = 0, width\: :ref:`float` = -1, font_size\: :ref:`int` = 16, max_lines\: :ref:`int` = -1, modulate\: :ref:`Color` = Color(1, 1, 1, 1), brk_flags\: |bitfield|\[:ref:`LineBreakFlag`\] = 3, justification_flags\: |bitfield|\[:ref:`JustificationFlag`\] = 3, direction\: :ref:`Direction` = 0, orientation\: :ref:`Orientation` = 0\ ) |const| | - +-----------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`draw_multiline_string_outline`\ (\ canvas_item\: :ref:`RID`, pos\: :ref:`Vector2`, text\: :ref:`String`, alignment\: :ref:`HorizontalAlignment` = 0, width\: :ref:`float` = -1, font_size\: :ref:`int` = 16, max_lines\: :ref:`int` = -1, size\: :ref:`int` = 1, modulate\: :ref:`Color` = Color(1, 1, 1, 1), brk_flags\: |bitfield|\[:ref:`LineBreakFlag`\] = 3, justification_flags\: |bitfield|\[:ref:`JustificationFlag`\] = 3, direction\: :ref:`Direction` = 0, orientation\: :ref:`Orientation` = 0\ ) |const| | - +-----------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`draw_string`\ (\ canvas_item\: :ref:`RID`, pos\: :ref:`Vector2`, text\: :ref:`String`, alignment\: :ref:`HorizontalAlignment` = 0, width\: :ref:`float` = -1, font_size\: :ref:`int` = 16, modulate\: :ref:`Color` = Color(1, 1, 1, 1), justification_flags\: |bitfield|\[:ref:`JustificationFlag`\] = 3, direction\: :ref:`Direction` = 0, orientation\: :ref:`Orientation` = 0\ ) |const| | - +-----------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`draw_string_outline`\ (\ canvas_item\: :ref:`RID`, pos\: :ref:`Vector2`, text\: :ref:`String`, alignment\: :ref:`HorizontalAlignment` = 0, width\: :ref:`float` = -1, font_size\: :ref:`int` = 16, size\: :ref:`int` = 1, modulate\: :ref:`Color` = Color(1, 1, 1, 1), justification_flags\: |bitfield|\[:ref:`JustificationFlag`\] = 3, direction\: :ref:`Direction` = 0, orientation\: :ref:`Orientation` = 0\ ) |const| | - +-----------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`RID` | :ref:`find_variation`\ (\ variation_coordinates\: :ref:`Dictionary`, face_index\: :ref:`int` = 0, strength\: :ref:`float` = 0.0, transform\: :ref:`Transform2D` = Transform2D(1, 0, 0, 1, 0, 0), spacing_top\: :ref:`int` = 0, spacing_bottom\: :ref:`int` = 0, spacing_space\: :ref:`int` = 0, spacing_glyph\: :ref:`int` = 0, baseline_offset\: :ref:`float` = 0.0\ ) |const| | - +-----------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`float` | :ref:`get_ascent`\ (\ font_size\: :ref:`int` = 16\ ) |const| | - +-----------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Vector2` | :ref:`get_char_size`\ (\ char\: :ref:`int`, font_size\: :ref:`int`\ ) |const| | - +-----------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`float` | :ref:`get_descent`\ (\ font_size\: :ref:`int` = 16\ ) |const| | - +-----------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`get_face_count`\ (\ ) |const| | - +-----------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`String` | :ref:`get_font_name`\ (\ ) |const| | - +-----------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`get_font_stretch`\ (\ ) |const| | - +-----------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |bitfield|\[:ref:`FontStyle`\] | :ref:`get_font_style`\ (\ ) |const| | - +-----------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`String` | :ref:`get_font_style_name`\ (\ ) |const| | - +-----------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`get_font_weight`\ (\ ) |const| | - +-----------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`float` | :ref:`get_height`\ (\ font_size\: :ref:`int` = 16\ ) |const| | - +-----------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Vector2` | :ref:`get_multiline_string_size`\ (\ text\: :ref:`String`, alignment\: :ref:`HorizontalAlignment` = 0, width\: :ref:`float` = -1, font_size\: :ref:`int` = 16, max_lines\: :ref:`int` = -1, brk_flags\: |bitfield|\[:ref:`LineBreakFlag`\] = 3, justification_flags\: |bitfield|\[:ref:`JustificationFlag`\] = 3, direction\: :ref:`Direction` = 0, orientation\: :ref:`Orientation` = 0\ ) |const| | - +-----------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Dictionary` | :ref:`get_opentype_features`\ (\ ) |const| | - +-----------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Dictionary` | :ref:`get_ot_name_strings`\ (\ ) |const| | - +-----------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Array`\[:ref:`RID`\] | :ref:`get_rids`\ (\ ) |const| | - +-----------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`get_spacing`\ (\ spacing\: :ref:`SpacingType`\ ) |const| | - +-----------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Vector2` | :ref:`get_string_size`\ (\ text\: :ref:`String`, alignment\: :ref:`HorizontalAlignment` = 0, width\: :ref:`float` = -1, font_size\: :ref:`int` = 16, justification_flags\: |bitfield|\[:ref:`JustificationFlag`\] = 3, direction\: :ref:`Direction` = 0, orientation\: :ref:`Orientation` = 0\ ) |const| | - +-----------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`String` | :ref:`get_supported_chars`\ (\ ) |const| | - +-----------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Dictionary` | :ref:`get_supported_feature_list`\ (\ ) |const| | - +-----------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Dictionary` | :ref:`get_supported_variation_list`\ (\ ) |const| | - +-----------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`float` | :ref:`get_underline_position`\ (\ font_size\: :ref:`int` = 16\ ) |const| | - +-----------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`float` | :ref:`get_underline_thickness`\ (\ font_size\: :ref:`int` = 16\ ) |const| | - +-----------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`has_char`\ (\ char\: :ref:`int`\ ) |const| | - +-----------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`is_language_supported`\ (\ language\: :ref:`String`\ ) |const| | - +-----------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`is_script_supported`\ (\ script\: :ref:`String`\ ) |const| | - +-----------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`set_cache_capacity`\ (\ single_line\: :ref:`int`, multi_line\: :ref:`int`\ ) | - +-----------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + +-----------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`draw_char`\ (\ canvas_item\: :ref:`RID`, pos\: :ref:`Vector2`, char\: :ref:`int`, font_size\: :ref:`int`, modulate\: :ref:`Color` = Color(1, 1, 1, 1), oversampling\: :ref:`float` = 0.0\ ) |const| | + +-----------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`draw_char_outline`\ (\ canvas_item\: :ref:`RID`, pos\: :ref:`Vector2`, char\: :ref:`int`, font_size\: :ref:`int`, size\: :ref:`int` = -1, modulate\: :ref:`Color` = Color(1, 1, 1, 1), oversampling\: :ref:`float` = 0.0\ ) |const| | + +-----------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`draw_multiline_string`\ (\ canvas_item\: :ref:`RID`, pos\: :ref:`Vector2`, text\: :ref:`String`, alignment\: :ref:`HorizontalAlignment` = 0, width\: :ref:`float` = -1, font_size\: :ref:`int` = 16, max_lines\: :ref:`int` = -1, modulate\: :ref:`Color` = Color(1, 1, 1, 1), brk_flags\: |bitfield|\[:ref:`LineBreakFlag`\] = 3, justification_flags\: |bitfield|\[:ref:`JustificationFlag`\] = 3, direction\: :ref:`Direction` = 0, orientation\: :ref:`Orientation` = 0, oversampling\: :ref:`float` = 0.0\ ) |const| | + +-----------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`draw_multiline_string_outline`\ (\ canvas_item\: :ref:`RID`, pos\: :ref:`Vector2`, text\: :ref:`String`, alignment\: :ref:`HorizontalAlignment` = 0, width\: :ref:`float` = -1, font_size\: :ref:`int` = 16, max_lines\: :ref:`int` = -1, size\: :ref:`int` = 1, modulate\: :ref:`Color` = Color(1, 1, 1, 1), brk_flags\: |bitfield|\[:ref:`LineBreakFlag`\] = 3, justification_flags\: |bitfield|\[:ref:`JustificationFlag`\] = 3, direction\: :ref:`Direction` = 0, orientation\: :ref:`Orientation` = 0, oversampling\: :ref:`float` = 0.0\ ) |const| | + +-----------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`draw_string`\ (\ canvas_item\: :ref:`RID`, pos\: :ref:`Vector2`, text\: :ref:`String`, alignment\: :ref:`HorizontalAlignment` = 0, width\: :ref:`float` = -1, font_size\: :ref:`int` = 16, modulate\: :ref:`Color` = Color(1, 1, 1, 1), justification_flags\: |bitfield|\[:ref:`JustificationFlag`\] = 3, direction\: :ref:`Direction` = 0, orientation\: :ref:`Orientation` = 0, oversampling\: :ref:`float` = 0.0\ ) |const| | + +-----------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`draw_string_outline`\ (\ canvas_item\: :ref:`RID`, pos\: :ref:`Vector2`, text\: :ref:`String`, alignment\: :ref:`HorizontalAlignment` = 0, width\: :ref:`float` = -1, font_size\: :ref:`int` = 16, size\: :ref:`int` = 1, modulate\: :ref:`Color` = Color(1, 1, 1, 1), justification_flags\: |bitfield|\[:ref:`JustificationFlag`\] = 3, direction\: :ref:`Direction` = 0, orientation\: :ref:`Orientation` = 0, oversampling\: :ref:`float` = 0.0\ ) |const| | + +-----------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`RID` | :ref:`find_variation`\ (\ variation_coordinates\: :ref:`Dictionary`, face_index\: :ref:`int` = 0, strength\: :ref:`float` = 0.0, transform\: :ref:`Transform2D` = Transform2D(1, 0, 0, 1, 0, 0), spacing_top\: :ref:`int` = 0, spacing_bottom\: :ref:`int` = 0, spacing_space\: :ref:`int` = 0, spacing_glyph\: :ref:`int` = 0, baseline_offset\: :ref:`float` = 0.0\ ) |const| | + +-----------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`get_ascent`\ (\ font_size\: :ref:`int` = 16\ ) |const| | + +-----------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Vector2` | :ref:`get_char_size`\ (\ char\: :ref:`int`, font_size\: :ref:`int`\ ) |const| | + +-----------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`get_descent`\ (\ font_size\: :ref:`int` = 16\ ) |const| | + +-----------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`get_face_count`\ (\ ) |const| | + +-----------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`get_font_name`\ (\ ) |const| | + +-----------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`get_font_stretch`\ (\ ) |const| | + +-----------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |bitfield|\[:ref:`FontStyle`\] | :ref:`get_font_style`\ (\ ) |const| | + +-----------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`get_font_style_name`\ (\ ) |const| | + +-----------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`get_font_weight`\ (\ ) |const| | + +-----------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`get_height`\ (\ font_size\: :ref:`int` = 16\ ) |const| | + +-----------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Vector2` | :ref:`get_multiline_string_size`\ (\ text\: :ref:`String`, alignment\: :ref:`HorizontalAlignment` = 0, width\: :ref:`float` = -1, font_size\: :ref:`int` = 16, max_lines\: :ref:`int` = -1, brk_flags\: |bitfield|\[:ref:`LineBreakFlag`\] = 3, justification_flags\: |bitfield|\[:ref:`JustificationFlag`\] = 3, direction\: :ref:`Direction` = 0, orientation\: :ref:`Orientation` = 0\ ) |const| | + +-----------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Dictionary` | :ref:`get_opentype_features`\ (\ ) |const| | + +-----------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Dictionary` | :ref:`get_ot_name_strings`\ (\ ) |const| | + +-----------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Array`\[:ref:`RID`\] | :ref:`get_rids`\ (\ ) |const| | + +-----------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`get_spacing`\ (\ spacing\: :ref:`SpacingType`\ ) |const| | + +-----------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Vector2` | :ref:`get_string_size`\ (\ text\: :ref:`String`, alignment\: :ref:`HorizontalAlignment` = 0, width\: :ref:`float` = -1, font_size\: :ref:`int` = 16, justification_flags\: |bitfield|\[:ref:`JustificationFlag`\] = 3, direction\: :ref:`Direction` = 0, orientation\: :ref:`Orientation` = 0\ ) |const| | + +-----------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`get_supported_chars`\ (\ ) |const| | + +-----------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Dictionary` | :ref:`get_supported_feature_list`\ (\ ) |const| | + +-----------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Dictionary` | :ref:`get_supported_variation_list`\ (\ ) |const| | + +-----------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`get_underline_position`\ (\ font_size\: :ref:`int` = 16\ ) |const| | + +-----------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`get_underline_thickness`\ (\ font_size\: :ref:`int` = 16\ ) |const| | + +-----------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`has_char`\ (\ char\: :ref:`int`\ ) |const| | + +-----------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`is_language_supported`\ (\ language\: :ref:`String`\ ) |const| | + +-----------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`is_script_supported`\ (\ script\: :ref:`String`\ ) |const| | + +-----------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_cache_capacity`\ (\ single_line\: :ref:`int`, multi_line\: :ref:`int`\ ) | + +-----------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ .. rst-class:: classref-section-separator @@ -146,9 +146,9 @@ Method Descriptions .. rst-class:: classref-method -:ref:`float` **draw_char**\ (\ canvas_item\: :ref:`RID`, pos\: :ref:`Vector2`, char\: :ref:`int`, font_size\: :ref:`int`, modulate\: :ref:`Color` = Color(1, 1, 1, 1)\ ) |const| :ref:`🔗` +:ref:`float` **draw_char**\ (\ canvas_item\: :ref:`RID`, pos\: :ref:`Vector2`, char\: :ref:`int`, font_size\: :ref:`int`, modulate\: :ref:`Color` = Color(1, 1, 1, 1), oversampling\: :ref:`float` = 0.0\ ) |const| :ref:`🔗` -Draw a single Unicode character ``char`` into a canvas item using the font, at a given position, with ``modulate`` color. ``pos`` specifies the baseline, not the top. To draw from the top, *ascent* must be added to the Y axis. +Draw a single Unicode character ``char`` into a canvas item using the font, at a given position, with ``modulate`` color. ``pos`` specifies the baseline, not the top. To draw from the top, *ascent* must be added to the Y axis. If ``oversampling`` is greater than zero, it is used as font oversampling factor, otherwise viewport oversampling settings are used. \ **Note:** Do not use this function to draw strings character by character, use :ref:`draw_string()` or :ref:`TextLine` instead. @@ -160,9 +160,9 @@ Draw a single Unicode character ``char`` into a canvas item using the font, at a .. rst-class:: classref-method -:ref:`float` **draw_char_outline**\ (\ canvas_item\: :ref:`RID`, pos\: :ref:`Vector2`, char\: :ref:`int`, font_size\: :ref:`int`, size\: :ref:`int` = -1, modulate\: :ref:`Color` = Color(1, 1, 1, 1)\ ) |const| :ref:`🔗` +:ref:`float` **draw_char_outline**\ (\ canvas_item\: :ref:`RID`, pos\: :ref:`Vector2`, char\: :ref:`int`, font_size\: :ref:`int`, size\: :ref:`int` = -1, modulate\: :ref:`Color` = Color(1, 1, 1, 1), oversampling\: :ref:`float` = 0.0\ ) |const| :ref:`🔗` -Draw a single Unicode character ``char`` outline into a canvas item using the font, at a given position, with ``modulate`` color and ``size`` outline size. ``pos`` specifies the baseline, not the top. To draw from the top, *ascent* must be added to the Y axis. +Draw a single Unicode character ``char`` outline into a canvas item using the font, at a given position, with ``modulate`` color and ``size`` outline size. ``pos`` specifies the baseline, not the top. To draw from the top, *ascent* must be added to the Y axis. If ``oversampling`` is greater than zero, it is used as font oversampling factor, otherwise viewport oversampling settings are used. \ **Note:** Do not use this function to draw strings character by character, use :ref:`draw_string()` or :ref:`TextLine` instead. @@ -174,9 +174,9 @@ Draw a single Unicode character ``char`` outline into a canvas item using the fo .. rst-class:: classref-method -|void| **draw_multiline_string**\ (\ canvas_item\: :ref:`RID`, pos\: :ref:`Vector2`, text\: :ref:`String`, alignment\: :ref:`HorizontalAlignment` = 0, width\: :ref:`float` = -1, font_size\: :ref:`int` = 16, max_lines\: :ref:`int` = -1, modulate\: :ref:`Color` = Color(1, 1, 1, 1), brk_flags\: |bitfield|\[:ref:`LineBreakFlag`\] = 3, justification_flags\: |bitfield|\[:ref:`JustificationFlag`\] = 3, direction\: :ref:`Direction` = 0, orientation\: :ref:`Orientation` = 0\ ) |const| :ref:`🔗` +|void| **draw_multiline_string**\ (\ canvas_item\: :ref:`RID`, pos\: :ref:`Vector2`, text\: :ref:`String`, alignment\: :ref:`HorizontalAlignment` = 0, width\: :ref:`float` = -1, font_size\: :ref:`int` = 16, max_lines\: :ref:`int` = -1, modulate\: :ref:`Color` = Color(1, 1, 1, 1), brk_flags\: |bitfield|\[:ref:`LineBreakFlag`\] = 3, justification_flags\: |bitfield|\[:ref:`JustificationFlag`\] = 3, direction\: :ref:`Direction` = 0, orientation\: :ref:`Orientation` = 0, oversampling\: :ref:`float` = 0.0\ ) |const| :ref:`🔗` -Breaks ``text`` into lines using rules specified by ``brk_flags`` and draws it into a canvas item using the font, at a given position, with ``modulate`` color, optionally clipping the width and aligning horizontally. ``pos`` specifies the baseline of the first line, not the top. To draw from the top, *ascent* must be added to the Y axis. +Breaks ``text`` into lines using rules specified by ``brk_flags`` and draws it into a canvas item using the font, at a given position, with ``modulate`` color, optionally clipping the width and aligning horizontally. ``pos`` specifies the baseline of the first line, not the top. To draw from the top, *ascent* must be added to the Y axis. If ``oversampling`` is greater than zero, it is used as font oversampling factor, otherwise viewport oversampling settings are used. See also :ref:`CanvasItem.draw_multiline_string()`. @@ -188,9 +188,9 @@ See also :ref:`CanvasItem.draw_multiline_string()`, pos\: :ref:`Vector2`, text\: :ref:`String`, alignment\: :ref:`HorizontalAlignment` = 0, width\: :ref:`float` = -1, font_size\: :ref:`int` = 16, max_lines\: :ref:`int` = -1, size\: :ref:`int` = 1, modulate\: :ref:`Color` = Color(1, 1, 1, 1), brk_flags\: |bitfield|\[:ref:`LineBreakFlag`\] = 3, justification_flags\: |bitfield|\[:ref:`JustificationFlag`\] = 3, direction\: :ref:`Direction` = 0, orientation\: :ref:`Orientation` = 0\ ) |const| :ref:`🔗` +|void| **draw_multiline_string_outline**\ (\ canvas_item\: :ref:`RID`, pos\: :ref:`Vector2`, text\: :ref:`String`, alignment\: :ref:`HorizontalAlignment` = 0, width\: :ref:`float` = -1, font_size\: :ref:`int` = 16, max_lines\: :ref:`int` = -1, size\: :ref:`int` = 1, modulate\: :ref:`Color` = Color(1, 1, 1, 1), brk_flags\: |bitfield|\[:ref:`LineBreakFlag`\] = 3, justification_flags\: |bitfield|\[:ref:`JustificationFlag`\] = 3, direction\: :ref:`Direction` = 0, orientation\: :ref:`Orientation` = 0, oversampling\: :ref:`float` = 0.0\ ) |const| :ref:`🔗` -Breaks ``text`` to the lines using rules specified by ``brk_flags`` and draws text outline into a canvas item using the font, at a given position, with ``modulate`` color and ``size`` outline size, optionally clipping the width and aligning horizontally. ``pos`` specifies the baseline of the first line, not the top. To draw from the top, *ascent* must be added to the Y axis. +Breaks ``text`` to the lines using rules specified by ``brk_flags`` and draws text outline into a canvas item using the font, at a given position, with ``modulate`` color and ``size`` outline size, optionally clipping the width and aligning horizontally. ``pos`` specifies the baseline of the first line, not the top. To draw from the top, *ascent* must be added to the Y axis. If ``oversampling`` is greater than zero, it is used as font oversampling factor, otherwise viewport oversampling settings are used. See also :ref:`CanvasItem.draw_multiline_string_outline()`. @@ -202,9 +202,9 @@ See also :ref:`CanvasItem.draw_multiline_string_outline()`, pos\: :ref:`Vector2`, text\: :ref:`String`, alignment\: :ref:`HorizontalAlignment` = 0, width\: :ref:`float` = -1, font_size\: :ref:`int` = 16, modulate\: :ref:`Color` = Color(1, 1, 1, 1), justification_flags\: |bitfield|\[:ref:`JustificationFlag`\] = 3, direction\: :ref:`Direction` = 0, orientation\: :ref:`Orientation` = 0\ ) |const| :ref:`🔗` +|void| **draw_string**\ (\ canvas_item\: :ref:`RID`, pos\: :ref:`Vector2`, text\: :ref:`String`, alignment\: :ref:`HorizontalAlignment` = 0, width\: :ref:`float` = -1, font_size\: :ref:`int` = 16, modulate\: :ref:`Color` = Color(1, 1, 1, 1), justification_flags\: |bitfield|\[:ref:`JustificationFlag`\] = 3, direction\: :ref:`Direction` = 0, orientation\: :ref:`Orientation` = 0, oversampling\: :ref:`float` = 0.0\ ) |const| :ref:`🔗` -Draw ``text`` into a canvas item using the font, at a given position, with ``modulate`` color, optionally clipping the width and aligning horizontally. ``pos`` specifies the baseline, not the top. To draw from the top, *ascent* must be added to the Y axis. +Draw ``text`` into a canvas item using the font, at a given position, with ``modulate`` color, optionally clipping the width and aligning horizontally. ``pos`` specifies the baseline, not the top. To draw from the top, *ascent* must be added to the Y axis. If ``oversampling`` is greater than zero, it is used as font oversampling factor, otherwise viewport oversampling settings are used. See also :ref:`CanvasItem.draw_string()`. @@ -216,9 +216,9 @@ See also :ref:`CanvasItem.draw_string()`. .. rst-class:: classref-method -|void| **draw_string_outline**\ (\ canvas_item\: :ref:`RID`, pos\: :ref:`Vector2`, text\: :ref:`String`, alignment\: :ref:`HorizontalAlignment` = 0, width\: :ref:`float` = -1, font_size\: :ref:`int` = 16, size\: :ref:`int` = 1, modulate\: :ref:`Color` = Color(1, 1, 1, 1), justification_flags\: |bitfield|\[:ref:`JustificationFlag`\] = 3, direction\: :ref:`Direction` = 0, orientation\: :ref:`Orientation` = 0\ ) |const| :ref:`🔗` +|void| **draw_string_outline**\ (\ canvas_item\: :ref:`RID`, pos\: :ref:`Vector2`, text\: :ref:`String`, alignment\: :ref:`HorizontalAlignment` = 0, width\: :ref:`float` = -1, font_size\: :ref:`int` = 16, size\: :ref:`int` = 1, modulate\: :ref:`Color` = Color(1, 1, 1, 1), justification_flags\: |bitfield|\[:ref:`JustificationFlag`\] = 3, direction\: :ref:`Direction` = 0, orientation\: :ref:`Orientation` = 0, oversampling\: :ref:`float` = 0.0\ ) |const| :ref:`🔗` -Draw ``text`` outline into a canvas item using the font, at a given position, with ``modulate`` color and ``size`` outline size, optionally clipping the width and aligning horizontally. ``pos`` specifies the baseline, not the top. To draw from the top, *ascent* must be added to the Y axis. +Draw ``text`` outline into a canvas item using the font, at a given position, with ``modulate`` color and ``size`` outline size, optionally clipping the width and aligning horizontally. ``pos`` specifies the baseline, not the top. To draw from the top, *ascent* must be added to the Y axis. If ``oversampling`` is greater than zero, it is used as font oversampling factor, otherwise viewport oversampling settings are used. See also :ref:`CanvasItem.draw_string_outline()`. @@ -322,7 +322,7 @@ Returns font stretch amount, compared to a normal width. A percentage value betw |bitfield|\[:ref:`FontStyle`\] **get_font_style**\ (\ ) |const| :ref:`🔗` -Returns font style flags, see :ref:`FontStyle`. +Returns font style flags. .. rst-class:: classref-item-separator @@ -422,7 +422,7 @@ Returns :ref:`Array` of valid **Font** :ref:`RID`\ s, wh :ref:`int` **get_spacing**\ (\ spacing\: :ref:`SpacingType`\ ) |const| :ref:`🔗` -Returns the spacing for the given ``type`` (see :ref:`SpacingType`). +Returns the amount of spacing for the given ``spacing`` type. .. rst-class:: classref-item-separator @@ -587,6 +587,7 @@ Returns ``true``, if font supports given script (`ISO 15924 ` | :ref:`keep_rounding_remainders` | ``true`` | +-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------+-----------------------+ + | :ref:`bool` | :ref:`modulate_color_glyphs` | ``false`` | + +-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------+-----------------------+ | :ref:`int` | :ref:`msdf_pixel_range` | ``16`` | +-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------+-----------------------+ | :ref:`int` | :ref:`msdf_size` | ``48`` | @@ -417,7 +419,7 @@ Font stretch amount, compared to a normal width. A percentage value between ``50 - |void| **set_font_style**\ (\ value\: |bitfield|\[:ref:`FontStyle`\]\ ) - |bitfield|\[:ref:`FontStyle`\] **get_font_style**\ (\ ) -Font style flags, see :ref:`FontStyle`. +Font style flags. .. rst-class:: classref-item-separator @@ -508,6 +510,23 @@ If set to ``true``, when aligning glyphs to the pixel boundaries rounding remain ---- +.. _class_FontFile_property_modulate_color_glyphs: + +.. rst-class:: classref-property + +:ref:`bool` **modulate_color_glyphs** = ``false`` :ref:`🔗` + +.. rst-class:: classref-property-setget + +- |void| **set_modulate_color_glyphs**\ (\ value\: :ref:`bool`\ ) +- :ref:`bool` **is_modulate_color_glyphs**\ (\ ) + +If set to ``true``, color modulation is applied when drawing colored glyphs, otherwise it's applied to the monochrome glyphs only. + +.. rst-class:: classref-item-separator + +---- + .. _class_FontFile_property_msdf_pixel_range: .. rst-class:: classref-property @@ -591,7 +610,7 @@ Font OpenType feature set override. - |void| **set_oversampling**\ (\ value\: :ref:`float`\ ) - :ref:`float` **get_oversampling**\ (\ ) -Font oversampling factor. If set to ``0.0``, the global oversampling factor is used instead. Used by dynamic fonts only (MSDF fonts ignore oversampling). +If set to a positive value, overrides the oversampling factor of the viewport this font is used in. See :ref:`Viewport.oversampling`. This value doesn't override the ``oversampling`` parameter of ``draw_*`` methods. .. rst-class:: classref-item-separator @@ -814,7 +833,7 @@ Returns extra baseline offset (as a fraction of font height). :ref:`int` **get_extra_spacing**\ (\ cache_index\: :ref:`int`, spacing\: :ref:`SpacingType`\ ) |const| :ref:`🔗` -Returns spacing for ``spacing`` (see :ref:`SpacingType`) in pixels (not relative to the font size). +Returns spacing for ``spacing`` in pixels (not relative to the font size). .. rst-class:: classref-item-separator @@ -1292,7 +1311,7 @@ Sets extra baseline offset (as a fraction of font height). |void| **set_extra_spacing**\ (\ cache_index\: :ref:`int`, spacing\: :ref:`SpacingType`, value\: :ref:`int`\ ) :ref:`🔗` -Sets the spacing for ``spacing`` (see :ref:`SpacingType`) to ``value`` in pixels (not relative to the font size). +Sets the spacing for ``spacing`` to ``value`` in pixels (not relative to the font size). .. rst-class:: classref-item-separator @@ -1453,6 +1472,7 @@ Sets 2D transform, applied to the font outlines, can be used for slanting, flipp Sets variation coordinates for the specified font cache entry. See :ref:`Font.get_supported_variation_list()` for more info. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_fontvariation.rst b/classes/class_fontvariation.rst index ab1f7bc49..5810ec002 100644 --- a/classes/class_fontvariation.rst +++ b/classes/class_fontvariation.rst @@ -312,9 +312,10 @@ Method Descriptions |void| **set_spacing**\ (\ spacing\: :ref:`SpacingType`, value\: :ref:`int`\ ) :ref:`🔗` -Sets the spacing for ``spacing`` (see :ref:`SpacingType`) to ``value`` in pixels (not relative to the font size). +Sets the spacing for ``spacing`` to ``value`` in pixels (not relative to the font size). .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_framebuffercacherd.rst b/classes/class_framebuffercacherd.rst index 41ee705a7..3624282dc 100644 --- a/classes/class_framebuffercacherd.rst +++ b/classes/class_framebuffercacherd.rst @@ -51,6 +51,7 @@ Method Descriptions Creates, or obtains a cached, framebuffer. ``textures`` lists textures accessed. ``passes`` defines the subpasses and texture allocation, if left empty a single pass is created and textures are allocated depending on their usage flags. ``views`` defines the number of views used when rendering. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_gdextension.rst b/classes/class_gdextension.rst index 3015d96c5..bac211ea5 100644 --- a/classes/class_gdextension.rst +++ b/classes/class_gdextension.rst @@ -30,7 +30,7 @@ Tutorials - :doc:`GDExtension overview <../tutorials/scripting/gdextension/what_is_gdextension>` -- :doc:`GDExtension example in C++ <../tutorials/scripting/gdextension/gdextension_cpp_example>` +- :doc:`GDExtension example in C++ <../tutorials/scripting/cpp/gdextension_cpp_example>` .. rst-class:: classref-reftable-group @@ -123,6 +123,7 @@ Returns the lowest level required for this extension to be properly initialized Returns ``true`` if this extension's library has been opened. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_gdextensionmanager.rst b/classes/class_gdextensionmanager.rst index f8413266f..d5c2a3f45 100644 --- a/classes/class_gdextensionmanager.rst +++ b/classes/class_gdextensionmanager.rst @@ -30,7 +30,7 @@ Tutorials - :doc:`GDExtension overview <../tutorials/scripting/gdextension/what_is_gdextension>` -- :doc:`GDExtension example in C++ <../tutorials/scripting/gdextension/gdextension_cpp_example>` +- :doc:`GDExtension example in C++ <../tutorials/scripting/cpp/gdextension_cpp_example>` .. rst-class:: classref-reftable-group @@ -234,6 +234,7 @@ Reloads the extension at the given file path. The ``path`` needs to point to a v Unloads an extension by file path. The ``path`` needs to point to an already loaded :ref:`GDExtension`, otherwise this method returns :ref:`LOAD_STATUS_NOT_LOADED`. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_gdscript.rst b/classes/class_gdscript.rst index 35a9838b9..876339bfc 100644 --- a/classes/class_gdscript.rst +++ b/classes/class_gdscript.rst @@ -68,6 +68,7 @@ Returns a new instance of the script. print(instance.get_script() == MyClass) # Prints true .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_gdscriptsyntaxhighlighter.rst b/classes/class_gdscriptsyntaxhighlighter.rst index d49f2b44f..947f60a32 100644 --- a/classes/class_gdscriptsyntaxhighlighter.rst +++ b/classes/class_gdscriptsyntaxhighlighter.rst @@ -39,6 +39,7 @@ Description .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_generic6dofjoint3d.rst b/classes/class_generic6dofjoint3d.rst index d87439736..2909bc0cd 100644 --- a/classes/class_generic6dofjoint3d.rst +++ b/classes/class_generic6dofjoint3d.rst @@ -314,7 +314,7 @@ The maximum force the linear motor will apply while trying to reach the velocity .. container:: contribute - There is currently no description for this enum. Please help us by :ref:`contributing one `! + There is currently no description for this enum. Please help us by `contributing one `__! @@ -326,7 +326,7 @@ The maximum force the linear motor will apply while trying to reach the velocity .. container:: contribute - There is currently no description for this enum. Please help us by :ref:`contributing one `! + There is currently no description for this enum. Please help us by `contributing one `__! @@ -338,7 +338,7 @@ The maximum force the linear motor will apply while trying to reach the velocity .. container:: contribute - There is currently no description for this enum. Please help us by :ref:`contributing one `! + There is currently no description for this enum. Please help us by `contributing one `__! @@ -422,7 +422,7 @@ Maximum acceleration for the motor at the axes. .. container:: contribute - There is currently no description for this enum. Please help us by :ref:`contributing one `! + There is currently no description for this enum. Please help us by `contributing one `__! @@ -434,7 +434,7 @@ Maximum acceleration for the motor at the axes. .. container:: contribute - There is currently no description for this enum. Please help us by :ref:`contributing one `! + There is currently no description for this enum. Please help us by `contributing one `__! @@ -446,7 +446,7 @@ Maximum acceleration for the motor at the axes. .. container:: contribute - There is currently no description for this enum. Please help us by :ref:`contributing one `! + There is currently no description for this enum. Please help us by `contributing one `__! @@ -492,7 +492,7 @@ If enabled, rotational motion is possible within the given limits. .. container:: contribute - There is currently no description for this enum. Please help us by :ref:`contributing one `! + There is currently no description for this enum. Please help us by `contributing one `__! @@ -504,7 +504,7 @@ If enabled, rotational motion is possible within the given limits. .. container:: contribute - There is currently no description for this enum. Please help us by :ref:`contributing one `! + There is currently no description for this enum. Please help us by `contributing one `__! @@ -1117,7 +1117,7 @@ Target speed for the motor at the Z axis. .. container:: contribute - There is currently no description for this property. Please help us by :ref:`contributing one `! + There is currently no description for this property. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -1136,7 +1136,7 @@ Target speed for the motor at the Z axis. .. container:: contribute - There is currently no description for this property. Please help us by :ref:`contributing one `! + There is currently no description for this property. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -1155,7 +1155,7 @@ Target speed for the motor at the Z axis. .. container:: contribute - There is currently no description for this property. Please help us by :ref:`contributing one `! + There is currently no description for this property. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -1174,7 +1174,7 @@ Target speed for the motor at the Z axis. .. container:: contribute - There is currently no description for this property. Please help us by :ref:`contributing one `! + There is currently no description for this property. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -1193,7 +1193,7 @@ Target speed for the motor at the Z axis. .. container:: contribute - There is currently no description for this property. Please help us by :ref:`contributing one `! + There is currently no description for this property. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -1212,7 +1212,7 @@ Target speed for the motor at the Z axis. .. container:: contribute - There is currently no description for this property. Please help us by :ref:`contributing one `! + There is currently no description for this property. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -1231,7 +1231,7 @@ Target speed for the motor at the Z axis. .. container:: contribute - There is currently no description for this property. Please help us by :ref:`contributing one `! + There is currently no description for this property. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -1250,7 +1250,7 @@ Target speed for the motor at the Z axis. .. container:: contribute - There is currently no description for this property. Please help us by :ref:`contributing one `! + There is currently no description for this property. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -1269,7 +1269,7 @@ Target speed for the motor at the Z axis. .. container:: contribute - There is currently no description for this property. Please help us by :ref:`contributing one `! + There is currently no description for this property. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -1288,7 +1288,7 @@ Target speed for the motor at the Z axis. .. container:: contribute - There is currently no description for this property. Please help us by :ref:`contributing one `! + There is currently no description for this property. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -1307,7 +1307,7 @@ Target speed for the motor at the Z axis. .. container:: contribute - There is currently no description for this property. Please help us by :ref:`contributing one `! + There is currently no description for this property. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -1326,7 +1326,7 @@ Target speed for the motor at the Z axis. .. container:: contribute - There is currently no description for this property. Please help us by :ref:`contributing one `! + There is currently no description for this property. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -1804,7 +1804,7 @@ The speed that the linear motor will attempt to reach on the Z axis. .. container:: contribute - There is currently no description for this property. Please help us by :ref:`contributing one `! + There is currently no description for this property. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -1823,7 +1823,7 @@ The speed that the linear motor will attempt to reach on the Z axis. .. container:: contribute - There is currently no description for this property. Please help us by :ref:`contributing one `! + There is currently no description for this property. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -1842,7 +1842,7 @@ The speed that the linear motor will attempt to reach on the Z axis. .. container:: contribute - There is currently no description for this property. Please help us by :ref:`contributing one `! + There is currently no description for this property. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -1861,7 +1861,7 @@ The speed that the linear motor will attempt to reach on the Z axis. .. container:: contribute - There is currently no description for this property. Please help us by :ref:`contributing one `! + There is currently no description for this property. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -1880,7 +1880,7 @@ The speed that the linear motor will attempt to reach on the Z axis. .. container:: contribute - There is currently no description for this property. Please help us by :ref:`contributing one `! + There is currently no description for this property. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -1899,7 +1899,7 @@ The speed that the linear motor will attempt to reach on the Z axis. .. container:: contribute - There is currently no description for this property. Please help us by :ref:`contributing one `! + There is currently no description for this property. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -1918,7 +1918,7 @@ The speed that the linear motor will attempt to reach on the Z axis. .. container:: contribute - There is currently no description for this property. Please help us by :ref:`contributing one `! + There is currently no description for this property. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -1937,7 +1937,7 @@ The speed that the linear motor will attempt to reach on the Z axis. .. container:: contribute - There is currently no description for this property. Please help us by :ref:`contributing one `! + There is currently no description for this property. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -1956,7 +1956,7 @@ The speed that the linear motor will attempt to reach on the Z axis. .. container:: contribute - There is currently no description for this property. Please help us by :ref:`contributing one `! + There is currently no description for this property. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -1975,7 +1975,7 @@ The speed that the linear motor will attempt to reach on the Z axis. .. container:: contribute - There is currently no description for this property. Please help us by :ref:`contributing one `! + There is currently no description for this property. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -1994,7 +1994,7 @@ The speed that the linear motor will attempt to reach on the Z axis. .. container:: contribute - There is currently no description for this property. Please help us by :ref:`contributing one `! + There is currently no description for this property. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -2013,7 +2013,7 @@ The speed that the linear motor will attempt to reach on the Z axis. .. container:: contribute - There is currently no description for this property. Please help us by :ref:`contributing one `! + There is currently no description for this property. Please help us by `contributing one `__! .. rst-class:: classref-section-separator @@ -2032,7 +2032,7 @@ Method Descriptions .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -2046,7 +2046,7 @@ Method Descriptions .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -2060,7 +2060,7 @@ Method Descriptions .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -2074,7 +2074,7 @@ Method Descriptions .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -2088,7 +2088,7 @@ Method Descriptions .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -2102,7 +2102,7 @@ Method Descriptions .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -2116,7 +2116,7 @@ Method Descriptions .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -2130,7 +2130,7 @@ Method Descriptions .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -2144,7 +2144,7 @@ Method Descriptions .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -2158,7 +2158,7 @@ Method Descriptions .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -2172,7 +2172,7 @@ Method Descriptions .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -2186,9 +2186,10 @@ Method Descriptions .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_geometry2d.rst b/classes/class_geometry2d.rst index 59cae1a33..b6f9814e7 100644 --- a/classes/class_geometry2d.rst +++ b/classes/class_geometry2d.rst @@ -421,7 +421,7 @@ Returns the point of intersection between the two lines (``from_a``, ``dir_a``) var from_a = Vector2.ZERO var dir_a = Vector2.RIGHT var from_b = Vector2.DOWN - + # Returns Vector2(1, 0) Geometry2D.line_intersects_line(from_a, dir_a, from_b, Vector2(1, -1)) # Returns Vector2(-1, 0) @@ -434,7 +434,7 @@ Returns the point of intersection between the two lines (``from_a``, ``dir_a``) var fromA = Vector2.Zero; var dirA = Vector2.Right; var fromB = Vector2.Down; - + // Returns new Vector2(1, 0) Geometry2D.LineIntersectsLine(fromA, dirA, fromB, new Vector2(1, -1)); // Returns new Vector2(-1, 0) @@ -482,7 +482,7 @@ The operation may result in an outer polygon (boundary) and multiple inner polyg Inflates or deflates ``polygon`` by ``delta`` units (pixels). If ``delta`` is positive, makes the polygon grow outward. If ``delta`` is negative, shrinks the polygon inward. Returns an array of polygons because inflating/deflating may result in multiple discrete polygons. Returns an empty array if ``delta`` is negative and the absolute value of it approximately exceeds the minimum bounding rectangle dimensions of the polygon. -Each polygon's vertices will be rounded as determined by ``join_type``, see :ref:`PolyJoinType`. +Each polygon's vertices will be rounded as determined by ``join_type``. The operation may result in an outer polygon (boundary) and inner polygon (hole) produced which could be distinguished by calling :ref:`is_polygon_clockwise()`. @@ -519,9 +519,9 @@ The operation may result in an outer polygon (boundary) and inner polygon (hole) Inflates or deflates ``polyline`` by ``delta`` units (pixels), producing polygons. If ``delta`` is positive, makes the polyline grow outward. Returns an array of polygons because inflating/deflating may result in multiple discrete polygons. If ``delta`` is negative, returns an empty array. -Each polygon's vertices will be rounded as determined by ``join_type``, see :ref:`PolyJoinType`. +Each polygon's vertices will be rounded as determined by ``join_type``. -Each polygon's endpoints will be rounded as determined by ``end_type``, see :ref:`PolyEndType`. +Each polygon's endpoints will be rounded as determined by ``end_type``. The operation may result in an outer polygon (boundary) and inner polygon (hole) produced which could be distinguished by calling :ref:`is_polygon_clockwise()`. @@ -586,6 +586,7 @@ Triangulates the area specified by discrete set of ``points`` such that no point Triangulates the polygon specified by the points in ``polygon``. Returns a :ref:`PackedInt32Array` where each triangle consists of three consecutive point indices into ``polygon`` (i.e. the returned array will have ``n * 3`` elements, with ``n`` being the number of found triangles). Output triangles will always be counter clockwise, and the contour will be flipped if it's clockwise. If the triangulation did not succeed, an empty :ref:`PackedInt32Array` is returned. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_geometry3d.rst b/classes/class_geometry3d.rst index f2063673f..68b294028 100644 --- a/classes/class_geometry3d.rst +++ b/classes/class_geometry3d.rst @@ -249,6 +249,7 @@ Tests if the segment (``from``, ``to``) intersects the triangle ``a``, ``b``, `` Tetrahedralizes the volume specified by a discrete set of ``points`` in 3D space, ensuring that no point lies within the circumsphere of any resulting tetrahedron. The method returns a :ref:`PackedInt32Array` where each tetrahedron consists of four consecutive point indices into the ``points`` array (resulting in an array with ``n * 4`` elements, where ``n`` is the number of tetrahedra found). If the tetrahedralization is unsuccessful, an empty :ref:`PackedInt32Array` is returned. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_geometryinstance3d.rst b/classes/class_geometryinstance3d.rst index 5916dcf1b..15080551d 100644 --- a/classes/class_geometryinstance3d.rst +++ b/classes/class_geometryinstance3d.rst @@ -291,7 +291,7 @@ Property Descriptions - |void| **set_cast_shadows_setting**\ (\ value\: :ref:`ShadowCastingSetting`\ ) - :ref:`ShadowCastingSetting` **get_cast_shadows_setting**\ (\ ) -The selected shadow casting flag. See :ref:`ShadowCastingSetting` for possible values. +The selected shadow casting flag. .. rst-class:: classref-item-separator @@ -570,7 +570,7 @@ If :ref:`visibility_range_fade_mode`\ ) - :ref:`VisibilityRangeFadeMode` **get_visibility_range_fade_mode**\ (\ ) -Controls which instances will be faded when approaching the limits of the visibility range. See :ref:`VisibilityRangeFadeMode` for possible values. +Controls which instances will be faded when approaching the limits of the visibility range. .. rst-class:: classref-section-separator @@ -608,6 +608,7 @@ Set the value of a shader uniform for this instance only (`per-instance uniform \ **Note:** Per-instance shader uniforms are only available in Spatial and CanvasItem shaders, but not for Fog, Sky, or Particles shaders. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_gltfaccessor.rst b/classes/class_gltfaccessor.rst index 6b55c66e7..0b0f3d4f5 100644 --- a/classes/class_gltfaccessor.rst +++ b/classes/class_gltfaccessor.rst @@ -40,37 +40,37 @@ Properties .. table:: :widths: auto - +-------------------------------------------------------------+-------------------------------------------------------------------------------------------------+--------------------------+ - | :ref:`GLTFAccessorType` | :ref:`accessor_type` | ``0`` | - +-------------------------------------------------------------+-------------------------------------------------------------------------------------------------+--------------------------+ - | :ref:`int` | :ref:`buffer_view` | ``-1`` | - +-------------------------------------------------------------+-------------------------------------------------------------------------------------------------+--------------------------+ - | :ref:`int` | :ref:`byte_offset` | ``0`` | - +-------------------------------------------------------------+-------------------------------------------------------------------------------------------------+--------------------------+ - | :ref:`int` | :ref:`component_type` | ``0`` | - +-------------------------------------------------------------+-------------------------------------------------------------------------------------------------+--------------------------+ - | :ref:`int` | :ref:`count` | ``0`` | - +-------------------------------------------------------------+-------------------------------------------------------------------------------------------------+--------------------------+ - | :ref:`PackedFloat64Array` | :ref:`max` | ``PackedFloat64Array()`` | - +-------------------------------------------------------------+-------------------------------------------------------------------------------------------------+--------------------------+ - | :ref:`PackedFloat64Array` | :ref:`min` | ``PackedFloat64Array()`` | - +-------------------------------------------------------------+-------------------------------------------------------------------------------------------------+--------------------------+ - | :ref:`bool` | :ref:`normalized` | ``false`` | - +-------------------------------------------------------------+-------------------------------------------------------------------------------------------------+--------------------------+ - | :ref:`int` | :ref:`sparse_count` | ``0`` | - +-------------------------------------------------------------+-------------------------------------------------------------------------------------------------+--------------------------+ - | :ref:`int` | :ref:`sparse_indices_buffer_view` | ``0`` | - +-------------------------------------------------------------+-------------------------------------------------------------------------------------------------+--------------------------+ - | :ref:`int` | :ref:`sparse_indices_byte_offset` | ``0`` | - +-------------------------------------------------------------+-------------------------------------------------------------------------------------------------+--------------------------+ - | :ref:`int` | :ref:`sparse_indices_component_type` | ``0`` | - +-------------------------------------------------------------+-------------------------------------------------------------------------------------------------+--------------------------+ - | :ref:`int` | :ref:`sparse_values_buffer_view` | ``0`` | - +-------------------------------------------------------------+-------------------------------------------------------------------------------------------------+--------------------------+ - | :ref:`int` | :ref:`sparse_values_byte_offset` | ``0`` | - +-------------------------------------------------------------+-------------------------------------------------------------------------------------------------+--------------------------+ - | :ref:`int` | :ref:`type` | | - +-------------------------------------------------------------+-------------------------------------------------------------------------------------------------+--------------------------+ + +---------------------------------------------------------------+-------------------------------------------------------------------------------------------------+--------------------------+ + | :ref:`GLTFAccessorType` | :ref:`accessor_type` | ``0`` | + +---------------------------------------------------------------+-------------------------------------------------------------------------------------------------+--------------------------+ + | :ref:`int` | :ref:`buffer_view` | ``-1`` | + +---------------------------------------------------------------+-------------------------------------------------------------------------------------------------+--------------------------+ + | :ref:`int` | :ref:`byte_offset` | ``0`` | + +---------------------------------------------------------------+-------------------------------------------------------------------------------------------------+--------------------------+ + | :ref:`GLTFComponentType` | :ref:`component_type` | ``0`` | + +---------------------------------------------------------------+-------------------------------------------------------------------------------------------------+--------------------------+ + | :ref:`int` | :ref:`count` | ``0`` | + +---------------------------------------------------------------+-------------------------------------------------------------------------------------------------+--------------------------+ + | :ref:`PackedFloat64Array` | :ref:`max` | ``PackedFloat64Array()`` | + +---------------------------------------------------------------+-------------------------------------------------------------------------------------------------+--------------------------+ + | :ref:`PackedFloat64Array` | :ref:`min` | ``PackedFloat64Array()`` | + +---------------------------------------------------------------+-------------------------------------------------------------------------------------------------+--------------------------+ + | :ref:`bool` | :ref:`normalized` | ``false`` | + +---------------------------------------------------------------+-------------------------------------------------------------------------------------------------+--------------------------+ + | :ref:`int` | :ref:`sparse_count` | ``0`` | + +---------------------------------------------------------------+-------------------------------------------------------------------------------------------------+--------------------------+ + | :ref:`int` | :ref:`sparse_indices_buffer_view` | ``0`` | + +---------------------------------------------------------------+-------------------------------------------------------------------------------------------------+--------------------------+ + | :ref:`int` | :ref:`sparse_indices_byte_offset` | ``0`` | + +---------------------------------------------------------------+-------------------------------------------------------------------------------------------------+--------------------------+ + | :ref:`GLTFComponentType` | :ref:`sparse_indices_component_type` | ``0`` | + +---------------------------------------------------------------+-------------------------------------------------------------------------------------------------+--------------------------+ + | :ref:`int` | :ref:`sparse_values_buffer_view` | ``0`` | + +---------------------------------------------------------------+-------------------------------------------------------------------------------------------------+--------------------------+ + | :ref:`int` | :ref:`sparse_values_byte_offset` | ``0`` | + +---------------------------------------------------------------+-------------------------------------------------------------------------------------------------+--------------------------+ + | :ref:`int` | :ref:`type` | | + +---------------------------------------------------------------+-------------------------------------------------------------------------------------------------+--------------------------+ .. rst-class:: classref-section-separator @@ -269,7 +269,7 @@ Property Descriptions - |void| **set_accessor_type**\ (\ value\: :ref:`GLTFAccessorType`\ ) - :ref:`GLTFAccessorType` **get_accessor_type**\ (\ ) -The glTF accessor type as an enum. Possible values are 0 for "SCALAR", 1 for "VEC2", 2 for "VEC3", 3 for "VEC4", 4 for "MAT2", 5 for "MAT3", and 6 for "MAT4". +The glTF accessor type, as an enum. .. rst-class:: classref-item-separator @@ -313,12 +313,12 @@ The offset relative to the start of the buffer view in bytes. .. rst-class:: classref-property -:ref:`int` **component_type** = ``0`` :ref:`🔗` +:ref:`GLTFComponentType` **component_type** = ``0`` :ref:`🔗` .. rst-class:: classref-property-setget -- |void| **set_component_type**\ (\ value\: :ref:`int`\ ) -- :ref:`int` **get_component_type**\ (\ ) +- |void| **set_component_type**\ (\ value\: :ref:`GLTFComponentType`\ ) +- :ref:`GLTFComponentType` **get_component_type**\ (\ ) The glTF component type as an enum. See :ref:`GLTFComponentType` for possible values. Within the core glTF specification, a value of 5125 or "UNSIGNED_INT" must not be used for any accessor that is not referenced by mesh.primitive.indices. @@ -453,12 +453,12 @@ The offset relative to the start of the buffer view in bytes. .. rst-class:: classref-property -:ref:`int` **sparse_indices_component_type** = ``0`` :ref:`🔗` +:ref:`GLTFComponentType` **sparse_indices_component_type** = ``0`` :ref:`🔗` .. rst-class:: classref-property-setget -- |void| **set_sparse_indices_component_type**\ (\ value\: :ref:`int`\ ) -- :ref:`int` **get_sparse_indices_component_type**\ (\ ) +- |void| **set_sparse_indices_component_type**\ (\ value\: :ref:`GLTFComponentType`\ ) +- :ref:`GLTFComponentType` **get_sparse_indices_component_type**\ (\ ) The indices component data type as an enum. Possible values are 5121 for "UNSIGNED_BYTE", 5123 for "UNSIGNED_SHORT", and 5125 for "UNSIGNED_INT". @@ -513,9 +513,10 @@ The offset relative to the start of the bufferView in bytes. **Deprecated:** Use :ref:`accessor_type` instead. -The glTF accessor type as an enum. Use :ref:`accessor_type` instead. +The glTF accessor type, as an :ref:`int`. Possible values are ``0`` for "SCALAR", ``1`` for "VEC2", ``2`` for "VEC3", ``3`` for "VEC4", ``4`` for "MAT2", ``5`` for "MAT3", and ``6`` for "MAT4". .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_gltfanimation.rst b/classes/class_gltfanimation.rst index 20e846fd7..3e72b9653 100644 --- a/classes/class_gltfanimation.rst +++ b/classes/class_gltfanimation.rst @@ -14,7 +14,7 @@ GLTFAnimation .. container:: contribute - There is currently no description for this class. Please help us by :ref:`contributing one `! + There is currently no description for this class. Please help us by `contributing one `__! .. rst-class:: classref-introduction-group @@ -73,7 +73,7 @@ Property Descriptions .. container:: contribute - There is currently no description for this property. Please help us by :ref:`contributing one `! + There is currently no description for this property. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -126,6 +126,7 @@ Sets additional arbitrary data in this **GLTFAnimation** instance. This can be u The first argument should be the :ref:`GLTFDocumentExtension` name (does not have to match the extension name in the glTF file), and the second argument can be anything you want. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_gltfbufferview.rst b/classes/class_gltfbufferview.rst index c453d871c..0f1dc590d 100644 --- a/classes/class_gltfbufferview.rst +++ b/classes/class_gltfbufferview.rst @@ -191,6 +191,7 @@ Method Descriptions Loads the buffer view data from the buffer referenced by this buffer view in the given :ref:`GLTFState`. Interleaved data with a byte stride is not yet supported by this method. The data is returned as a :ref:`PackedByteArray`. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_gltfcamera.rst b/classes/class_gltfcamera.rst index 841a352ee..c820219c9 100644 --- a/classes/class_gltfcamera.rst +++ b/classes/class_gltfcamera.rst @@ -40,17 +40,17 @@ Properties .. table:: :widths: auto - +---------------------------+-----------------------------------------------------------+------------+ - | :ref:`float` | :ref:`depth_far` | ``4000.0`` | - +---------------------------+-----------------------------------------------------------+------------+ - | :ref:`float` | :ref:`depth_near` | ``0.05`` | - +---------------------------+-----------------------------------------------------------+------------+ - | :ref:`float` | :ref:`fov` | ``1.309`` | - +---------------------------+-----------------------------------------------------------+------------+ - | :ref:`bool` | :ref:`perspective` | ``true`` | - +---------------------------+-----------------------------------------------------------+------------+ - | :ref:`float` | :ref:`size_mag` | ``0.5`` | - +---------------------------+-----------------------------------------------------------+------------+ + +---------------------------+-----------------------------------------------------------+---------------+ + | :ref:`float` | :ref:`depth_far` | ``4000.0`` | + +---------------------------+-----------------------------------------------------------+---------------+ + | :ref:`float` | :ref:`depth_near` | ``0.05`` | + +---------------------------+-----------------------------------------------------------+---------------+ + | :ref:`float` | :ref:`fov` | ``1.3089969`` | + +---------------------------+-----------------------------------------------------------+---------------+ + | :ref:`bool` | :ref:`perspective` | ``true`` | + +---------------------------+-----------------------------------------------------------+---------------+ + | :ref:`float` | :ref:`size_mag` | ``0.5`` | + +---------------------------+-----------------------------------------------------------+---------------+ .. rst-class:: classref-reftable-group @@ -117,7 +117,7 @@ The distance to the near culling boundary for this camera relative to its local .. rst-class:: classref-property -:ref:`float` **fov** = ``1.309`` :ref:`🔗` +:ref:`float` **fov** = ``1.3089969`` :ref:`🔗` .. rst-class:: classref-property-setget @@ -214,6 +214,7 @@ Serializes this GLTFCamera instance into a :ref:`Dictionary`. Converts this GLTFCamera instance into a Godot :ref:`Camera3D` node. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_gltfdocument.rst b/classes/class_gltfdocument.rst index c548222d5..0835a677e 100644 --- a/classes/class_gltfdocument.rst +++ b/classes/class_gltfdocument.rst @@ -46,13 +46,19 @@ Properties .. table:: :widths: auto - +-----------------------------------------------------+-------------------------------------------------------------------+-----------+ - | :ref:`String` | :ref:`image_format` | ``"PNG"`` | - +-----------------------------------------------------+-------------------------------------------------------------------+-----------+ - | :ref:`float` | :ref:`lossy_quality` | ``0.75`` | - +-----------------------------------------------------+-------------------------------------------------------------------+-----------+ - | :ref:`RootNodeMode` | :ref:`root_node_mode` | ``0`` | - +-----------------------------------------------------+-------------------------------------------------------------------+-----------+ + +---------------------------------------------------------+-----------------------------------------------------------------------------------+------------+ + | :ref:`String` | :ref:`fallback_image_format` | ``"None"`` | + +---------------------------------------------------------+-----------------------------------------------------------------------------------+------------+ + | :ref:`float` | :ref:`fallback_image_quality` | ``0.25`` | + +---------------------------------------------------------+-----------------------------------------------------------------------------------+------------+ + | :ref:`String` | :ref:`image_format` | ``"PNG"`` | + +---------------------------------------------------------+-----------------------------------------------------------------------------------+------------+ + | :ref:`float` | :ref:`lossy_quality` | ``0.75`` | + +---------------------------------------------------------+-----------------------------------------------------------------------------------+------------+ + | :ref:`RootNodeMode` | :ref:`root_node_mode` | ``0`` | + +---------------------------------------------------------+-----------------------------------------------------------------------------------+------------+ + | :ref:`VisibilityMode` | :ref:`visibility_mode` | ``0`` | + +---------------------------------------------------------+-----------------------------------------------------------------------------------+------------+ .. rst-class:: classref-reftable-group @@ -125,6 +131,40 @@ Treat the Godot scene's root node as the root node of the glTF file, but do not Treat the Godot scene's root node as the name of the glTF scene, and add all of its children as root nodes of the glTF file. This uses only vanilla glTF features. This avoids an extra root node, but only the name of the Godot scene's root node will be preserved, as it will not be saved as a node. +.. rst-class:: classref-item-separator + +---- + +.. _enum_GLTFDocument_VisibilityMode: + +.. rst-class:: classref-enumeration + +enum **VisibilityMode**: :ref:`🔗` + +.. _class_GLTFDocument_constant_VISIBILITY_MODE_INCLUDE_REQUIRED: + +.. rst-class:: classref-enumeration-constant + +:ref:`VisibilityMode` **VISIBILITY_MODE_INCLUDE_REQUIRED** = ``0`` + +If the scene contains any non-visible nodes, include them, mark them as non-visible with ``KHR_node_visibility``, and require that importers respect their non-visibility. Downside: If the importer does not support ``KHR_node_visibility``, the file cannot be imported. + +.. _class_GLTFDocument_constant_VISIBILITY_MODE_INCLUDE_OPTIONAL: + +.. rst-class:: classref-enumeration-constant + +:ref:`VisibilityMode` **VISIBILITY_MODE_INCLUDE_OPTIONAL** = ``1`` + +If the scene contains any non-visible nodes, include them, mark them as non-visible with ``KHR_node_visibility``, and do not impose any requirements on importers. Downside: If the importer does not support ``KHR_node_visibility``, invisible objects will be visible. + +.. _class_GLTFDocument_constant_VISIBILITY_MODE_EXCLUDE: + +.. rst-class:: classref-enumeration-constant + +:ref:`VisibilityMode` **VISIBILITY_MODE_EXCLUDE** = ``2`` + +If the scene contains any non-visible nodes, do not include them in the export. This is the same as the behavior in Godot 4.4 and earlier. Downside: Invisible nodes will not exist in the exported file. + .. rst-class:: classref-section-separator ---- @@ -134,6 +174,42 @@ Treat the Godot scene's root node as the name of the glTF scene, and add all of Property Descriptions --------------------- +.. _class_GLTFDocument_property_fallback_image_format: + +.. rst-class:: classref-property + +:ref:`String` **fallback_image_format** = ``"None"`` :ref:`🔗` + +.. rst-class:: classref-property-setget + +- |void| **set_fallback_image_format**\ (\ value\: :ref:`String`\ ) +- :ref:`String` **get_fallback_image_format**\ (\ ) + +The user-friendly name of the fallback image format. This is used when exporting the glTF file, including writing to a file and writing to a byte array. + +This property may only be one of "None", "PNG", or "JPEG", and is only used when the :ref:`image_format` is not one of "None", "PNG", or "JPEG". If having multiple extension image formats is desired, that can be done using a :ref:`GLTFDocumentExtension` class - this property only covers the use case of providing a base glTF fallback image when using a custom image format. + +.. rst-class:: classref-item-separator + +---- + +.. _class_GLTFDocument_property_fallback_image_quality: + +.. rst-class:: classref-property + +:ref:`float` **fallback_image_quality** = ``0.25`` :ref:`🔗` + +.. rst-class:: classref-property-setget + +- |void| **set_fallback_image_quality**\ (\ value\: :ref:`float`\ ) +- :ref:`float` **get_fallback_image_quality**\ (\ ) + +The quality of the fallback image, if any. For PNG files, this downscales the image on both dimensions by this factor. For JPEG files, this is the lossy quality of the image. A low value is recommended, since including multiple high quality images in a glTF file defeats the file size gains of using a more efficient image format. + +.. rst-class:: classref-item-separator + +---- + .. _class_GLTFDocument_property_image_format: .. rst-class:: classref-property @@ -147,7 +223,7 @@ Property Descriptions The user-friendly name of the export image format. This is used when exporting the glTF file, including writing to a file and writing to a byte array. -By default, Godot allows the following options: "None", "PNG", "JPEG", "Lossless WebP", and "Lossy WebP". Support for more image formats can be added in :ref:`GLTFDocumentExtension` classes. +By default, Godot allows the following options: "None", "PNG", "JPEG", "Lossless WebP", and "Lossy WebP". Support for more image formats can be added in :ref:`GLTFDocumentExtension` classes. A single extension class can provide multiple options for the specific format to use, or even an option that uses multiple formats at once. .. rst-class:: classref-item-separator @@ -181,10 +257,27 @@ If :ref:`image_format` is a lossy imag - |void| **set_root_node_mode**\ (\ value\: :ref:`RootNodeMode`\ ) - :ref:`RootNodeMode` **get_root_node_mode**\ (\ ) -How to process the root node during export. See :ref:`RootNodeMode` for details. The default and recommended value is :ref:`ROOT_NODE_MODE_SINGLE_ROOT`. +How to process the root node during export. The default and recommended value is :ref:`ROOT_NODE_MODE_SINGLE_ROOT`. \ **Note:** Regardless of how the glTF file is exported, when importing, the root node type and name can be overridden in the scene import settings tab. +.. rst-class:: classref-item-separator + +---- + +.. _class_GLTFDocument_property_visibility_mode: + +.. rst-class:: classref-property + +:ref:`VisibilityMode` **visibility_mode** = ``0`` :ref:`🔗` + +.. rst-class:: classref-property-setget + +- |void| **set_visibility_mode**\ (\ value\: :ref:`VisibilityMode`\ ) +- :ref:`VisibilityMode` **get_visibility_mode**\ (\ ) + +How to deal with node visibility during export. This setting does nothing if all nodes are visible. The default and recommended value is :ref:`VISIBILITY_MODE_INCLUDE_REQUIRED`, which uses the ``KHR_node_visibility`` extension. + .. rst-class:: classref-section-separator ---- @@ -335,6 +428,7 @@ Takes a :ref:`GLTFState` object through the ``state`` parameter \ **Note:** The extension of the glTF file determines if it is a .glb binary file or a .gltf text file. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_gltfdocumentextension.rst b/classes/class_gltfdocumentextension.rst index 1d83aea90..c5f9cc09e 100644 --- a/classes/class_gltfdocumentextension.rst +++ b/classes/class_gltfdocumentextension.rst @@ -424,6 +424,7 @@ Part of the export process. This method is run after :ref:`_save_image_at_path() This method can be used to set up the extensions for the texture JSON by editing ``texture_json``. The extension must also be added as used extension with :ref:`GLTFState.add_used_extension()`, be sure to set ``required`` to ``true`` if you are not providing a fallback. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_gltfdocumentextensionconvertimportermesh.rst b/classes/class_gltfdocumentextensionconvertimportermesh.rst index 4df51759a..af9e48fec 100644 --- a/classes/class_gltfdocumentextensionconvertimportermesh.rst +++ b/classes/class_gltfdocumentextensionconvertimportermesh.rst @@ -14,7 +14,7 @@ GLTFDocumentExtensionConvertImporterMesh .. container:: contribute - There is currently no description for this class. Please help us by :ref:`contributing one `! + There is currently no description for this class. Please help us by `contributing one `__! .. rst-class:: classref-introduction-group @@ -24,6 +24,7 @@ Tutorials - :doc:`Runtime file loading and saving <../tutorials/io/runtime_file_loading_and_saving>` .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_gltflight.rst b/classes/class_gltflight.rst index f9c74903b..2b7071c28 100644 --- a/classes/class_gltflight.rst +++ b/classes/class_gltflight.rst @@ -47,7 +47,7 @@ Properties +-----------------------------+--------------------------------------------------------------------+-----------------------+ | :ref:`String` | :ref:`light_type` | ``""`` | +-----------------------------+--------------------------------------------------------------------+-----------------------+ - | :ref:`float` | :ref:`outer_cone_angle` | ``0.785398`` | + | :ref:`float` | :ref:`outer_cone_angle` | ``0.7853982`` | +-----------------------------+--------------------------------------------------------------------+-----------------------+ | :ref:`float` | :ref:`range` | ``inf`` | +-----------------------------+--------------------------------------------------------------------+-----------------------+ @@ -94,7 +94,9 @@ Property Descriptions - |void| **set_color**\ (\ value\: :ref:`Color`\ ) - :ref:`Color` **get_color**\ (\ ) -The :ref:`Color` of the light. Defaults to white. A black color causes the light to have no effect. +The :ref:`Color` of the light in linear space. Defaults to white. A black color causes the light to have no effect. + +This value is linear to match glTF, but will be converted to nonlinear sRGB when creating a Godot :ref:`Light3D` node upon import, or converted to linear when exporting a Godot :ref:`Light3D` to glTF. .. rst-class:: classref-item-separator @@ -157,7 +159,7 @@ The type of the light. The values accepted by Godot are "point", "spot", and "di .. rst-class:: classref-property -:ref:`float` **outer_cone_angle** = ``0.785398`` :ref:`🔗` +:ref:`float` **outer_cone_angle** = ``0.7853982`` :ref:`🔗` .. rst-class:: classref-property-setget @@ -183,7 +185,7 @@ At this angle, the light drops off to zero brightness. Between the inner and out - |void| **set_range**\ (\ value\: :ref:`float`\ ) - :ref:`float` **get_range**\ (\ ) -The range of the light, beyond which the light has no effect. glTF lights with no range defined behave like physical lights (which have infinite range). When creating a Godot light, the range is clamped to 4096. +The range of the light, beyond which the light has no effect. glTF lights with no range defined behave like physical lights (which have infinite range). When creating a Godot light, the range is clamped to ``4096.0``. .. rst-class:: classref-section-separator @@ -226,7 +228,7 @@ Create a new GLTFLight instance from the given Godot :ref:`Light3D`! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -240,7 +242,7 @@ Create a new GLTFLight instance from the given Godot :ref:`Light3D`! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -267,6 +269,7 @@ Serializes this GLTFLight instance into a :ref:`Dictionary`. Converts this GLTFLight instance into a Godot :ref:`Light3D` node. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_gltfmesh.rst b/classes/class_gltfmesh.rst index 1467251d2..d02ce63ea 100644 --- a/classes/class_gltfmesh.rst +++ b/classes/class_gltfmesh.rst @@ -169,6 +169,7 @@ Sets additional arbitrary data in this **GLTFMesh** instance. This can be used t The first argument should be the :ref:`GLTFDocumentExtension` name (does not have to match the extension name in the glTF file), and the second argument can be anything you want. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_gltfnode.rst b/classes/class_gltfnode.rst index 6cf3687bb..038cc24aa 100644 --- a/classes/class_gltfnode.rst +++ b/classes/class_gltfnode.rst @@ -65,6 +65,8 @@ Properties +-------------------------------------------------+-------------------------------------------------------------+-----------------------------------------------------+ | :ref:`int` | :ref:`skin` | ``-1`` | +-------------------------------------------------+-------------------------------------------------------------+-----------------------------------------------------+ + | :ref:`bool` | :ref:`visible` | ``true`` | + +-------------------------------------------------+-------------------------------------------------------------+-----------------------------------------------------+ | :ref:`Transform3D` | :ref:`xform` | ``Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0)`` | +-------------------------------------------------+-------------------------------------------------------------+-----------------------------------------------------+ @@ -106,7 +108,7 @@ Property Descriptions - |void| **set_camera**\ (\ value\: :ref:`int`\ ) - :ref:`int` **get_camera**\ (\ ) -If this glTF node is a camera, the index of the :ref:`GLTFCamera` in the :ref:`GLTFState` that describes the camera's properties. If -1, this node is not a camera. +If this glTF node is a camera, the index of the :ref:`GLTFCamera` in the :ref:`GLTFState` that describes the camera's properties. If ``-1``, this node is not a camera. .. rst-class:: classref-item-separator @@ -301,6 +303,23 @@ If this glTF node has a skin, the index of the :ref:`GLTFSkin` i ---- +.. _class_GLTFNode_property_visible: + +.. rst-class:: classref-property + +:ref:`bool` **visible** = ``true`` :ref:`🔗` + +.. rst-class:: classref-property-setget + +- |void| **set_visible**\ (\ value\: :ref:`bool`\ ) +- :ref:`bool` **get_visible**\ (\ ) + +If ``true``, the GLTF node is visible. If ``false``, the GLTF node is not visible. This is translated to the :ref:`Node3D.visible` property in the Godot scene, and is exported to ``KHR_node_visibility`` when ``false``. + +.. rst-class:: classref-item-separator + +---- + .. _class_GLTFNode_property_xform: .. rst-class:: classref-property @@ -374,6 +393,7 @@ Sets additional arbitrary data in this **GLTFNode** instance. This can be used t The first argument should be the :ref:`GLTFDocumentExtension` name (does not have to match the extension name in the glTF file), and the second argument can be anything you want. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_gltfobjectmodelproperty.rst b/classes/class_gltfobjectmodelproperty.rst index df372ec31..d53952a20 100644 --- a/classes/class_gltfobjectmodelproperty.rst +++ b/classes/class_gltfobjectmodelproperty.rst @@ -235,7 +235,7 @@ If set, this :ref:`Expression` will be used to convert the pro - |void| **set_json_pointers**\ (\ value\: :ref:`Array`\[:ref:`PackedStringArray`\]\ ) - :ref:`Array`\[:ref:`PackedStringArray`\] **get_json_pointers**\ (\ ) -The glTF object model JSON pointers used to identify the property in the glTF object model. In most cases, there will be only one item in this array, but niche cases may require multiple pointers. The items are themselves arrays which represent the JSON pointer split into its components. +The glTF object model JSON pointers used to identify the property in the glTF object model. In most cases, there will be only one item in this array, but specific cases may require multiple pointers. The items are themselves arrays which represent the JSON pointer split into its components. .. rst-class:: classref-item-separator @@ -271,7 +271,7 @@ In most cases :ref:`node_paths`\ ) - :ref:`GLTFObjectModelType` **get_object_model_type**\ (\ ) -The type of data stored in the glTF file as defined by the object model. This is a superset of the available accessor types, and determines the accessor type. See :ref:`GLTFObjectModelType` for possible values. +The type of data stored in the glTF file as defined by the object model. This is a superset of the available accessor types, and determines the accessor type. .. rst-class:: classref-item-separator @@ -368,6 +368,7 @@ Returns ``true`` if :ref:`node_paths` and :ref:`object_model_type` properties. This is a convenience method to set both properties at once, since they are almost always known at the same time. This method should be called once. Calling it again with the same values will have no effect. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_gltfphysicsbody.rst b/classes/class_gltfphysicsbody.rst index e2879a478..798bfae12 100644 --- a/classes/class_gltfphysicsbody.rst +++ b/classes/class_gltfphysicsbody.rst @@ -111,7 +111,11 @@ The angular velocity of the physics body, in radians per second. This is only us - |void| **set_body_type**\ (\ value\: :ref:`String`\ ) - :ref:`String` **get_body_type**\ (\ ) -The type of the body. When importing, this controls what type of :ref:`CollisionObject3D` node Godot should generate. Valid values are "static", "animatable", "character", "rigid", "vehicle", and "trigger". When exporting, this will be squashed down to one of "static", "kinematic", or "dynamic" motion types, or the "trigger" property. +The type of the body. + +When importing, this controls what type of :ref:`CollisionObject3D` node Godot should generate. Valid values are ``"static"``, ``"animatable"``, ``"character"``, ``"rigid"``, ``"vehicle"``, and ``"trigger"``. + +When exporting, this will be squashed down to one of ``"static"``, ``"kinematic"``, or ``"dynamic"`` motion types, or the ``"trigger"`` property. .. rst-class:: classref-item-separator @@ -275,6 +279,7 @@ Serializes this GLTFPhysicsBody instance into a :ref:`Dictionary` node. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_gltfphysicsshape.rst b/classes/class_gltfphysicsshape.rst index 1556aa4f5..89155ece9 100644 --- a/classes/class_gltfphysicsshape.rst +++ b/classes/class_gltfphysicsshape.rst @@ -98,7 +98,7 @@ Property Descriptions - |void| **set_height**\ (\ value\: :ref:`float`\ ) - :ref:`float` **get_height**\ (\ ) -The height of the shape, in meters. This is only used when the shape type is "capsule" or "cylinder". This value should not be negative, and for "capsule" it should be at least twice the radius. +The height of the shape, in meters. This is only used when the shape type is ``"capsule"`` or ``"cylinder"``. This value should not be negative, and for ``"capsule"`` it should be at least twice the radius. .. rst-class:: classref-item-separator @@ -115,7 +115,7 @@ The height of the shape, in meters. This is only used when the shape type is "ca - |void| **set_importer_mesh**\ (\ value\: :ref:`ImporterMesh`\ ) - :ref:`ImporterMesh` **get_importer_mesh**\ (\ ) -The :ref:`ImporterMesh` resource of the shape. This is only used when the shape type is "hull" (convex hull) or "trimesh" (concave trimesh). +The :ref:`ImporterMesh` resource of the shape. This is only used when the shape type is ``"hull"`` (convex hull) or ``"trimesh"`` (concave trimesh). .. rst-class:: classref-item-separator @@ -132,7 +132,7 @@ The :ref:`ImporterMesh` resource of the shape. This is only - |void| **set_is_trigger**\ (\ value\: :ref:`bool`\ ) - :ref:`bool` **get_is_trigger**\ (\ ) -If ``true``, indicates that this shape is a trigger. For Godot, this means that the shape should be a child of an Area3D node. +If ``true``, indicates that this shape is a trigger. For Godot, this means that the shape should be a child of an :ref:`Area3D` node. This is the only variable not used in the :ref:`to_node()` method, it's intended to be used alongside when deciding where to add the generated node as a child. @@ -151,7 +151,7 @@ This is the only variable not used in the :ref:`to_node()`\ ) - :ref:`int` **get_mesh_index**\ (\ ) -The index of the shape's mesh in the glTF file. This is only used when the shape type is "hull" (convex hull) or "trimesh" (concave trimesh). +The index of the shape's mesh in the glTF file. This is only used when the shape type is ``"hull"`` (convex hull) or ``"trimesh"`` (concave trimesh). .. rst-class:: classref-item-separator @@ -168,7 +168,7 @@ The index of the shape's mesh in the glTF file. This is only used when the shape - |void| **set_radius**\ (\ value\: :ref:`float`\ ) - :ref:`float` **get_radius**\ (\ ) -The radius of the shape, in meters. This is only used when the shape type is "capsule", "cylinder", or "sphere". This value should not be negative. +The radius of the shape, in meters. This is only used when the shape type is ``"capsule"``, ``"cylinder"``, or ``"sphere"``. This value should not be negative. .. rst-class:: classref-item-separator @@ -185,7 +185,7 @@ The radius of the shape, in meters. This is only used when the shape type is "ca - |void| **set_shape_type**\ (\ value\: :ref:`String`\ ) - :ref:`String` **get_shape_type**\ (\ ) -The type of shape this shape represents. Valid values are "box", "capsule", "cylinder", "sphere", "hull", and "trimesh". +The type of shape this shape represents. Valid values are ``"box"``, ``"capsule"``, ``"cylinder"``, ``"sphere"``, ``"hull"``, and ``"trimesh"``. .. rst-class:: classref-item-separator @@ -202,7 +202,7 @@ The type of shape this shape represents. Valid values are "box", "capsule", "cyl - |void| **set_size**\ (\ value\: :ref:`Vector3`\ ) - :ref:`Vector3` **get_size**\ (\ ) -The size of the shape, in meters. This is only used when the shape type is "box", and it represents the "diameter" of the box. This value should not be negative. +The size of the shape, in meters. This is only used when the shape type is ``"box"``, and it represents the ``"diameter"`` of the box. This value should not be negative. .. rst-class:: classref-section-separator @@ -282,6 +282,7 @@ Converts this GLTFPhysicsShape instance into a Godot :ref:`CollisionShape3D` resource. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_gltfskeleton.rst b/classes/class_gltfskeleton.rst index 988e38037..970ef5f3c 100644 --- a/classes/class_gltfskeleton.rst +++ b/classes/class_gltfskeleton.rst @@ -14,7 +14,7 @@ GLTFSkeleton .. container:: contribute - There is currently no description for this class. Please help us by :ref:`contributing one `! + There is currently no description for this class. Please help us by `contributing one `__! .. rst-class:: classref-introduction-group @@ -83,7 +83,7 @@ Property Descriptions .. container:: contribute - There is currently no description for this property. Please help us by :ref:`contributing one `! + There is currently no description for this property. Please help us by `contributing one `__! **Note:** The returned array is *copied* and any changes to it will not update the original property value. See :ref:`PackedInt32Array` for more details. @@ -104,7 +104,7 @@ Property Descriptions .. container:: contribute - There is currently no description for this property. Please help us by :ref:`contributing one `! + There is currently no description for this property. Please help us by `contributing one `__! **Note:** The returned array is *copied* and any changes to it will not update the original property value. See :ref:`PackedInt32Array` for more details. @@ -125,7 +125,7 @@ Method Descriptions .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -139,7 +139,7 @@ Method Descriptions .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -165,7 +165,7 @@ Returns a :ref:`Dictionary` that maps skeleton bone indices to .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -179,7 +179,7 @@ Returns a :ref:`Dictionary` that maps skeleton bone indices to .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -205,9 +205,10 @@ Sets a :ref:`Dictionary` that maps skeleton bone indices to th .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_gltfskin.rst b/classes/class_gltfskin.rst index 1a1b7201e..7722d7057 100644 --- a/classes/class_gltfskin.rst +++ b/classes/class_gltfskin.rst @@ -14,7 +14,7 @@ GLTFSkin .. container:: contribute - There is currently no description for this class. Please help us by :ref:`contributing one `! + There is currently no description for this class. Please help us by `contributing one `__! .. rst-class:: classref-introduction-group @@ -91,7 +91,7 @@ Property Descriptions .. container:: contribute - There is currently no description for this property. Please help us by :ref:`contributing one `! + There is currently no description for this property. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -110,7 +110,7 @@ Property Descriptions .. container:: contribute - There is currently no description for this property. Please help us by :ref:`contributing one `! + There is currently no description for this property. Please help us by `contributing one `__! **Note:** The returned array is *copied* and any changes to it will not update the original property value. See :ref:`PackedInt32Array` for more details. @@ -131,7 +131,7 @@ Property Descriptions .. container:: contribute - There is currently no description for this property. Please help us by :ref:`contributing one `! + There is currently no description for this property. Please help us by `contributing one `__! **Note:** The returned array is *copied* and any changes to it will not update the original property value. See :ref:`PackedInt32Array` for more details. @@ -152,7 +152,7 @@ Property Descriptions .. container:: contribute - There is currently no description for this property. Please help us by :ref:`contributing one `! + There is currently no description for this property. Please help us by `contributing one `__! **Note:** The returned array is *copied* and any changes to it will not update the original property value. See :ref:`PackedInt32Array` for more details. @@ -173,7 +173,7 @@ Property Descriptions .. container:: contribute - There is currently no description for this property. Please help us by :ref:`contributing one `! + There is currently no description for this property. Please help us by `contributing one `__! **Note:** The returned array is *copied* and any changes to it will not update the original property value. See :ref:`PackedInt32Array` for more details. @@ -194,7 +194,7 @@ Property Descriptions .. container:: contribute - There is currently no description for this property. Please help us by :ref:`contributing one `! + There is currently no description for this property. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -213,7 +213,7 @@ Property Descriptions .. container:: contribute - There is currently no description for this property. Please help us by :ref:`contributing one `! + There is currently no description for this property. Please help us by `contributing one `__! .. rst-class:: classref-section-separator @@ -232,7 +232,7 @@ Method Descriptions .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -246,7 +246,7 @@ Method Descriptions .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -260,7 +260,7 @@ Method Descriptions .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -274,7 +274,7 @@ Method Descriptions .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -288,7 +288,7 @@ Method Descriptions .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -302,9 +302,10 @@ Method Descriptions .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_gltfspecgloss.rst b/classes/class_gltfspecgloss.rst index 0cc58a899..0784ecc0d 100644 --- a/classes/class_gltfspecgloss.rst +++ b/classes/class_gltfspecgloss.rst @@ -141,6 +141,7 @@ The specular-glossiness texture. The specular RGB color of the material. The alpha channel is unused. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_gltfstate.rst b/classes/class_gltfstate.rst index b88dba95d..494f3b2f5 100644 --- a/classes/class_gltfstate.rst +++ b/classes/class_gltfstate.rst @@ -261,7 +261,7 @@ The folder path associated with this glTF data. This is used to find other files .. container:: contribute - There is currently no description for this property. Please help us by :ref:`contributing one `! + There is currently no description for this property. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -297,7 +297,7 @@ The copyright string in the asset header of the glTF file. This is set during im .. container:: contribute - There is currently no description for this property. Please help us by :ref:`contributing one `! + There is currently no description for this property. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -386,7 +386,7 @@ The original raw JSON document corresponding to this GLTFState. .. container:: contribute - There is currently no description for this property. Please help us by :ref:`contributing one `! + There is currently no description for this property. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -405,7 +405,7 @@ The original raw JSON document corresponding to this GLTFState. .. container:: contribute - There is currently no description for this property. Please help us by :ref:`contributing one `! + There is currently no description for this property. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -460,7 +460,7 @@ The name of the scene. When importing, if not specified, this will be the file n .. container:: contribute - There is currently no description for this property. Please help us by :ref:`contributing one `! + There is currently no description for this property. Please help us by `contributing one `__! .. rst-class:: classref-section-separator @@ -489,7 +489,7 @@ Appends an extension to the list of extensions used by this glTF file during ser :ref:`int` **append_data_to_buffers**\ (\ data\: :ref:`PackedByteArray`, deduplication\: :ref:`bool`\ ) :ref:`🔗` -Appends the given byte array data to the buffers and creates a :ref:`GLTFBufferView` for it. The index of the destination :ref:`GLTFBufferView` is returned. If ``deduplication`` is ``true``, the buffers will first be searched for duplicate data, otherwise new bytes will always be appended. +Appends the given byte array ``data`` to the buffers and creates a :ref:`GLTFBufferView` for it. The index of the destination :ref:`GLTFBufferView` is returned. If ``deduplication`` is ``true``, the buffers are first searched for duplicate data, otherwise new bytes are always appended. .. rst-class:: classref-item-separator @@ -501,7 +501,7 @@ Appends the given byte array data to the buffers and creates a :ref:`GLTFBufferV :ref:`int` **append_gltf_node**\ (\ gltf_node\: :ref:`GLTFNode`, godot_scene_node\: :ref:`Node`, parent_node_index\: :ref:`int`\ ) :ref:`🔗` -Append the given :ref:`GLTFNode` to the state, and return its new index. This can be used to export one Godot node as multiple glTF nodes, or inject new glTF nodes at import time. On import, this must be called before :ref:`GLTFDocumentExtension._generate_scene_node()` finishes for the parent node. On export, this must be called before :ref:`GLTFDocumentExtension._export_node()` runs for the parent node. +Appends the given :ref:`GLTFNode` to the state, and returns its new index. This can be used to export one Godot node as multiple glTF nodes, or inject new glTF nodes at import time. On import, this must be called before :ref:`GLTFDocumentExtension._generate_scene_node()` finishes for the parent node. On export, this must be called before :ref:`GLTFDocumentExtension._export_node()` runs for the parent node. The ``godot_scene_node`` parameter is the Godot scene node that corresponds to this glTF node. This is highly recommended to be set to a valid node, but may be ``null`` if there is no corresponding Godot scene node. One Godot scene node may be used for multiple glTF nodes, so if exporting multiple glTF nodes for one Godot scene node, use the same Godot scene node for each. @@ -519,7 +519,7 @@ The ``parent_node_index`` parameter is the index of the parent :ref:`GLTFNode`! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -583,7 +583,7 @@ Returns an array of all :ref:`GLTFAnimation`\ s in the glTF .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -609,7 +609,7 @@ Returns an array of all :ref:`GLTFCamera`\ s in the glTF file. .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -647,7 +647,7 @@ Returns an array of all :ref:`GLTFLight`\ s in the glTF file. T .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -749,7 +749,7 @@ Retrieves the array of texture samplers that are used by the textures contained .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -787,7 +787,7 @@ Returns an array of unique node names. This is used in both the import process a .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -827,7 +827,7 @@ Sets the :ref:`GLTFAnimation`\ s in the state. When importi .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -853,7 +853,7 @@ Sets the :ref:`GLTFCamera`\ s in the state. These are the came .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -891,7 +891,7 @@ Sets the :ref:`GLTFLight`\ s in the state. These are the lights .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -965,7 +965,7 @@ Sets the array of texture samplers that are used by the textures contained in th .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -992,6 +992,7 @@ Sets the unique animation names in the state. This is only used during the impor Sets the unique node names in the state. This is used in both the import process and export process. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_gltftexture.rst b/classes/class_gltftexture.rst index b78175b38..c5ab3fbc6 100644 --- a/classes/class_gltftexture.rst +++ b/classes/class_gltftexture.rst @@ -75,6 +75,7 @@ ID of the texture sampler to use when sampling the image. If -1, then the defaul The index of the image associated with this texture, see :ref:`GLTFState.get_images()`. If -1, then this texture does not have an image assigned. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_gltftexturesampler.rst b/classes/class_gltftexturesampler.rst index 9e120d012..1da001de7 100644 --- a/classes/class_gltftexturesampler.rst +++ b/classes/class_gltftexturesampler.rst @@ -120,6 +120,7 @@ Wrapping mode to use for S-axis (horizontal) texture coordinates. Wrapping mode to use for T-axis (vertical) texture coordinates. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_gpuparticles2d.rst b/classes/class_gpuparticles2d.rst index 68bb8cd8c..c529c5062 100644 --- a/classes/class_gpuparticles2d.rst +++ b/classes/class_gpuparticles2d.rst @@ -305,7 +305,7 @@ Multiplier for particle's collision radius. ``1.0`` corresponds to the size of t - |void| **set_draw_order**\ (\ value\: :ref:`DrawOrder`\ ) - :ref:`DrawOrder` **get_draw_order**\ (\ ) -Particle draw order. Uses :ref:`DrawOrder` values. +Particle draw order. .. rst-class:: classref-item-separator @@ -775,6 +775,7 @@ Restarts the particle emission cycle, clearing existing particles. To avoid part If ``keep_seed`` is ``true``, the current random seed will be preserved. Useful for seeking and playback. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_gpuparticles3d.rst b/classes/class_gpuparticles3d.rst index d7d5e253b..14d4def27 100644 --- a/classes/class_gpuparticles3d.rst +++ b/classes/class_gpuparticles3d.rst @@ -264,7 +264,7 @@ enum **TransformAlign**: :ref:`🔗` .. container:: contribute - There is currently no description for this enum. Please help us by :ref:`contributing one `! + There is currently no description for this enum. Please help us by `contributing one `__! @@ -276,7 +276,7 @@ enum **TransformAlign**: :ref:`🔗` .. container:: contribute - There is currently no description for this enum. Please help us by :ref:`contributing one `! + There is currently no description for this enum. Please help us by `contributing one `__! @@ -288,7 +288,7 @@ enum **TransformAlign**: :ref:`🔗` .. container:: contribute - There is currently no description for this enum. Please help us by :ref:`contributing one `! + There is currently no description for this enum. Please help us by `contributing one `__! @@ -300,7 +300,7 @@ enum **TransformAlign**: :ref:`🔗` .. container:: contribute - There is currently no description for this enum. Please help us by :ref:`contributing one `! + There is currently no description for this enum. Please help us by `contributing one `__! @@ -398,7 +398,7 @@ The base diameter for particle collision in meters. If particles appear to sink - |void| **set_draw_order**\ (\ value\: :ref:`DrawOrder`\ ) - :ref:`DrawOrder` **get_draw_order**\ (\ ) -Particle draw order. Uses :ref:`DrawOrder` values. +Particle draw order. \ **Note:** :ref:`DRAW_ORDER_INDEX` is the only option that supports motion vectors for effects like TAA. It is suggested to use this draw order if the particles are opaque to fix ghosting artifacts. @@ -504,7 +504,7 @@ The number of draw passes when rendering particles. .. container:: contribute - There is currently no description for this property. Please help us by :ref:`contributing one `! + There is currently no description for this property. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -826,7 +826,7 @@ The amount of time the particle's trail should represent (in seconds). Only effe .. container:: contribute - There is currently no description for this property. Please help us by :ref:`contributing one `! + There is currently no description for this property. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -966,6 +966,7 @@ If ``keep_seed`` is ``true``, the current random seed will be preserved. Useful Sets the :ref:`Mesh` that is drawn at index ``pass``. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_gpuparticlesattractor3d.rst b/classes/class_gpuparticlesattractor3d.rst index 1cb55fe99..3e750bfd3 100644 --- a/classes/class_gpuparticlesattractor3d.rst +++ b/classes/class_gpuparticlesattractor3d.rst @@ -127,6 +127,7 @@ Adjusts how directional the attractor is. At ``0.0``, the attractor is not direc Adjusts the strength of the attractor. If :ref:`strength` is negative, particles will be pushed in the opposite direction. Particles will be pushed *away* from the attractor's origin if :ref:`directionality` is ``0.0``, or towards local +Z if :ref:`directionality` is greater than ``0.0``. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_gpuparticlesattractorbox3d.rst b/classes/class_gpuparticlesattractorbox3d.rst index 64b42371c..6e652cc86 100644 --- a/classes/class_gpuparticlesattractorbox3d.rst +++ b/classes/class_gpuparticlesattractorbox3d.rst @@ -60,6 +60,7 @@ Property Descriptions The attractor box's size in 3D units. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_gpuparticlesattractorsphere3d.rst b/classes/class_gpuparticlesattractorsphere3d.rst index a0199f2be..75d3b1313 100644 --- a/classes/class_gpuparticlesattractorsphere3d.rst +++ b/classes/class_gpuparticlesattractorsphere3d.rst @@ -62,6 +62,7 @@ The attractor sphere's radius in 3D units. \ **Note:** Stretched ellipses can be obtained by using non-uniform scaling on the **GPUParticlesAttractorSphere3D** node. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_gpuparticlesattractorvectorfield3d.rst b/classes/class_gpuparticlesattractorvectorfield3d.rst index 25a122ef0..157323fed 100644 --- a/classes/class_gpuparticlesattractorvectorfield3d.rst +++ b/classes/class_gpuparticlesattractorvectorfield3d.rst @@ -83,6 +83,7 @@ The 3D texture to be used. Values are linearly interpolated between the texture' \ **Note:** To get better performance, the 3D texture's resolution should reflect the :ref:`size` of the attractor. Since particle attraction is usually low-frequency data, the texture can be kept at a low resolution such as 64×64×64. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_gpuparticlescollision3d.rst b/classes/class_gpuparticlescollision3d.rst index cc3a4ce30..b5ebd1706 100644 --- a/classes/class_gpuparticlescollision3d.rst +++ b/classes/class_gpuparticlescollision3d.rst @@ -72,6 +72,7 @@ After configuring particle nodes accordingly, specific layers can be unchecked t Particle collision can also be disabled on a per-process material basis by setting :ref:`ParticleProcessMaterial.collision_mode` on the :ref:`GPUParticles3D` node. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_gpuparticlescollisionbox3d.rst b/classes/class_gpuparticlescollisionbox3d.rst index a335fba49..7b7dc7bb2 100644 --- a/classes/class_gpuparticlescollisionbox3d.rst +++ b/classes/class_gpuparticlescollisionbox3d.rst @@ -62,6 +62,7 @@ Property Descriptions The collision box's size in 3D units. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_gpuparticlescollisionheightfield3d.rst b/classes/class_gpuparticlescollisionheightfield3d.rst index bc087a530..3cb0c192e 100644 --- a/classes/class_gpuparticlescollisionheightfield3d.rst +++ b/classes/class_gpuparticlescollisionheightfield3d.rst @@ -286,6 +286,7 @@ Returns ``true`` if the specified layer of the :ref:`heightfield_mask`, given a ``layer_number`` between ``1`` and ``20``, inclusive. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_gpuparticlescollisionsdf3d.rst b/classes/class_gpuparticlescollisionsdf3d.rst index 4f31607be..8b1f064ab 100644 --- a/classes/class_gpuparticlescollisionsdf3d.rst +++ b/classes/class_gpuparticlescollisionsdf3d.rst @@ -256,6 +256,7 @@ Returns whether or not the specified layer of the :ref:`bake_mask`, given a ``layer_number`` between 1 and 32. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_gpuparticlescollisionsphere3d.rst b/classes/class_gpuparticlescollisionsphere3d.rst index f4a2a3fbf..8149e4d55 100644 --- a/classes/class_gpuparticlescollisionsphere3d.rst +++ b/classes/class_gpuparticlescollisionsphere3d.rst @@ -62,6 +62,7 @@ Property Descriptions The collision sphere's radius in 3D units. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_gradient.rst b/classes/class_gradient.rst index 642aab834..31dccf6e9 100644 --- a/classes/class_gradient.rst +++ b/classes/class_gradient.rst @@ -183,7 +183,7 @@ Gradient's colors as a :ref:`PackedColorArray`. - |void| **set_interpolation_color_space**\ (\ value\: :ref:`ColorSpace`\ ) - :ref:`ColorSpace` **get_interpolation_color_space**\ (\ ) -The color space used to interpolate between points of the gradient. It does not affect the returned colors, which will always be in sRGB space. See :ref:`ColorSpace` for available modes. +The color space used to interpolate between points of the gradient. It does not affect the returned colors, which will always be in sRGB space. \ **Note:** This setting has no effect when :ref:`interpolation_mode` is set to :ref:`GRADIENT_INTERPOLATE_CONSTANT`. @@ -202,7 +202,7 @@ The color space used to interpolate between points of the gradient. It does not - |void| **set_interpolation_mode**\ (\ value\: :ref:`InterpolationMode`\ ) - :ref:`InterpolationMode` **get_interpolation_mode**\ (\ ) -The algorithm used to interpolate between points of the gradient. See :ref:`InterpolationMode` for available modes. +The algorithm used to interpolate between points of the gradient. .. rst-class:: classref-item-separator @@ -314,7 +314,7 @@ Reverses/mirrors the gradient. :ref:`Color` **sample**\ (\ offset\: :ref:`float`\ ) :ref:`🔗` -Returns the interpolated color specified by ``offset``. +Returns the interpolated color specified by ``offset``. ``offset`` should be between ``0.0`` and ``1.0`` (inclusive). Using a value lower than ``0.0`` will return the same color as ``0.0``, and using a value higher than ``1.0`` will return the same color as ``1.0``. If your input value is not within this range, consider using :ref:`@GlobalScope.remap()` on the input value with output values set to ``0.0`` and ``1.0``. .. rst-class:: classref-item-separator @@ -341,6 +341,7 @@ Sets the color of the gradient color at index ``point``. Sets the offset for the gradient color at index ``point``. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_gradienttexture1d.rst b/classes/class_gradienttexture1d.rst index 2e939f756..2690b55ec 100644 --- a/classes/class_gradienttexture1d.rst +++ b/classes/class_gradienttexture1d.rst @@ -96,6 +96,7 @@ If ``true``, the generated texture will support high dynamic range (:ref:`Image. The number of color samples that will be obtained from the :ref:`Gradient`. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_gradienttexture2d.rst b/classes/class_gradienttexture2d.rst index ad66f7118..7c134452f 100644 --- a/classes/class_gradienttexture2d.rst +++ b/classes/class_gradienttexture2d.rst @@ -19,7 +19,9 @@ A 2D texture that creates a pattern with colors obtained from a :ref:`Gradient` to fill the texture data. This texture is able to transform a color transition into different patterns such as a linear or a radial gradient. The gradient is sampled individually for each pixel so it does not necessarily represent an exact copy of the gradient(see :ref:`width` and :ref:`height`). See also :ref:`GradientTexture1D`, :ref:`CurveTexture` and :ref:`CurveXYZTexture`. +A 2D texture that obtains colors from a :ref:`Gradient` to fill the texture data. This texture is able to transform a color transition into different patterns such as a linear or a radial gradient. The texture is filled by interpolating colors starting from :ref:`fill_from` to :ref:`fill_to` offsets by default, but the gradient fill can be repeated to cover the entire texture. + +The gradient is sampled individually for each pixel so it does not necessarily represent an exact copy of the gradient (see :ref:`width` and :ref:`height`). See also :ref:`GradientTexture1D`, :ref:`CurveTexture` and :ref:`CurveXYZTexture`. .. rst-class:: classref-reftable-group @@ -142,7 +144,7 @@ Property Descriptions - |void| **set_fill**\ (\ value\: :ref:`Fill`\ ) - :ref:`Fill` **get_fill**\ (\ ) -The gradient fill type, one of the :ref:`Fill` values. The texture is filled by interpolating colors starting from :ref:`fill_from` to :ref:`fill_to` offsets. +The gradient's fill type. .. rst-class:: classref-item-separator @@ -227,7 +229,7 @@ The number of vertical color samples that will be obtained from the :ref:`Gradie - |void| **set_repeat**\ (\ value\: :ref:`Repeat`\ ) - :ref:`Repeat` **get_repeat**\ (\ ) -The gradient repeat type, one of the :ref:`Repeat` values. The texture is filled starting from :ref:`fill_from` to :ref:`fill_to` offsets by default, but the gradient fill can be repeated to cover the entire texture. +The gradient's repeat type. .. rst-class:: classref-item-separator @@ -264,6 +266,7 @@ If ``true``, the generated texture will support high dynamic range (:ref:`Image. The number of horizontal color samples that will be obtained from the :ref:`Gradient`, which also represents the texture's width. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_graphedit.rst b/classes/class_graphedit.rst index 47c308129..751dd4bd7 100644 --- a/classes/class_graphedit.rst +++ b/classes/class_graphedit.rst @@ -82,11 +82,13 @@ Properties +------------------------------------------------------------------+--------------------------------------------------------------------------------------------+---------------------------------------------------------------------------+ | :ref:`bool` | :ref:`snapping_enabled` | ``true`` | +------------------------------------------------------------------+--------------------------------------------------------------------------------------------+---------------------------------------------------------------------------+ + | :ref:`Dictionary` | :ref:`type_names` | ``{}`` | + +------------------------------------------------------------------+--------------------------------------------------------------------------------------------+---------------------------------------------------------------------------+ | :ref:`float` | :ref:`zoom` | ``1.0`` | +------------------------------------------------------------------+--------------------------------------------------------------------------------------------+---------------------------------------------------------------------------+ - | :ref:`float` | :ref:`zoom_max` | ``2.0736`` | + | :ref:`float` | :ref:`zoom_max` | ``2.0736003`` | +------------------------------------------------------------------+--------------------------------------------------------------------------------------------+---------------------------------------------------------------------------+ - | :ref:`float` | :ref:`zoom_min` | ``0.232568`` | + | :ref:`float` | :ref:`zoom_min` | ``0.23256795`` | +------------------------------------------------------------------+--------------------------------------------------------------------------------------------+---------------------------------------------------------------------------+ | :ref:`float` | :ref:`zoom_step` | ``1.2`` | +------------------------------------------------------------------+--------------------------------------------------------------------------------------------+---------------------------------------------------------------------------+ @@ -136,6 +138,8 @@ Methods +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`PackedVector2Array` | :ref:`get_connection_line`\ (\ from_node\: :ref:`Vector2`, to_node\: :ref:`Vector2`\ ) |const| | +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Array`\[:ref:`Dictionary`\] | :ref:`get_connection_list_from_node`\ (\ node\: :ref:`StringName`\ ) |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`Array`\[:ref:`Dictionary`\] | :ref:`get_connections_intersecting_with_rect`\ (\ rect\: :ref:`Rect2`\ ) |const| | +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`GraphFrame` | :ref:`get_element_frame`\ (\ element\: :ref:`StringName`\ ) | @@ -206,6 +210,8 @@ Theme Properties +-----------------------------------+-----------------------------------------------------------------------------------------------------------+-------------------------------+ | :ref:`StyleBox` | :ref:`panel` | | +-----------------------------------+-----------------------------------------------------------------------------------------------------------+-------------------------------+ + | :ref:`StyleBox` | :ref:`panel_focus` | | + +-----------------------------------+-----------------------------------------------------------------------------------------------------------+-------------------------------+ .. rst-class:: classref-section-separator @@ -864,6 +870,23 @@ If ``true``, enables snapping. ---- +.. _class_GraphEdit_property_type_names: + +.. rst-class:: classref-property + +:ref:`Dictionary` **type_names** = ``{}`` :ref:`🔗` + +.. rst-class:: classref-property-setget + +- |void| **set_type_names**\ (\ value\: :ref:`Dictionary`\ ) +- :ref:`Dictionary` **get_type_names**\ (\ ) + +:ref:`Dictionary` of human readable port type names. + +.. rst-class:: classref-item-separator + +---- + .. _class_GraphEdit_property_zoom: .. rst-class:: classref-property @@ -885,7 +908,7 @@ The current zoom value. .. rst-class:: classref-property -:ref:`float` **zoom_max** = ``2.0736`` :ref:`🔗` +:ref:`float` **zoom_max** = ``2.0736003`` :ref:`🔗` .. rst-class:: classref-property-setget @@ -902,7 +925,7 @@ The upper zoom limit. .. rst-class:: classref-property -:ref:`float` **zoom_min** = ``0.232568`` :ref:`🔗` +:ref:`float` **zoom_min** = ``0.23256795`` :ref:`🔗` .. rst-class:: classref-property-setget @@ -967,7 +990,7 @@ Below is a sample code to help get started: var port_size = Vector2(get_theme_constant("port_grab_distance_horizontal"), get_theme_constant("port_grab_distance_vertical")) var port_pos = in_node.get_position() + in_node.get_input_port_position(in_port) - port_size / 2 var rect = Rect2(port_pos, port_size) - + return rect.has_point(mouse_position) .. rst-class:: classref-item-separator @@ -990,7 +1013,7 @@ Below is a sample code to help get started: var port_size = Vector2(get_theme_constant("port_grab_distance_horizontal"), get_theme_constant("port_grab_distance_vertical")) var port_pos = in_node.get_position() + in_node.get_output_port_position(in_port) - port_size / 2 var rect = Rect2(port_pos, port_size) - + return rect.has_point(mouse_position) .. rst-class:: classref-item-separator @@ -1229,6 +1252,51 @@ Returns the points which would make up a connection between ``from_node`` and `` ---- +.. _class_GraphEdit_method_get_connection_list_from_node: + +.. rst-class:: classref-method + +:ref:`Array`\[:ref:`Dictionary`\] **get_connection_list_from_node**\ (\ node\: :ref:`StringName`\ ) |const| :ref:`🔗` + +Returns an :ref:`Array` containing a list of all connections for ``node``. + +A connection is represented as a :ref:`Dictionary` in the form of: + +:: + + { + from_node: StringName, + from_port: int, + to_node: StringName, + to_port: int, + keep_alive: bool + } + +\ **Example:** Get all connections on a specific port: + +:: + + func get_connection_list_from_port(node, port): + var connections = get_connection_list_from_node(node) + var result = [] + for connection in connections: + var dict = {} + if connection["from_node"] == node and connection["from_port"] == port: + dict["node"] = connection["to_node"] + dict["port"] = connection["to_port"] + dict["type"] = "left" + result.push_back(dict) + elif connection["to_node"] == node and connection["to_port"] == port: + dict["node"] = connection["from_node"] + dict["port"] = connection["from_port"] + dict["type"] = "right" + result.push_back(dict) + return result + +.. rst-class:: classref-item-separator + +---- + .. _class_GraphEdit_method_get_connections_intersecting_with_rect: .. rst-class:: classref-method @@ -1596,7 +1664,7 @@ The icon for the zoom reset button. .. container:: contribute - There is currently no description for this theme property. Please help us by :ref:`contributing one `! + There is currently no description for this theme property. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -1610,7 +1678,20 @@ The icon for the zoom reset button. The background drawn under the grid. +.. rst-class:: classref-item-separator + +---- + +.. _class_GraphEdit_theme_style_panel_focus: + +.. rst-class:: classref-themeproperty + +:ref:`StyleBox` **panel_focus** :ref:`🔗` + +:ref:`StyleBox` used when the **GraphEdit** is focused (when used with assistive apps). + .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_graphelement.rst b/classes/class_graphelement.rst index c8e1fc382..60913519b 100644 --- a/classes/class_graphelement.rst +++ b/classes/class_graphelement.rst @@ -268,6 +268,7 @@ Theme Property Descriptions The icon used for the resizer, visible when :ref:`resizable` is enabled. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_graphframe.rst b/classes/class_graphframe.rst index 0c4a4a8c2..d37b46698 100644 --- a/classes/class_graphframe.rst +++ b/classes/class_graphframe.rst @@ -290,6 +290,7 @@ The :ref:`StyleBox` used for the title bar of the **GraphFrame** The :ref:`StyleBox` used for the title bar of the **GraphFrame** when it is selected. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_graphnode.rst b/classes/class_graphnode.rst index 1aaae7773..123bdf3d7 100644 --- a/classes/class_graphnode.rst +++ b/classes/class_graphnode.rst @@ -37,11 +37,15 @@ Properties .. table:: :widths: auto + +----------------------------------------------+------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------+ + | :ref:`FocusMode` | focus_mode | ``3`` (overrides :ref:`Control`) | +----------------------------------------------+------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------+ | :ref:`bool` | :ref:`ignore_invalid_connection_type` | ``false`` | +----------------------------------------------+------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------+ | :ref:`MouseFilter` | mouse_filter | ``0`` (overrides :ref:`Control`) | +----------------------------------------------+------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------+ + | :ref:`FocusMode` | :ref:`slots_focus_mode` | ``3`` | + +----------------------------------------------+------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------+ | :ref:`String` | :ref:`title` | ``""`` | +----------------------------------------------+------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------+ @@ -140,10 +144,14 @@ Theme Properties +-----------------------------------+-------------------------------------------------------------------------+-----------------------------------+ | :ref:`StyleBox` | :ref:`panel` | | +-----------------------------------+-------------------------------------------------------------------------+-----------------------------------+ + | :ref:`StyleBox` | :ref:`panel_focus` | | + +-----------------------------------+-------------------------------------------------------------------------+-----------------------------------+ | :ref:`StyleBox` | :ref:`panel_selected` | | +-----------------------------------+-------------------------------------------------------------------------+-----------------------------------+ | :ref:`StyleBox` | :ref:`slot` | | +-----------------------------------+-------------------------------------------------------------------------+-----------------------------------+ + | :ref:`StyleBox` | :ref:`slot_selected` | | + +-----------------------------------+-------------------------------------------------------------------------+-----------------------------------+ | :ref:`StyleBox` | :ref:`titlebar` | | +-----------------------------------+-------------------------------------------------------------------------+-----------------------------------+ | :ref:`StyleBox` | :ref:`titlebar_selected` | | @@ -158,6 +166,18 @@ Theme Properties Signals ------- +.. _class_GraphNode_signal_slot_sizes_changed: + +.. rst-class:: classref-signal + +**slot_sizes_changed**\ (\ ) :ref:`🔗` + +Emitted when any slot's size might have changed. + +.. rst-class:: classref-item-separator + +---- + .. _class_GraphNode_signal_slot_updated: .. rst-class:: classref-signal @@ -192,6 +212,29 @@ If ``true``, you can connect ports with different types, even if the connection ---- +.. _class_GraphNode_property_slots_focus_mode: + +.. rst-class:: classref-property + +:ref:`FocusMode` **slots_focus_mode** = ``3`` :ref:`🔗` + +.. rst-class:: classref-property-setget + +- |void| **set_slots_focus_mode**\ (\ value\: :ref:`FocusMode`\ ) +- :ref:`FocusMode` **get_slots_focus_mode**\ (\ ) + +Determines how connection slots can be focused. + +- If set to :ref:`Control.FOCUS_CLICK`, connections can only be made with the mouse. + +- If set to :ref:`Control.FOCUS_ALL`, slots can also be focused using the :ref:`ProjectSettings.input/ui_up` and :ref:`ProjectSettings.input/ui_down` and connected using :ref:`ProjectSettings.input/ui_left` and :ref:`ProjectSettings.input/ui_right` input actions. + +- If set to :ref:`Control.FOCUS_ACCESSIBILITY`, slot input actions are only enabled when the screen reader is active. + +.. rst-class:: classref-item-separator + +---- + .. _class_GraphNode_property_title: .. rst-class:: classref-property @@ -222,7 +265,7 @@ Method Descriptions .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -689,6 +732,18 @@ The default background for the slot area of the **GraphNode**. ---- +.. _class_GraphNode_theme_style_panel_focus: + +.. rst-class:: classref-themeproperty + +:ref:`StyleBox` **panel_focus** :ref:`🔗` + +:ref:`StyleBox` used when the **GraphNode** is focused (when used with assistive apps). + +.. rst-class:: classref-item-separator + +---- + .. _class_GraphNode_theme_style_panel_selected: .. rst-class:: classref-themeproperty @@ -713,6 +768,18 @@ The :ref:`StyleBox` used for each slot of the **GraphNode**. ---- +.. _class_GraphNode_theme_style_slot_selected: + +.. rst-class:: classref-themeproperty + +:ref:`StyleBox` **slot_selected** :ref:`🔗` + +:ref:`StyleBox` used when the slot is focused (when used with assistive apps). + +.. rst-class:: classref-item-separator + +---- + .. _class_GraphNode_theme_style_titlebar: .. rst-class:: classref-themeproperty @@ -734,6 +801,7 @@ The :ref:`StyleBox` used for the title bar of the **GraphNode**. The :ref:`StyleBox` used for the title bar of the **GraphNode** when it is selected. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_gridcontainer.rst b/classes/class_gridcontainer.rst index 4c8854204..e0069afcb 100644 --- a/classes/class_gridcontainer.rst +++ b/classes/class_gridcontainer.rst @@ -110,6 +110,7 @@ The horizontal separation of child nodes. The vertical separation of child nodes. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_gridmap.rst b/classes/class_gridmap.rst index 77653e168..23232c793 100644 --- a/classes/class_gridmap.rst +++ b/classes/class_gridmap.rst @@ -445,7 +445,9 @@ Returns :ref:`RID` of a baked mesh with the given ``idx``. :ref:`Array` **get_bake_meshes**\ (\ ) :ref:`🔗` -Returns an array of :ref:`ArrayMesh`\ es and :ref:`Transform3D` references of all bake meshes that exist within the current GridMap. +Returns an array of :ref:`ArrayMesh`\ es and :ref:`Transform3D` references of all bake meshes that exist within the current GridMap. Even indices contain :ref:`ArrayMesh`\ es, while odd indices contain :ref:`Transform3D`\ s that are always equal to :ref:`Transform3D.IDENTITY`. + +This method relies on the output of :ref:`make_baked_meshes()`, which will be called with ``gen_lightmap_uv`` set to ``true`` and ``lightmap_uv_texel_size`` set to ``0.1`` if it hasn't been called yet. .. rst-class:: classref-item-separator @@ -529,7 +531,7 @@ Returns whether or not the specified layer of the :ref:`collision_mask` **get_meshes**\ (\ ) |const| :ref:`🔗` -Returns an array of :ref:`Transform3D` and :ref:`Mesh` references corresponding to the non-empty cells in the grid. The transforms are specified in local space. +Returns an array of :ref:`Transform3D` and :ref:`Mesh` references corresponding to the non-empty cells in the grid. The transforms are specified in local space. Even indices contain :ref:`Transform3D`\ s, while odd indices contain :ref:`Mesh`\ es related to the :ref:`Transform3D` in the index preceding it. .. rst-class:: classref-item-separator @@ -603,7 +605,9 @@ Returns the map coordinates of the cell containing the given ``local_position``. |void| **make_baked_meshes**\ (\ gen_lightmap_uv\: :ref:`bool` = false, lightmap_uv_texel_size\: :ref:`float` = 0.1\ ) :ref:`🔗` -Bakes lightmap data for all meshes in the assigned :ref:`MeshLibrary`. +Generates a baked mesh that represents all meshes in the assigned :ref:`MeshLibrary` for use with :ref:`LightmapGI`. If ``gen_lightmap_uv`` is ``true``, UV2 data will be generated for each mesh currently used in the **GridMap**. Otherwise, only meshes that already have UV2 data present will be able to use baked lightmaps. When generating UV2, ``lightmap_uv_texel_size`` controls the texel density for lightmaps, with lower values resulting in more detailed lightmaps. ``lightmap_uv_texel_size`` is ignored if ``gen_lightmap_uv`` is ``false``. See also :ref:`get_bake_meshes()`, which relies on the output of this method. + +\ **Note:** Calling this method will not actually bake lightmaps, as lightmap baking is performed using the :ref:`LightmapGI` node. .. rst-class:: classref-item-separator @@ -684,6 +688,7 @@ Based on ``value``, enables or disables the specified layer in the :ref:`collisi Sets the :ref:`RID` of the navigation map this GridMap node should use for its cell baked navigation meshes. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_gridmapeditorplugin.rst b/classes/class_gridmapeditorplugin.rst index b1f89dbc7..c0c61f842 100644 --- a/classes/class_gridmapeditorplugin.rst +++ b/classes/class_gridmapeditorplugin.rst @@ -156,6 +156,7 @@ Selects the :ref:`MeshLibrary` item with the given index in t Selects the cells inside the given bounds from ``begin`` to ``end``. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_groovejoint2d.rst b/classes/class_groovejoint2d.rst index fced7fb79..9b495f50d 100644 --- a/classes/class_groovejoint2d.rst +++ b/classes/class_groovejoint2d.rst @@ -75,6 +75,7 @@ The body B's initial anchor position defined by the joint's origin and a local o The groove's length. The groove is from the joint's origin towards :ref:`length` along the joint's local Y axis. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_hashingcontext.rst b/classes/class_hashingcontext.rst index 40232dc84..58a88696b 100644 --- a/classes/class_hashingcontext.rst +++ b/classes/class_hashingcontext.rst @@ -29,7 +29,7 @@ The :ref:`HashType` enum shows the supported hashi .. code-tab:: gdscript const CHUNK_SIZE = 1024 - + func hash_file(path): # Check that file exists. if not FileAccess.file_exists(path): @@ -51,7 +51,7 @@ The :ref:`HashType` enum shows the supported hashi .. code-tab:: csharp public const int ChunkSize = 1024; - + public void HashFile(string path) { // Check that file exists. @@ -175,6 +175,7 @@ Starts a new hash computation of the given ``type`` (e.g. :ref:`HASH_SHA256` .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_heightmapshape3d.rst b/classes/class_heightmapshape3d.rst index 0a7e66ffc..40640ac61 100644 --- a/classes/class_heightmapshape3d.rst +++ b/classes/class_heightmapshape3d.rst @@ -19,11 +19,11 @@ A 3D height map shape used for physics collision. Description ----------- -A 3D heightmap shape, intended for use in physics. Usually used to provide a shape for a :ref:`CollisionShape3D`. This is useful for terrain, but it is limited as overhangs (such as caves) cannot be stored. Holes in a **HeightMapShape3D** are created by assigning very low values to points in the desired area. +A 3D heightmap shape, intended for use in physics. Usually used to provide a shape for a :ref:`CollisionShape3D`. This type is most commonly used for terrain with vertices placed in a fixed width grid. Due to the nature of the heightmap, it cannot be used to model overhangs or caves, which would require multiple vertices at the same vertical location. Holes can be punched through the collision by assigning :ref:`@GDScript.NAN` to the height of the desired vertices (this is supported in both GodotPhysics3D and Jolt Physics). You could then insert meshes with their own separate collision to provide overhangs, caves, and so on. \ **Performance:** **HeightMapShape3D** is faster to check collisions against than :ref:`ConcavePolygonShape3D`, but it is significantly slower than primitive shapes like :ref:`BoxShape3D`. -A heightmap collision shape can also be build by using an :ref:`Image` reference: +A heightmap collision shape can also be built by using an :ref:`Image` reference: .. tabs:: @@ -33,10 +33,10 @@ A heightmap collision shape can also be build by using an :ref:`Image` .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_hingejoint3d.rst b/classes/class_hingejoint3d.rst index 54d81a194..302d72ee1 100644 --- a/classes/class_hingejoint3d.rst +++ b/classes/class_hingejoint3d.rst @@ -29,27 +29,27 @@ Properties .. table:: :widths: auto - +---------------------------+---------------------------------------------------------------------------------------+-------------+ - | :ref:`float` | :ref:`angular_limit/bias` | ``0.3`` | - +---------------------------+---------------------------------------------------------------------------------------+-------------+ - | :ref:`bool` | :ref:`angular_limit/enable` | ``false`` | - +---------------------------+---------------------------------------------------------------------------------------+-------------+ - | :ref:`float` | :ref:`angular_limit/lower` | ``-1.5708`` | - +---------------------------+---------------------------------------------------------------------------------------+-------------+ - | :ref:`float` | :ref:`angular_limit/relaxation` | ``1.0`` | - +---------------------------+---------------------------------------------------------------------------------------+-------------+ - | :ref:`float` | :ref:`angular_limit/softness` | ``0.9`` | - +---------------------------+---------------------------------------------------------------------------------------+-------------+ - | :ref:`float` | :ref:`angular_limit/upper` | ``1.5708`` | - +---------------------------+---------------------------------------------------------------------------------------+-------------+ - | :ref:`bool` | :ref:`motor/enable` | ``false`` | - +---------------------------+---------------------------------------------------------------------------------------+-------------+ - | :ref:`float` | :ref:`motor/max_impulse` | ``1.0`` | - +---------------------------+---------------------------------------------------------------------------------------+-------------+ - | :ref:`float` | :ref:`motor/target_velocity` | ``1.0`` | - +---------------------------+---------------------------------------------------------------------------------------+-------------+ - | :ref:`float` | :ref:`params/bias` | ``0.3`` | - +---------------------------+---------------------------------------------------------------------------------------+-------------+ + +---------------------------+---------------------------------------------------------------------------------------+----------------+ + | :ref:`float` | :ref:`angular_limit/bias` | ``0.3`` | + +---------------------------+---------------------------------------------------------------------------------------+----------------+ + | :ref:`bool` | :ref:`angular_limit/enable` | ``false`` | + +---------------------------+---------------------------------------------------------------------------------------+----------------+ + | :ref:`float` | :ref:`angular_limit/lower` | ``-1.5707964`` | + +---------------------------+---------------------------------------------------------------------------------------+----------------+ + | :ref:`float` | :ref:`angular_limit/relaxation` | ``1.0`` | + +---------------------------+---------------------------------------------------------------------------------------+----------------+ + | :ref:`float` | :ref:`angular_limit/softness` | ``0.9`` | + +---------------------------+---------------------------------------------------------------------------------------+----------------+ + | :ref:`float` | :ref:`angular_limit/upper` | ``1.5707964`` | + +---------------------------+---------------------------------------------------------------------------------------+----------------+ + | :ref:`bool` | :ref:`motor/enable` | ``false`` | + +---------------------------+---------------------------------------------------------------------------------------+----------------+ + | :ref:`float` | :ref:`motor/max_impulse` | ``1.0`` | + +---------------------------+---------------------------------------------------------------------------------------+----------------+ + | :ref:`float` | :ref:`motor/target_velocity` | ``1.0`` | + +---------------------------+---------------------------------------------------------------------------------------+----------------+ + | :ref:`float` | :ref:`params/bias` | ``0.3`` | + +---------------------------+---------------------------------------------------------------------------------------+----------------+ .. rst-class:: classref-reftable-group @@ -239,7 +239,7 @@ If ``true``, the hinges maximum and minimum rotation, defined by :ref:`angular_l .. rst-class:: classref-property -:ref:`float` **angular_limit/lower** = ``-1.5708`` :ref:`🔗` +:ref:`float` **angular_limit/lower** = ``-1.5707964`` :ref:`🔗` .. rst-class:: classref-property-setget @@ -290,7 +290,7 @@ The lower this value, the more the rotation gets slowed down. .. rst-class:: classref-property -:ref:`float` **angular_limit/upper** = ``1.5708`` :ref:`🔗` +:ref:`float` **angular_limit/upper** = ``1.5707964`` :ref:`🔗` .. rst-class:: classref-property-setget @@ -421,6 +421,7 @@ If ``true``, enables the specified flag. Sets the value of the specified parameter. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_hmaccontext.rst b/classes/class_hmaccontext.rst index 989c88661..dfe3485cd 100644 --- a/classes/class_hmaccontext.rst +++ b/classes/class_hmaccontext.rst @@ -28,7 +28,7 @@ The HMACContext class is useful for advanced HMAC use cases, such as streaming t extends Node var ctx = HMACContext.new() - + func _ready(): var key = "supersecret".to_utf8_buffer() var err = ctx.start(HashingContext.HASH_SHA256, key) @@ -41,17 +41,16 @@ The HMACContext class is useful for advanced HMAC use cases, such as streaming t assert(err == OK) var hmac = ctx.finish() print(hmac.hex_encode()) - .. code-tab:: csharp using Godot; using System.Diagnostics; - + public partial class MyNode : Node { private HmacContext _ctx = new HmacContext(); - + public override void _Ready() { byte[] key = "supersecret".ToUtf8Buffer(); @@ -128,6 +127,7 @@ Initializes the HMACContext. This method cannot be called again on the same HMAC Updates the message to be HMACed. This can be called multiple times before :ref:`finish()` is called to append ``data`` to the message, but cannot be called until :ref:`start()` has been called. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_hscrollbar.rst b/classes/class_hscrollbar.rst index d1f90047b..0ae1d8334 100644 --- a/classes/class_hscrollbar.rst +++ b/classes/class_hscrollbar.rst @@ -22,6 +22,7 @@ Description A horizontal scrollbar, typically used to navigate through content that extends beyond the visible width of a control. It is a :ref:`Range`-based control and goes from left (min) to right (max). .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_hseparator.rst b/classes/class_hseparator.rst index c560d1260..a013fffe5 100644 --- a/classes/class_hseparator.rst +++ b/classes/class_hseparator.rst @@ -22,6 +22,7 @@ Description A horizontal separator used for separating other controls that are arranged **vertically**. **HSeparator** is purely visual and normally drawn as a :ref:`StyleBoxLine`. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_hslider.rst b/classes/class_hslider.rst index 88388944b..d8b18c796 100644 --- a/classes/class_hslider.rst +++ b/classes/class_hslider.rst @@ -22,6 +22,7 @@ Description A horizontal slider, used to adjust a value by moving a grabber along a horizontal axis. It is a :ref:`Range`-based control and goes from left (min) to right (max). .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_hsplitcontainer.rst b/classes/class_hsplitcontainer.rst index a1880d8c2..f1c6c2baa 100644 --- a/classes/class_hsplitcontainer.rst +++ b/classes/class_hsplitcontainer.rst @@ -29,6 +29,7 @@ Tutorials - :doc:`Using Containers <../tutorials/ui/gui_containers>` .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_httpclient.rst b/classes/class_httpclient.rst index 86ab15402..ead2ce315 100644 --- a/classes/class_httpclient.rst +++ b/classes/class_httpclient.rst @@ -25,7 +25,7 @@ See the :ref:`HTTPRequest` node for a higher-level alternativ \ **Note:** This client only needs to connect to a host once (see :ref:`connect_to_host()`) to send multiple requests. Because of this, methods that take URLs usually take just the part after the host instead of the full URL, as the client is already connected to a host. See :ref:`request()` for a full example and to get started. -A **HTTPClient** should be reused between multiple requests or to connect to different hosts instead of creating one client per request. Supports Transport Layer Security (TLS), including server certificate verification. HTTP status codes in the 2xx range indicate success, 3xx redirection (i.e. "try again, but over here"), 4xx something was wrong with the request, and 5xx something went wrong on the server's side. +An **HTTPClient** should be reused between multiple requests or to connect to different hosts instead of creating one client per request. Supports Transport Layer Security (TLS), including server certificate verification. HTTP status codes in the 2xx range indicate success, 3xx redirection (i.e. "try again, but over here"), 4xx something was wrong with the request, and 5xx something went wrong on the server's side. For more information on HTTP, see `MDN's documentation on HTTP `__ (or read `RFC 2616 `__ to get it straight from the source). @@ -1012,7 +1012,7 @@ Generates a GET/POST application/x-www-form-urlencoded style query string from a .. code-tab:: gdscript - var fields = {"username": "user", "password": "pass"} + var fields = { "username": "user", "password": "pass" } var query_string = http_client.query_string_from_dict(fields) # Returns "username=user&password=pass" @@ -1031,7 +1031,7 @@ Furthermore, if a key has a ``null`` value, only the key itself is added, withou .. code-tab:: gdscript - var fields = {"single": 123, "not_valued": null, "multiple": [22, 33, 44]} + var fields = { "single": 123, "not_valued": null, "multiple": [22, 33, 44] } var query_string = http_client.query_string_from_dict(fields) # Returns "single=123¬_valued&multiple=22&multiple=33&multiple=44" @@ -1070,11 +1070,11 @@ Reads one chunk from the response. :ref:`Error` **request**\ (\ method\: :ref:`Method`, url\: :ref:`String`, headers\: :ref:`PackedStringArray`, body\: :ref:`String` = ""\ ) :ref:`🔗` -Sends a request to the connected host. +Sends an HTTP request to the connected host with the given ``method``. The URL parameter is usually just the part after the host, so for ``https://example.com/index.php``, it is ``/index.php``. When sending requests to an HTTP proxy server, it should be an absolute URL. For :ref:`METHOD_OPTIONS` requests, ``*`` is also allowed. For :ref:`METHOD_CONNECT` requests, it should be the authority component (``host:port``). -Headers are HTTP request headers. For available HTTP methods, see :ref:`Method`. +\ ``headers`` are HTTP request headers. To create a POST request with query strings to push to the server, do: @@ -1083,7 +1083,7 @@ To create a POST request with query strings to push to the server, do: .. code-tab:: gdscript - var fields = {"username" : "user", "password" : "pass"} + var fields = { "username": "user", "password": "pass" } var query_string = http_client.query_string_from_dict(fields) var headers = ["Content-Type: application/x-www-form-urlencoded", "Content-Length: " + str(query_string.length())] var result = http_client.request(http_client.METHOD_POST, "/index.php", headers, query_string) @@ -1109,11 +1109,11 @@ To create a POST request with query strings to push to the server, do: :ref:`Error` **request_raw**\ (\ method\: :ref:`Method`, url\: :ref:`String`, headers\: :ref:`PackedStringArray`, body\: :ref:`PackedByteArray`\ ) :ref:`🔗` -Sends a raw request to the connected host. +Sends a raw HTTP request to the connected host with the given ``method``. The URL parameter is usually just the part after the host, so for ``https://example.com/index.php``, it is ``/index.php``. When sending requests to an HTTP proxy server, it should be an absolute URL. For :ref:`METHOD_OPTIONS` requests, ``*`` is also allowed. For :ref:`METHOD_CONNECT` requests, it should be the authority component (``host:port``). -Headers are HTTP request headers. For available HTTP methods, see :ref:`Method`. +\ ``headers`` are HTTP request headers. Sends the body data raw, as a byte array and does not encode it in any way. @@ -1146,6 +1146,7 @@ Sets the proxy server for HTTPS requests. The proxy server is unset if ``host`` is empty or ``port`` is -1. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_httprequest.rst b/classes/class_httprequest.rst index c4a62aaaa..42ef904e9 100644 --- a/classes/class_httprequest.rst +++ b/classes/class_httprequest.rst @@ -39,12 +39,12 @@ Can be used to make HTTP requests, i.e. download or upload files or web content var http_request = HTTPRequest.new() add_child(http_request) http_request.request_completed.connect(self._http_request_completed) - + # Perform a GET request. The URL below returns JSON as of writing. var error = http_request.request("https://httpbin.org/get") if error != OK: push_error("An error occurred in the HTTP request.") - + # Perform a POST request. The URL below returns JSON as of writing. # Note: Don't make simultaneous requests using a single HTTPRequest node. # The snippet below is provided for reference only. @@ -52,13 +52,13 @@ Can be used to make HTTP requests, i.e. download or upload files or web content error = http_request.request("https://httpbin.org/post", [], HTTPClient.METHOD_POST, body) if error != OK: push_error("An error occurred in the HTTP request.") - + # Called when the HTTP request is completed. func _http_request_completed(result, response_code, headers, body): var json = JSON.new() json.parse(body.get_string_from_utf8()) var response = json.get_data() - + # Will print the user agent string used by the HTTPRequest node (as recognized by httpbin.org). print(response.headers["User-Agent"]) @@ -70,14 +70,14 @@ Can be used to make HTTP requests, i.e. download or upload files or web content var httpRequest = new HttpRequest(); AddChild(httpRequest); httpRequest.RequestCompleted += HttpRequestCompleted; - + // Perform a GET request. The URL below returns JSON as of writing. Error error = httpRequest.Request("https://httpbin.org/get"); if (error != Error.Ok) { GD.PushError("An error occurred in the HTTP request."); } - + // Perform a POST request. The URL below returns JSON as of writing. // Note: Don't make simultaneous requests using a single HTTPRequest node. // The snippet below is provided for reference only. @@ -91,14 +91,14 @@ Can be used to make HTTP requests, i.e. download or upload files or web content GD.PushError("An error occurred in the HTTP request."); } } - + // Called when the HTTP request is completed. private void HttpRequestCompleted(long result, long responseCode, string[] headers, byte[] body) { var json = new Json(); json.Parse(body.GetStringFromUtf8()); var response = json.GetData().AsGodotDictionary(); - + // Will print the user agent string used by the HTTPRequest node (as recognized by httpbin.org). GD.Print((response["headers"].AsGodotDictionary())["User-Agent"]); } @@ -117,24 +117,24 @@ Can be used to make HTTP requests, i.e. download or upload files or web content var http_request = HTTPRequest.new() add_child(http_request) http_request.request_completed.connect(self._http_request_completed) - + # Perform the HTTP request. The URL below returns a PNG image as of writing. - var error = http_request.request("https://placehold.co/512") + var error = http_request.request("https://placehold.co/512.png") if error != OK: push_error("An error occurred in the HTTP request.") - + # Called when the HTTP request is completed. func _http_request_completed(result, response_code, headers, body): if result != HTTPRequest.RESULT_SUCCESS: push_error("Image couldn't be downloaded. Try a different image.") - + var image = Image.new() var error = image.load_png_from_buffer(body) if error != OK: push_error("Couldn't load the image.") - + var texture = ImageTexture.create_from_image(image) - + # Display the image in a TextureRect node. var texture_rect = TextureRect.new() add_child(texture_rect) @@ -148,15 +148,15 @@ Can be used to make HTTP requests, i.e. download or upload files or web content var httpRequest = new HttpRequest(); AddChild(httpRequest); httpRequest.RequestCompleted += HttpRequestCompleted; - + // Perform the HTTP request. The URL below returns a PNG image as of writing. - Error error = httpRequest.Request("https://placehold.co/512"); + Error error = httpRequest.Request("https://placehold.co/512.png"); if (error != Error.Ok) { GD.PushError("An error occurred in the HTTP request."); } } - + // Called when the HTTP request is completed. private void HttpRequestCompleted(long result, long responseCode, string[] headers, byte[] body) { @@ -170,9 +170,9 @@ Can be used to make HTTP requests, i.e. download or upload files or web content { GD.PushError("Couldn't load the image."); } - + var texture = ImageTexture.CreateFromImage(image); - + // Display the image in a TextureRect node. var textureRect = new TextureRect(); AddChild(textureRect); @@ -181,7 +181,7 @@ Can be used to make HTTP requests, i.e. download or upload files or web content -\ **Note:** **HTTPRequest** nodes will automatically handle decompression of response bodies. A ``Accept-Encoding`` header will be automatically added to each of your requests, unless one is already specified. Any response with a ``Content-Encoding: gzip`` header will automatically be decompressed and delivered to you as uncompressed bytes. +\ **Note:** **HTTPRequest** nodes will automatically handle decompression of response bodies. An ``Accept-Encoding`` header will be automatically added to each of your requests, unless one is already specified. Any response with a ``Content-Encoding: gzip`` header will automatically be decompressed and delivered to you as uncompressed bytes. .. rst-class:: classref-introduction-group @@ -573,7 +573,7 @@ Returns the number of bytes this HTTPRequest downloaded. :ref:`Status` **get_http_client_status**\ (\ ) |const| :ref:`🔗` -Returns the current status of the underlying :ref:`HTTPClient`. See :ref:`Status`. +Returns the current status of the underlying :ref:`HTTPClient`. .. rst-class:: classref-item-separator @@ -648,6 +648,7 @@ The proxy server is unset if ``host`` is empty or ``port`` is -1. Sets the :ref:`TLSOptions` to be used when connecting to an HTTPS server. See :ref:`TLSOptions.client()`. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_image.rst b/classes/class_image.rst index 6f449887f..0247200bc 100644 --- a/classes/class_image.rst +++ b/classes/class_image.rst @@ -143,6 +143,8 @@ Methods +-----------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`Error` | :ref:`load_bmp_from_buffer`\ (\ buffer\: :ref:`PackedByteArray`\ ) | +-----------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Error` | :ref:`load_dds_from_buffer`\ (\ buffer\: :ref:`PackedByteArray`\ ) | + +-----------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`Image` | :ref:`load_from_file`\ (\ path\: :ref:`String`\ ) |static| | +-----------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`Error` | :ref:`load_jpg_from_buffer`\ (\ buffer\: :ref:`PackedByteArray`\ ) | @@ -173,6 +175,10 @@ Methods +-----------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`rotate_180`\ (\ ) | +-----------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Error` | :ref:`save_dds`\ (\ path\: :ref:`String`\ ) |const| | + +-----------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`PackedByteArray` | :ref:`save_dds_to_buffer`\ (\ ) |const| | + +-----------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`Error` | :ref:`save_exr`\ (\ path\: :ref:`String`, grayscale\: :ref:`bool` = false\ ) |const| | +-----------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`PackedByteArray` | :ref:`save_exr_to_buffer`\ (\ grayscale\: :ref:`bool` = false\ ) |const| | @@ -1010,7 +1016,7 @@ The dictionary contains ``max``, ``mean``, ``mean_squared``, ``root_mean_squared |void| **convert**\ (\ format\: :ref:`Format`\ ) :ref:`🔗` -Converts the image's format. See :ref:`Format` constants. +Converts this image's format to the given ``format``. .. rst-class:: classref-item-separator @@ -1036,7 +1042,7 @@ Copies ``src`` image to this image. **Deprecated:** Use :ref:`create_empty()`. -Creates an empty image of given size and format. See :ref:`Format` constants. If ``use_mipmaps`` is ``true``, then generate mipmaps for this image. See the :ref:`generate_mipmaps()`. +Creates an empty image of the given size and format. If ``use_mipmaps`` is ``true``, generates mipmaps for this image. See the :ref:`generate_mipmaps()`. .. rst-class:: classref-item-separator @@ -1048,7 +1054,7 @@ Creates an empty image of given size and format. See :ref:`Format` **create_empty**\ (\ width\: :ref:`int`, height\: :ref:`int`, use_mipmaps\: :ref:`bool`, format\: :ref:`Format`\ ) |static| :ref:`🔗` -Creates an empty image of given size and format. See :ref:`Format` constants. If ``use_mipmaps`` is ``true``, then generate mipmaps for this image. See the :ref:`generate_mipmaps()`. +Creates an empty image of the given size and format. If ``use_mipmaps`` is ``true``, generates mipmaps for this image. See the :ref:`generate_mipmaps()`. .. rst-class:: classref-item-separator @@ -1060,7 +1066,7 @@ Creates an empty image of given size and format. See :ref:`Format` **create_from_data**\ (\ width\: :ref:`int`, height\: :ref:`int`, use_mipmaps\: :ref:`bool`, format\: :ref:`Format`, data\: :ref:`PackedByteArray`\ ) |static| :ref:`🔗` -Creates a new image of given size and format. See :ref:`Format` constants. Fills the image with the given raw data. If ``use_mipmaps`` is ``true`` then loads mipmaps for this image from ``data``. See :ref:`generate_mipmaps()`. +Creates a new image of the given size and format. Fills the image with the given raw data. If ``use_mipmaps`` is ``true``, loads the mipmaps for this image from ``data``. See :ref:`generate_mipmaps()`. .. rst-class:: classref-item-separator @@ -1110,7 +1116,7 @@ Returns :ref:`ALPHA_BLEND` if the image has da :ref:`UsedChannels` **detect_used_channels**\ (\ source\: :ref:`CompressSource` = 0\ ) |const| :ref:`🔗` -Returns the color channels used by this image, as one of the :ref:`UsedChannels` constants. If the image is compressed, the original ``source`` must be specified. +Returns the color channels used by this image. If the image is compressed, the original ``source`` must be specified. .. rst-class:: classref-item-separator @@ -1220,7 +1226,7 @@ Returns size (in bytes) of the image's raw data. :ref:`Format` **get_format**\ (\ ) |const| :ref:`🔗` -Returns the image's format. See :ref:`Format` constants. +Returns this image's format. .. rst-class:: classref-item-separator @@ -1430,6 +1436,20 @@ Loads an image from the binary contents of a BMP file. ---- +.. _class_Image_method_load_dds_from_buffer: + +.. rst-class:: classref-method + +:ref:`Error` **load_dds_from_buffer**\ (\ buffer\: :ref:`PackedByteArray`\ ) :ref:`🔗` + +Loads an image from the binary contents of a DDS file. + +\ **Note:** This method is only available in engine builds with the DDS module enabled. By default, the DDS module is enabled, but it can be disabled at build-time using the ``module_dds_enabled=no`` SCons option. + +.. rst-class:: classref-item-separator + +---- + .. _class_Image_method_load_from_file: .. rst-class:: classref-method @@ -1580,7 +1600,7 @@ Resizes the image to the given ``width`` and ``height``. New pixels are calculat |void| **resize_to_po2**\ (\ square\: :ref:`bool` = false, interpolation\: :ref:`Interpolation` = 1\ ) :ref:`🔗` -Resizes the image to the nearest power of 2 for the width and height. If ``square`` is ``true`` then set width and height to be the same. New pixels are calculated using the ``interpolation`` mode defined via :ref:`Interpolation` constants. +Resizes the image to the nearest power of 2 for the width and height. If ``square`` is ``true``, sets width and height to be the same. New pixels are calculated using the ``interpolation`` mode defined via :ref:`Interpolation` constants. .. rst-class:: classref-item-separator @@ -1622,6 +1642,34 @@ Rotates the image by ``180`` degrees. The width and height of the image must be ---- +.. _class_Image_method_save_dds: + +.. rst-class:: classref-method + +:ref:`Error` **save_dds**\ (\ path\: :ref:`String`\ ) |const| :ref:`🔗` + +Saves the image as a DDS (DirectDraw Surface) file to ``path``. DDS is a container format that can store textures in various compression formats, such as DXT1, DXT5, or BC7. This function will return :ref:`@GlobalScope.ERR_UNAVAILABLE` if Godot was compiled without the DDS module. + +\ **Note:** The DDS module may be disabled in certain builds, which means :ref:`save_dds()` will return :ref:`@GlobalScope.ERR_UNAVAILABLE` when it is called from an exported project. + +.. rst-class:: classref-item-separator + +---- + +.. _class_Image_method_save_dds_to_buffer: + +.. rst-class:: classref-method + +:ref:`PackedByteArray` **save_dds_to_buffer**\ (\ ) |const| :ref:`🔗` + +Saves the image as a DDS (DirectDraw Surface) file to a byte array. DDS is a container format that can store textures in various compression formats, such as DXT1, DXT5, or BC7. This function will return an empty byte array if Godot was compiled without the DDS module. + +\ **Note:** The DDS module may be disabled in certain builds, which means :ref:`save_dds_to_buffer()` will return an empty byte array when it is called from an exported project. + +.. rst-class:: classref-item-separator + +---- + .. _class_Image_method_save_exr: .. rst-class:: classref-method @@ -1644,7 +1692,7 @@ Saves the image as an EXR file to ``path``. If ``grayscale`` is ``true`` and the Saves the image as an EXR file to a byte array. If ``grayscale`` is ``true`` and the image has only one channel, it will be saved explicitly as monochrome rather than one red channel. This function will return an empty byte array if Godot was compiled without the TinyEXR module. -\ **Note:** The TinyEXR module is disabled in non-editor builds, which means :ref:`save_exr()` will return an empty byte array when it is called from an exported project. +\ **Note:** The TinyEXR module is disabled in non-editor builds, which means :ref:`save_exr_to_buffer()` will return an empty byte array when it is called from an exported project. .. rst-class:: classref-item-separator @@ -1758,7 +1806,7 @@ Sets the :ref:`Color` of the pixel at ``(x, y)`` to ``color``. var img_width = 10 var img_height = 5 var img = Image.create(img_width, img_height, false, Image.FORMAT_RGBA8) - + img.set_pixel(1, 2, Color.RED) # Sets the color at (1, 2) to red. .. code-tab:: csharp @@ -1766,7 +1814,7 @@ Sets the :ref:`Color` of the pixel at ``(x, y)`` to ``color``. int imgWidth = 10; int imgHeight = 5; var img = Image.Create(imgWidth, imgHeight, false, Image.Format.Rgba8); - + img.SetPixel(1, 2, Colors.Red); // Sets the color at (1, 2) to red. @@ -1793,7 +1841,7 @@ Sets the :ref:`Color` of the pixel at ``point`` to ``color``. var img_width = 10 var img_height = 5 var img = Image.create(img_width, img_height, false, Image.FORMAT_RGBA8) - + img.set_pixelv(Vector2i(1, 2), Color.RED) # Sets the color at (1, 2) to red. .. code-tab:: csharp @@ -1801,7 +1849,7 @@ Sets the :ref:`Color` of the pixel at ``point`` to ``color``. int imgWidth = 10; int imgHeight = 5; var img = Image.Create(imgWidth, imgHeight, false, Image.Format.Rgba8); - + img.SetPixelv(new Vector2I(1, 2), Colors.Red); // Sets the color at (1, 2) to red. @@ -1833,6 +1881,7 @@ Shrinks the image by a factor of 2 on each axis (this divides the pixel count by Converts the raw data from the sRGB colorspace to a linear scale. Only works on images with :ref:`FORMAT_RGB8` or :ref:`FORMAT_RGBA8` formats. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_imageformatloader.rst b/classes/class_imageformatloader.rst index 52b11cf89..9cc3d9d9d 100644 --- a/classes/class_imageformatloader.rst +++ b/classes/class_imageformatloader.rst @@ -46,7 +46,7 @@ flags **LoaderFlags**: :ref:`🔗` .. container:: contribute - There is currently no description for this enum. Please help us by :ref:`contributing one `! + There is currently no description for this enum. Please help us by `contributing one `__! @@ -58,7 +58,7 @@ flags **LoaderFlags**: :ref:`🔗` .. container:: contribute - There is currently no description for this enum. Please help us by :ref:`contributing one `! + There is currently no description for this enum. Please help us by `contributing one `__! @@ -70,11 +70,12 @@ flags **LoaderFlags**: :ref:`🔗` .. container:: contribute - There is currently no description for this enum. Please help us by :ref:`contributing one `! + There is currently no description for this enum. Please help us by `contributing one `__! .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_imageformatloaderextension.rst b/classes/class_imageformatloaderextension.rst index cd123b3bf..e01a75e75 100644 --- a/classes/class_imageformatloaderextension.rst +++ b/classes/class_imageformatloaderextension.rst @@ -95,6 +95,7 @@ Add this format loader to the engine, allowing it to recognize the file extensio Remove this format loader from the engine. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_imagetexture.rst b/classes/class_imagetexture.rst index ee8eb5bc7..4ab893a95 100644 --- a/classes/class_imagetexture.rst +++ b/classes/class_imagetexture.rst @@ -115,7 +115,7 @@ Creates a new **ImageTexture** and initializes it by allocating and setting the :ref:`Format` **get_format**\ (\ ) |const| :ref:`🔗` -Returns the format of the texture, one of :ref:`Format`. +Returns the format of the texture. .. rst-class:: classref-item-separator @@ -160,6 +160,7 @@ Replaces the texture's data with a new :ref:`Image`. Use this method over :ref:`set_image()` if you need to update the texture frequently, which is faster than allocating additional memory for a new texture each time. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_imagetexture3d.rst b/classes/class_imagetexture3d.rst index 99a5c54af..ee8328a73 100644 --- a/classes/class_imagetexture3d.rst +++ b/classes/class_imagetexture3d.rst @@ -52,7 +52,7 @@ Method Descriptions :ref:`Error` **create**\ (\ format\: :ref:`Format`, width\: :ref:`int`, height\: :ref:`int`, depth\: :ref:`int`, use_mipmaps\: :ref:`bool`, data\: :ref:`Array`\[:ref:`Image`\]\ ) :ref:`🔗` -Creates the **ImageTexture3D** with specified ``width``, ``height``, and ``depth``. See :ref:`Format` for ``format`` options. If ``use_mipmaps`` is ``true``, then generate mipmaps for the **ImageTexture3D**. +Creates the **ImageTexture3D** with specified ``format``, ``width``, ``height``, and ``depth``. If ``use_mipmaps`` is ``true``, generates mipmaps for the **ImageTexture3D**. .. rst-class:: classref-item-separator @@ -67,6 +67,7 @@ Creates the **ImageTexture3D** with specified ``width``, ``height``, and ``depth Replaces the texture's existing data with the layers specified in ``data``. The size of ``data`` must match the parameters that were used for :ref:`create()`. In other words, the texture cannot be resized or have its format changed by calling :ref:`update()`. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_imagetexturelayered.rst b/classes/class_imagetexturelayered.rst index d23579200..abe0b498d 100644 --- a/classes/class_imagetexturelayered.rst +++ b/classes/class_imagetexturelayered.rst @@ -70,19 +70,19 @@ Each :ref:`Image` represents one ``layer``. else: image.fill(Color.BLUE) images.push_back(image) - + # Create and save a 2D texture array. The array of images must have at least 1 Image. var texture_2d_array = Texture2DArray.new() texture_2d_array.create_from_images(images) ResourceSaver.save(texture_2d_array, "res://texture_2d_array.res", ResourceSaver.FLAG_COMPRESS) - + # Create and save a cubemap. The array of images must have exactly 6 Images. # The cubemap's images are specified in this order: X+, X-, Y+, Y-, Z+, Z- # (in Godot's coordinate system, so Y+ is "up" and Z- is "forward"). var cubemap = Cubemap.new() cubemap.create_from_images(images) ResourceSaver.save(cubemap, "res://cubemap.res", ResourceSaver.FLAG_COMPRESS) - + # Create and save a cubemap array. The array of images must have a multiple of 6 Images. # Each cubemap's images are specified in this order: X+, X-, Y+, Y-, Z+, Z- # (in Godot's coordinate system, so Y+ is "up" and Z- is "forward"). @@ -109,6 +109,7 @@ If the image format is unsupported, it will be decompressed and converted to a s The update is immediate: it's synchronized with drawing. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_immediatemesh.rst b/classes/class_immediatemesh.rst index 0f9221a70..0d2e134c9 100644 --- a/classes/class_immediatemesh.rst +++ b/classes/class_immediatemesh.rst @@ -211,6 +211,7 @@ Set the UV attribute that will be pushed with the next vertex. Set the UV2 attribute that will be pushed with the next vertex. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_importermesh.rst b/classes/class_importermesh.rst index 459eadb59..6fd4962c1 100644 --- a/classes/class_importermesh.rst +++ b/classes/class_importermesh.rst @@ -346,7 +346,7 @@ Returns the primitive type of the requested surface (see :ref:`add_surface()`\ ) :ref:`🔗` -Sets the blend shape mode to one of :ref:`BlendShapeMode`. +Sets the blend shape mode. .. rst-class:: classref-item-separator @@ -385,6 +385,7 @@ Sets a :ref:`Material` for a given surface. Surface will be rend Sets a name for a given surface. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_importermeshinstance3d.rst b/classes/class_importermeshinstance3d.rst index 82ba3c9b1..4b90a365e 100644 --- a/classes/class_importermeshinstance3d.rst +++ b/classes/class_importermeshinstance3d.rst @@ -14,7 +14,7 @@ ImporterMeshInstance3D .. container:: contribute - There is currently no description for this class. Please help us by :ref:`contributing one `! + There is currently no description for this class. Please help us by `contributing one `__! .. rst-class:: classref-reftable-group @@ -68,7 +68,7 @@ Property Descriptions .. container:: contribute - There is currently no description for this property. Please help us by :ref:`contributing one `! + There is currently no description for this property. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -87,7 +87,7 @@ Property Descriptions .. container:: contribute - There is currently no description for this property. Please help us by :ref:`contributing one `! + There is currently no description for this property. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -106,7 +106,7 @@ Property Descriptions .. container:: contribute - There is currently no description for this property. Please help us by :ref:`contributing one `! + There is currently no description for this property. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -125,7 +125,7 @@ Property Descriptions .. container:: contribute - There is currently no description for this property. Please help us by :ref:`contributing one `! + There is currently no description for this property. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -144,7 +144,7 @@ Property Descriptions .. container:: contribute - There is currently no description for this property. Please help us by :ref:`contributing one `! + There is currently no description for this property. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -163,7 +163,7 @@ Property Descriptions .. container:: contribute - There is currently no description for this property. Please help us by :ref:`contributing one `! + There is currently no description for this property. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -182,7 +182,7 @@ Property Descriptions .. container:: contribute - There is currently no description for this property. Please help us by :ref:`contributing one `! + There is currently no description for this property. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -201,7 +201,7 @@ Property Descriptions .. container:: contribute - There is currently no description for this property. Please help us by :ref:`contributing one `! + There is currently no description for this property. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -220,7 +220,7 @@ Property Descriptions .. container:: contribute - There is currently no description for this property. Please help us by :ref:`contributing one `! + There is currently no description for this property. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -239,9 +239,10 @@ Property Descriptions .. container:: contribute - There is currently no description for this property. Please help us by :ref:`contributing one `! + There is currently no description for this property. Please help us by `contributing one `__! .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_input.rst b/classes/class_input.rst index 162a1201d..475c79826 100644 --- a/classes/class_input.rst +++ b/classes/class_input.rst @@ -109,8 +109,12 @@ Methods +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`is_action_just_pressed`\ (\ action\: :ref:`StringName`, exact_match\: :ref:`bool` = false\ ) |const| | +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`is_action_just_pressed_by_event`\ (\ action\: :ref:`StringName`, event\: :ref:`InputEvent`, exact_match\: :ref:`bool` = false\ ) |const| | + +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`is_action_just_released`\ (\ action\: :ref:`StringName`, exact_match\: :ref:`bool` = false\ ) |const| | +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`is_action_just_released_by_event`\ (\ action\: :ref:`StringName`, event\: :ref:`InputEvent`, exact_match\: :ref:`bool` = false\ ) |const| | + +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`is_action_pressed`\ (\ action\: :ref:`StringName`, exact_match\: :ref:`bool` = false\ ) |const| | +-------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`is_anything_pressed`\ (\ ) |const| | @@ -438,7 +442,7 @@ If ``true``, sends touch input events when clicking or dragging the mouse. See a - |void| **set_mouse_mode**\ (\ value\: :ref:`MouseMode`\ ) - :ref:`MouseMode` **get_mouse_mode**\ (\ ) -Controls the mouse mode. See :ref:`MouseMode` for more information. +Controls the mouse mode. .. rst-class:: classref-item-separator @@ -602,7 +606,7 @@ Returns an :ref:`Array` containing the device IDs of all currently :ref:`CursorShape` **get_current_cursor_shape**\ (\ ) |const| :ref:`🔗` -Returns the currently assigned cursor shape (see :ref:`CursorShape`). +Returns the currently assigned cursor shape. .. rst-class:: classref-item-separator @@ -646,7 +650,7 @@ Returns the rotation rate in rad/s around a device's X, Y, and Z axes of the gyr :ref:`float` **get_joy_axis**\ (\ device\: :ref:`int`, axis\: :ref:`JoyAxis`\ ) |const| :ref:`🔗` -Returns the current value of the joypad axis at given index (see :ref:`JoyAxis`). +Returns the current value of the joypad axis at index ``axis``. .. rst-class:: classref-item-separator @@ -674,17 +678,9 @@ On Windows, all XInput joypad GUIDs will be overridden by Godot to ``__XINPUT_DE Returns a dictionary with extra platform-specific information about the device, e.g. the raw gamepad name from the OS or the Steam Input index. -On Windows, the dictionary contains the following fields: +On Windows, Linux, and macOS, the dictionary contains the following fields: -\ ``xinput_index``: The index of the controller in the XInput system. Undefined for DirectInput devices. - -\ ``vendor_id``: The USB vendor ID of the device. - -\ ``product_id``: The USB product ID of the device. - -On Linux: - -\ ``raw_name``: The name of the controller as it came from the OS, before getting renamed by the godot controller database. +\ ``raw_name``: The name of the controller as it came from the OS, before getting renamed by the controller database. \ ``vendor_id``: The USB vendor ID of the device. @@ -692,7 +688,11 @@ On Linux: \ ``steam_input_index``: The Steam Input gamepad index, if the device is not a Steam Input device this key won't be present. -\ **Note:** The returned dictionary is always empty on Web, iOS, Android, and macOS. +On Windows, the dictionary can have an additional field: + +\ ``xinput_index``: The index of the controller in the XInput system. This key won't be present for devices not handled by XInput. + +\ **Note:** The returned dictionary is always empty on Android, iOS, visionOS, and Web. .. rst-class:: classref-item-separator @@ -818,7 +818,27 @@ If ``exact_match`` is ``false``, it ignores additional input modifiers for :ref: \ **Note:** Due to keyboard ghosting, :ref:`is_action_just_pressed()` may return ``false`` even if one of the action's keys is pressed. See `Input examples <../tutorials/inputs/input_examples.html#keyboard-events>`__ in the documentation for more information. -\ **Note:** During input handling (e.g. :ref:`Node._input()`), use :ref:`InputEvent.is_action_pressed()` instead to query the action state of the current event. +\ **Note:** During input handling (e.g. :ref:`Node._input()`), use :ref:`InputEvent.is_action_pressed()` instead to query the action state of the current event. See also :ref:`is_action_just_pressed_by_event()`. + +.. rst-class:: classref-item-separator + +---- + +.. _class_Input_method_is_action_just_pressed_by_event: + +.. rst-class:: classref-method + +:ref:`bool` **is_action_just_pressed_by_event**\ (\ action\: :ref:`StringName`, event\: :ref:`InputEvent`, exact_match\: :ref:`bool` = false\ ) |const| :ref:`🔗` + +Returns ``true`` when the user has *started* pressing the action event in the current frame or physics tick, and the first event that triggered action press in the current frame/physics tick was ``event``. It will only return ``true`` on the frame or tick that the user pressed down the button. + +This is useful for code that needs to run only once when an action is pressed, and the action is processed during input handling (e.g. :ref:`Node._input()`). + +If ``exact_match`` is ``false``, it ignores additional input modifiers for :ref:`InputEventKey` and :ref:`InputEventMouseButton` events, and the direction for :ref:`InputEventJoypadMotion` events. + +\ **Note:** Returning ``true`` does not imply that the action is *still* pressed. An action can be pressed and released again rapidly, and ``true`` will still be returned so as not to miss input. + +\ **Note:** Due to keyboard ghosting, :ref:`is_action_just_pressed()` may return ``false`` even if one of the action's keys is pressed. See `Input examples <../tutorials/inputs/input_examples.html#keyboard-events>`__ in the documentation for more information. .. rst-class:: classref-item-separator @@ -836,7 +856,25 @@ Returns ``true`` when the user *stops* pressing the action event in the current If ``exact_match`` is ``false``, it ignores additional input modifiers for :ref:`InputEventKey` and :ref:`InputEventMouseButton` events, and the direction for :ref:`InputEventJoypadMotion` events. -\ **Note:** During input handling (e.g. :ref:`Node._input()`), use :ref:`InputEvent.is_action_released()` instead to query the action state of the current event. +\ **Note:** During input handling (e.g. :ref:`Node._input()`), use :ref:`InputEvent.is_action_released()` instead to query the action state of the current event. See also :ref:`is_action_just_released_by_event()`. + +.. rst-class:: classref-item-separator + +---- + +.. _class_Input_method_is_action_just_released_by_event: + +.. rst-class:: classref-method + +:ref:`bool` **is_action_just_released_by_event**\ (\ action\: :ref:`StringName`, event\: :ref:`InputEvent`, exact_match\: :ref:`bool` = false\ ) |const| :ref:`🔗` + +Returns ``true`` when the user *stops* pressing the action event in the current frame or physics tick, and the first event that triggered action release in the current frame/physics tick was ``event``. It will only return ``true`` on the frame or tick that the user releases the button. + +This is useful when an action is processed during input handling (e.g. :ref:`Node._input()`). + +\ **Note:** Returning ``true`` does not imply that the action is *still* not pressed. An action can be released and pressed again rapidly, and ``true`` will still be returned so as not to miss input. + +If ``exact_match`` is ``false``, it ignores additional input modifiers for :ref:`InputEventKey` and :ref:`InputEventMouseButton` events, and the direction for :ref:`InputEventJoypadMotion` events. .. rst-class:: classref-item-separator @@ -876,7 +914,7 @@ Returns ``true`` if any action, key, joypad button, or mouse button is being pre :ref:`bool` **is_joy_button_pressed**\ (\ device\: :ref:`int`, button\: :ref:`JoyButton`\ ) |const| :ref:`🔗` -Returns ``true`` if you are pressing the joypad button (see :ref:`JoyButton`). +Returns ``true`` if you are pressing the joypad button at index ``button``. .. rst-class:: classref-item-separator @@ -1017,7 +1055,7 @@ Sets the acceleration value of the accelerometer sensor. Can be used for debuggi |void| **set_custom_mouse_cursor**\ (\ image\: :ref:`Resource`, shape\: :ref:`CursorShape` = 0, hotspot\: :ref:`Vector2` = Vector2(0, 0)\ ) :ref:`🔗` -Sets a custom mouse cursor image, which is only visible inside the game window. The hotspot can also be specified. Passing ``null`` to the image parameter resets to the system cursor. See :ref:`CursorShape` for the list of shapes. +Sets a custom mouse cursor image, which is only visible inside the game window, for the given mouse ``shape``. The hotspot can also be specified. Passing ``null`` to the image parameter resets to the system cursor. \ ``image`` can be either :ref:`Texture2D` or :ref:`Image` and its size must be lower than or equal to 256×256. To avoid rendering issues, sizes lower than or equal to 128×128 are recommended. @@ -1170,6 +1208,7 @@ Mouse position is clipped to the limits of the screen resolution, or to the limi \ **Note:** :ref:`warp_mouse()` is only supported on Windows, macOS and Linux. It has no effect on Android, iOS and Web. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_inputevent.rst b/classes/class_inputevent.rst index 6363cef9b..83b19f538 100644 --- a/classes/class_inputevent.rst +++ b/classes/class_inputevent.rst @@ -194,7 +194,7 @@ If ``exact_match`` is ``false``, it ignores additional input modifiers for :ref: :ref:`bool` **is_action_pressed**\ (\ action\: :ref:`StringName`, allow_echo\: :ref:`bool` = false, exact_match\: :ref:`bool` = false\ ) |const| :ref:`🔗` -Returns ``true`` if the given action is being pressed (and is not an echo event for :ref:`InputEventKey` events, unless ``allow_echo`` is ``true``). Not relevant for events of type :ref:`InputEventMouseMotion` or :ref:`InputEventScreenDrag`. +Returns ``true`` if the given action matches this event and is being pressed (and is not an echo event for :ref:`InputEventKey` events, unless ``allow_echo`` is ``true``). Not relevant for events of type :ref:`InputEventMouseMotion` or :ref:`InputEventScreenDrag`. If ``exact_match`` is ``false``, it ignores additional input modifiers for :ref:`InputEventKey` and :ref:`InputEventMouseButton` events, and the direction for :ref:`InputEventJoypadMotion` events. @@ -210,7 +210,7 @@ If ``exact_match`` is ``false``, it ignores additional input modifiers for :ref: :ref:`bool` **is_action_released**\ (\ action\: :ref:`StringName`, exact_match\: :ref:`bool` = false\ ) |const| :ref:`🔗` -Returns ``true`` if the given action is released (i.e. not pressed). Not relevant for events of type :ref:`InputEventMouseMotion` or :ref:`InputEventScreenDrag`. +Returns ``true`` if the given action matches this event and is released (i.e. not pressed). Not relevant for events of type :ref:`InputEventMouseMotion` or :ref:`InputEventScreenDrag`. If ``exact_match`` is ``false``, it ignores additional input modifiers for :ref:`InputEventKey` and :ref:`InputEventMouseButton` events, and the direction for :ref:`InputEventJoypadMotion` events. @@ -224,7 +224,7 @@ If ``exact_match`` is ``false``, it ignores additional input modifiers for :ref: :ref:`bool` **is_action_type**\ (\ ) |const| :ref:`🔗` -Returns ``true`` if this input event's type is one that can be assigned to an input action. +Returns ``true`` if this input event's type is one that can be assigned to an input action: :ref:`InputEventKey`, :ref:`InputEventMouseButton`, :ref:`InputEventJoypadButton`, :ref:`InputEventJoypadMotion`, :ref:`InputEventAction`. Returns ``false`` for all other input event types. .. rst-class:: classref-item-separator @@ -262,11 +262,11 @@ Returns ``true`` if this input event is an echo event (only for events of type : :ref:`bool` **is_match**\ (\ event\: :ref:`InputEvent`, exact_match\: :ref:`bool` = true\ ) |const| :ref:`🔗` -Returns ``true`` if the specified ``event`` matches this event. Only valid for action events i.e key (:ref:`InputEventKey`), button (:ref:`InputEventMouseButton` or :ref:`InputEventJoypadButton`), axis :ref:`InputEventJoypadMotion` or action (:ref:`InputEventAction`) events. +Returns ``true`` if the specified ``event`` matches this event. Only valid for action events, which include key (:ref:`InputEventKey`), button (:ref:`InputEventMouseButton` or :ref:`InputEventJoypadButton`), axis :ref:`InputEventJoypadMotion`, and action (:ref:`InputEventAction`) events. -If ``exact_match`` is ``false``, it ignores additional input modifiers for :ref:`InputEventKey` and :ref:`InputEventMouseButton` events, and the direction for :ref:`InputEventJoypadMotion` events. +If ``exact_match`` is ``false``, the check ignores additional input modifiers for :ref:`InputEventKey` and :ref:`InputEventMouseButton` events, and the direction for :ref:`InputEventJoypadMotion` events. -\ **Note:** Only considers the event configuration (such as the keyboard key or joypad axis), not state information like :ref:`is_pressed()`, :ref:`is_released()`, :ref:`is_echo()`, or :ref:`is_canceled()`. +\ **Note:** This method only considers the event configuration (such as the keyboard key or the joypad axis), not state information like :ref:`is_pressed()`, :ref:`is_released()`, :ref:`is_echo()`, or :ref:`is_canceled()`. .. rst-class:: classref-item-separator @@ -307,6 +307,7 @@ Returns ``true`` if this input event is released. Not relevant for events of typ Returns a copy of the given input event which has been offset by ``local_ofs`` and transformed by ``xform``. Relevant for events of type :ref:`InputEventMouseButton`, :ref:`InputEventMouseMotion`, :ref:`InputEventScreenTouch`, :ref:`InputEventScreenDrag`, :ref:`InputEventMagnifyGesture` and :ref:`InputEventPanGesture`. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_inputeventaction.rst b/classes/class_inputeventaction.rst index add657a09..fce6fd93d 100644 --- a/classes/class_inputeventaction.rst +++ b/classes/class_inputeventaction.rst @@ -72,7 +72,7 @@ Property Descriptions - |void| **set_action**\ (\ value\: :ref:`StringName`\ ) - :ref:`StringName` **get_action**\ (\ ) -The action's name. Actions are accessed via this :ref:`String`. +The action's name. This is usually the name of an existing action in the :ref:`InputMap` which you want this custom event to match. .. rst-class:: classref-item-separator @@ -126,6 +126,7 @@ If ``true``, the action's state is pressed. If ``false``, the action's state is The action's strength between 0 and 1. This value is considered as equal to 0 if pressed is ``false``. The event strength allows faking analog joypad motion events, by specifying how strongly the joypad axis is bent or pressed. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_inputeventfromwindow.rst b/classes/class_inputeventfromwindow.rst index f05d6f793..9ec70b1dc 100644 --- a/classes/class_inputeventfromwindow.rst +++ b/classes/class_inputeventfromwindow.rst @@ -58,6 +58,7 @@ Property Descriptions The ID of a :ref:`Window` that received this event. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_inputeventgesture.rst b/classes/class_inputeventgesture.rst index 0f39d84f6..2212c7019 100644 --- a/classes/class_inputeventgesture.rst +++ b/classes/class_inputeventgesture.rst @@ -65,6 +65,7 @@ Property Descriptions The local gesture position relative to the :ref:`Viewport`. If used in :ref:`Control._gui_input()`, the position is relative to the current :ref:`Control` that received this gesture. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_inputeventjoypadbutton.rst b/classes/class_inputeventjoypadbutton.rst index 43e7c4ed3..ef72b0559 100644 --- a/classes/class_inputeventjoypadbutton.rst +++ b/classes/class_inputeventjoypadbutton.rst @@ -104,6 +104,7 @@ If ``true``, the button's state is pressed. If ``false``, the button's state is **Deprecated:** This property is never set by the engine and is always ``0``. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_inputeventjoypadmotion.rst b/classes/class_inputeventjoypadmotion.rst index c1c828373..7da914f3a 100644 --- a/classes/class_inputeventjoypadmotion.rst +++ b/classes/class_inputeventjoypadmotion.rst @@ -65,7 +65,7 @@ Property Descriptions - |void| **set_axis**\ (\ value\: :ref:`JoyAxis`\ ) - :ref:`JoyAxis` **get_axis**\ (\ ) -Axis identifier. Use one of the :ref:`JoyAxis` axis constants. +Axis identifier. .. rst-class:: classref-item-separator @@ -85,6 +85,7 @@ Axis identifier. Use one of the :ref:`JoyAxis` axis c Current position of the joystick on the given axis. The value ranges from ``-1.0`` to ``1.0``. A value of ``0`` means the axis is in its resting position. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_inputeventkey.rst b/classes/class_inputeventkey.rst index 6aa45193b..c4600e5ee 100644 --- a/classes/class_inputeventkey.rst +++ b/classes/class_inputeventkey.rst @@ -127,10 +127,10 @@ To get a human-readable representation of the **InputEventKey**, use ``OS.get_ke .. code:: text - +-----+ +-----+ - | Q | | Q | - "Q" - keycode - | Й | | ض | - "Й" and "ض" - key_label - +-----+ +-----+ + +-----+ +-----+ + | Q | | Q | - "Q" - keycode + | Й | | ض | - "Й" and "ض" - key_label + +-----+ +-----+ .. rst-class:: classref-item-separator @@ -153,10 +153,10 @@ To get a human-readable representation of the **InputEventKey**, use ``OS.get_ke .. code:: text - +-----+ +-----+ - | Q | | Q | - "Q" - keycode - | Й | | ض | - "Й" and "ض" - key_label - +-----+ +-----+ + +-----+ +-----+ + | Q | | Q | - "Q" - keycode + | Й | | ض | - "Й" and "ض" - key_label + +-----+ +-----+ .. rst-class:: classref-item-separator @@ -347,6 +347,7 @@ Returns the physical keycode combined with modifier keys such as :kbd:`Shift` or To get a human-readable representation of the **InputEventKey** with modifiers, use ``OS.get_keycode_string(event.get_physical_keycode_with_modifiers())`` where ``event`` is the **InputEventKey**. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_inputeventmagnifygesture.rst b/classes/class_inputeventmagnifygesture.rst index 795bf1761..0fb086cf3 100644 --- a/classes/class_inputeventmagnifygesture.rst +++ b/classes/class_inputeventmagnifygesture.rst @@ -65,6 +65,7 @@ Property Descriptions The amount (or delta) of the event. This value is closer to ``1.0`` the slower the gesture is performed. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_inputeventmidi.rst b/classes/class_inputeventmidi.rst index cc2477d0c..268113e67 100644 --- a/classes/class_inputeventmidi.rst +++ b/classes/class_inputeventmidi.rst @@ -33,11 +33,11 @@ By default, Godot does not detect MIDI devices. You need to call :ref:`OS.open_m func _ready(): OS.open_midi_inputs() print(OS.get_connected_midi_inputs()) - + func _input(input_event): if input_event is InputEventMIDI: _print_midi_info(input_event) - + func _print_midi_info(midi_event): print(midi_event) print("Channel ", midi_event.channel) @@ -56,7 +56,7 @@ By default, Godot does not detect MIDI devices. You need to call :ref:`OS.open_m OS.OpenMidiInputs(); GD.Print(OS.GetConnectedMidiInputs()); } - + public override void _Input(InputEvent inputEvent) { if (inputEvent is InputEventMidi midiEvent) @@ -64,7 +64,7 @@ By default, Godot does not detect MIDI devices. You need to call :ref:`OS.open_m PrintMIDIInfo(midiEvent); } } - + private void PrintMIDIInfo(InputEventMidi midiEvent) { GD.Print(midiEvent); @@ -280,6 +280,7 @@ The velocity of the MIDI message. This value ranges from ``0`` to ``127``. For a print("Note pressed!") .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_inputeventmouse.rst b/classes/class_inputeventmouse.rst index 9ca5285c2..88202b25a 100644 --- a/classes/class_inputeventmouse.rst +++ b/classes/class_inputeventmouse.rst @@ -107,6 +107,7 @@ When received in :ref:`Node._input()` or :ref: When received in :ref:`Control._gui_input()`, returns the mouse's position in the :ref:`Control` using the local coordinate system of the :ref:`Control`. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_inputeventmousebutton.rst b/classes/class_inputeventmousebutton.rst index 0f6222121..470e49d46 100644 --- a/classes/class_inputeventmousebutton.rst +++ b/classes/class_inputeventmousebutton.rst @@ -146,6 +146,7 @@ The amount (or delta) of the event. When used for high-precision scroll events, If ``true``, the mouse button's state is pressed. If ``false``, the mouse button's state is released. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_inputeventmousemotion.rst b/classes/class_inputeventmousemotion.rst index 8151b07a2..cd886b915 100644 --- a/classes/class_inputeventmousemotion.rst +++ b/classes/class_inputeventmousemotion.rst @@ -158,7 +158,9 @@ The unscaled mouse position relative to the previous position in the coordinate - |void| **set_screen_velocity**\ (\ value\: :ref:`Vector2`\ ) - :ref:`Vector2` **get_screen_velocity**\ (\ ) -The unscaled mouse velocity in pixels per second in screen coordinates. This velocity is *not* scaled according to the content scale factor or calls to :ref:`InputEvent.xformed_by()`. This should be preferred over :ref:`velocity` for mouse aiming when using the :ref:`Input.MOUSE_MODE_CAPTURED` mouse mode, regardless of the project's stretch mode. +The unscaled mouse velocity in pixels per second in screen coordinates. This velocity is *not* scaled according to the content scale factor or calls to :ref:`InputEvent.xformed_by()`. + +\ **Note:** Use :ref:`screen_relative` for mouse aiming using the :ref:`Input.MOUSE_MODE_CAPTURED` mouse mode. .. rst-class:: classref-item-separator @@ -194,9 +196,12 @@ Represents the angles of tilt of the pen. Positive X-coordinate value indicates The mouse velocity in pixels per second. -\ **Note:** :ref:`velocity` is automatically scaled according to the content scale factor, which is defined by the project's stretch mode settings. This means mouse sensitivity will appear different depending on resolution when using :ref:`velocity` in a script that handles mouse aiming with the :ref:`Input.MOUSE_MODE_CAPTURED` mouse mode. To avoid this, use :ref:`screen_velocity` instead. +\ **Note:** :ref:`velocity` is automatically scaled according to the content scale factor, which is defined by the project's stretch mode settings. That means mouse sensitivity may appear different depending on resolution. + +\ **Note:** Use :ref:`screen_relative` for mouse aiming using the :ref:`Input.MOUSE_MODE_CAPTURED` mouse mode. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_inputeventpangesture.rst b/classes/class_inputeventpangesture.rst index c229fe51d..262d48f0a 100644 --- a/classes/class_inputeventpangesture.rst +++ b/classes/class_inputeventpangesture.rst @@ -65,6 +65,7 @@ Property Descriptions Panning amount since last pan event. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_inputeventscreendrag.rst b/classes/class_inputeventscreendrag.rst index e092a1bb6..ff2d63a83 100644 --- a/classes/class_inputeventscreendrag.rst +++ b/classes/class_inputeventscreendrag.rst @@ -219,6 +219,7 @@ The drag velocity. \ **Note:** :ref:`velocity` is automatically scaled according to the content scale factor, which is defined by the project's stretch mode settings. This means touch sensitivity will appear different depending on resolution when using :ref:`velocity` in a script that handles touch aiming. To avoid this, use :ref:`screen_velocity` instead. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_inputeventscreentouch.rst b/classes/class_inputeventscreentouch.rst index 7433de280..ac51ef5f9 100644 --- a/classes/class_inputeventscreentouch.rst +++ b/classes/class_inputeventscreentouch.rst @@ -139,6 +139,7 @@ The touch position in the viewport the node is in, using the coordinate system o If ``true``, the touch's state is pressed. If ``false``, the touch's state is released. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_inputeventshortcut.rst b/classes/class_inputeventshortcut.rst index 93fc0fb12..98af42d1b 100644 --- a/classes/class_inputeventshortcut.rst +++ b/classes/class_inputeventshortcut.rst @@ -56,6 +56,7 @@ Property Descriptions The :ref:`Shortcut` represented by this event. Its :ref:`Shortcut.matches_event()` method will always return ``true`` for this event. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_inputeventwithmodifiers.rst b/classes/class_inputeventwithmodifiers.rst index 51809dbb2..99be15d0e 100644 --- a/classes/class_inputeventwithmodifiers.rst +++ b/classes/class_inputeventwithmodifiers.rst @@ -188,6 +188,7 @@ On macOS, returns ``true`` if :kbd:`Meta` (:kbd:`Cmd`) is pressed. On other platforms, returns ``true`` if :kbd:`Ctrl` is pressed. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_inputmap.rst b/classes/class_inputmap.rst index 88b1b7e27..16d1b31f2 100644 --- a/classes/class_inputmap.rst +++ b/classes/class_inputmap.rst @@ -57,6 +57,8 @@ Methods +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`event_is_action`\ (\ event\: :ref:`InputEvent`, action\: :ref:`StringName`, exact_match\: :ref:`bool` = false\ ) |const| | +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`get_action_description`\ (\ action\: :ref:`StringName`\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`Array`\[:ref:`StringName`\] | :ref:`get_actions`\ (\ ) | +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`has_action`\ (\ action\: :ref:`StringName`\ ) |const| | @@ -199,6 +201,18 @@ If ``exact_match`` is ``false``, it ignores additional input modifiers for :ref: ---- +.. _class_InputMap_method_get_action_description: + +.. rst-class:: classref-method + +:ref:`String` **get_action_description**\ (\ action\: :ref:`StringName`\ ) |const| :ref:`🔗` + +Returns the human-readable description of the given action. + +.. rst-class:: classref-item-separator + +---- + .. _class_InputMap_method_get_actions: .. rst-class:: classref-method @@ -232,6 +246,7 @@ Returns ``true`` if the **InputMap** has a registered action with the given name Clears all :ref:`InputEventAction` in the **InputMap** and load it anew from :ref:`ProjectSettings`. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_instanceplaceholder.rst b/classes/class_instanceplaceholder.rst index 91916e97c..b03b68bd8 100644 --- a/classes/class_instanceplaceholder.rst +++ b/classes/class_instanceplaceholder.rst @@ -21,7 +21,7 @@ Description Turning on the option **Load As Placeholder** for an instantiated scene in the editor causes it to be replaced by an **InstancePlaceholder** when running the game, this will not replace the node in the editor. This makes it possible to delay actually loading the scene until calling :ref:`create_instance()`. This is useful to avoid loading large scenes all at once by loading parts of it selectively. -The **InstancePlaceholder** does not have a transform. This causes any child nodes to be positioned relatively to the :ref:`Viewport` from point (0,0), rather than their parent as displayed in the editor. Replacing the placeholder with a scene with a transform will transform children relatively to their parent again. +\ **Note:** Like :ref:`Node`, **InstancePlaceholder** does not have a transform. This causes any child nodes to be positioned relatively to the :ref:`Viewport` origin, rather than their parent as displayed in the editor. Replacing the placeholder with a scene with a transform will transform children relatively to their parent again. .. rst-class:: classref-reftable-group @@ -85,6 +85,7 @@ Returns the list of properties that will be applied to the node when :ref:`creat If ``with_order`` is ``true``, a key named ``.order`` (note the leading period) is added to the dictionary. This ``.order`` key is an :ref:`Array` of :ref:`String` property names specifying the order in which properties will be applied (with index 0 being the first). .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_int.rst b/classes/class_int.rst index ba11cdb6a..e36bb80cc 100644 --- a/classes/class_int.rst +++ b/classes/class_int.rst @@ -42,7 +42,7 @@ Likewise, :ref:`float`\ s can be automatically converted into **int // We use long below, because GDScript's int is 64-bit while C#'s int is 32-bit. long maxLong = 9223372036854775807; // Biggest value a long can store maxLong++; // maxLong is now -9223372036854775808, because it wrapped around. - + // Alternatively with C#'s 32-bit int type, which has a smaller maximum value. int maxInt = 2147483647; // Biggest value an int can store maxInt++; // maxInt is now -2147483648, because it wrapped around @@ -777,6 +777,7 @@ Performs the bitwise ``NOT`` operation on the **int**. Due to `2's complement ` is the only correct way to create **IntervalTweener**. Any **IntervalTweener** created manually will not function correctly. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_ip.rst b/classes/class_ip.rst index 52c7c24a1..0f2f7d5be 100644 --- a/classes/class_ip.rst +++ b/classes/class_ip.rst @@ -305,6 +305,7 @@ Resolves a given hostname in a blocking way. Addresses are returned as an :ref:` Creates a queue item to resolve a hostname to an IPv4 or IPv6 address depending on the :ref:`Type` constant given as ``ip_type``. Returns the queue ID if successful, or :ref:`RESOLVER_INVALID_ID` on error. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_itemlist.rst b/classes/class_itemlist.rst index 84ad6fb85..1b2814fa1 100644 --- a/classes/class_itemlist.rst +++ b/classes/class_itemlist.rst @@ -641,7 +641,7 @@ Allows single or multiple item selection. See the :ref:`SelectMode`\ ) - :ref:`OverrunBehavior` **get_text_overrun_behavior**\ (\ ) -Sets the clipping behavior when the text exceeds an item's bounding rectangle. See :ref:`OverrunBehavior` for a description of all modes. +The clipping behavior when the text exceeds an item's bounding rectangle. .. rst-class:: classref-item-separator @@ -1535,6 +1535,7 @@ The background style for the **ItemList**. :ref:`StyleBox` for the selected items, used when the **ItemList** is being focused. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_javaclass.rst b/classes/class_javaclass.rst index 1d202d101..efb336e38 100644 --- a/classes/class_javaclass.rst +++ b/classes/class_javaclass.rst @@ -83,6 +83,7 @@ Returns the object's Java methods and their signatures as an :ref:`Array` to check if the method threw an exception. +.. rst-class:: classref-introduction-group + +Tutorials +--------- + +- :doc:`Integrating with Android APIs <../tutorials/platform/android/javaclasswrapper_and_androidruntimeplugin>` + .. rst-class:: classref-reftable-group Methods @@ -80,9 +87,19 @@ Returns the Java exception from the last call into a Java class. If there was no Wraps a class defined in Java, and returns it as a :ref:`JavaClass` :ref:`Object` type that Godot can interact with. +When wrapping inner (nested) classes, use ``$`` instead of ``.`` to separate them. For example, ``JavaClassWrapper.wrap("android.view.WindowManager$LayoutParams")`` wraps the **WindowManager.LayoutParams** class. + +\ **Note:** To invoke a constructor, call a method with the same name as the class. For example: + +:: + + var Intent = JavaClassWrapper.wrap("android.content.Intent") + var intent = Intent.Intent() + \ **Note:** This method only works on Android. On every other platform, this method does nothing and returns an empty :ref:`JavaClass`. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_javaobject.rst b/classes/class_javaobject.rst index 5a03e9607..e4dba3508 100644 --- a/classes/class_javaobject.rst +++ b/classes/class_javaobject.rst @@ -55,6 +55,7 @@ Method Descriptions Returns the :ref:`JavaClass` that this object is an instance of. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_javascriptbridge.rst b/classes/class_javascriptbridge.rst index 56394323a..59f4be3c9 100644 --- a/classes/class_javascriptbridge.rst +++ b/classes/class_javascriptbridge.rst @@ -21,7 +21,7 @@ Description The JavaScriptBridge singleton is implemented only in the Web export. It's used to access the browser's JavaScript context. This allows interaction with embedding pages or calling third-party JavaScript APIs. -\ **Note:** This singleton can be disabled at build-time to improve security. By default, the JavaScriptBridge singleton is enabled. Official export templates also have the JavaScriptBridge singleton enabled. See :doc:`Compiling for the Web <../contributing/development/compiling/compiling_for_web>` in the documentation for more information. +\ **Note:** This singleton can be disabled at build-time to improve security. By default, the JavaScriptBridge singleton is enabled. Official export templates also have the JavaScriptBridge singleton enabled. See :doc:`Compiling for the Web <../engine_details/development/compiling/compiling_for_web>` in the documentation for more information. .. rst-class:: classref-introduction-group @@ -221,6 +221,7 @@ Performs the live update of the progressive web app. Forcing the new version to \ **Note:** Only relevant when exported as a Progressive Web App and :ref:`pwa_needs_update()` returns ``true``. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_javascriptobject.rst b/classes/class_javascriptobject.rst index d4c337fbf..11d7931b9 100644 --- a/classes/class_javascriptobject.rst +++ b/classes/class_javascriptobject.rst @@ -24,23 +24,23 @@ JavaScriptObject is used to interact with JavaScript objects retrieved or create :: extends Node - + var _my_js_callback = JavaScriptBridge.create_callback(myCallback) # This reference must be kept var console = JavaScriptBridge.get_interface("console") - + func _init(): var buf = JavaScriptBridge.create_object("ArrayBuffer", 10) # new ArrayBuffer(10) print(buf) # Prints [JavaScriptObject:OBJECT_ID] var uint8arr = JavaScriptBridge.create_object("Uint8Array", buf) # new Uint8Array(buf) uint8arr[1] = 255 prints(uint8arr[1], uint8arr.byteLength) # Prints "255 10" - + # Prints "Uint8Array(10) [ 0, 255, 0, 0, 0, 0, 0, 0, 0, 0 ]" in the browser's console. console.log(uint8arr) - + # Equivalent of JavaScriptBridge: Array.from(uint8arr).forEach(myCallback) JavaScriptBridge.get_interface("Array").from(uint8arr).forEach(_my_js_callback) - + func myCallback(args): # Will be called with the parameters passed to the "forEach" callback # [0, 0, [JavaScriptObject:1173]] @@ -52,6 +52,7 @@ JavaScriptObject is used to interact with JavaScript objects retrieved or create \ **Note:** Only available in the Web platform. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_jnisingleton.rst b/classes/class_jnisingleton.rst index 7e09e92cd..d9a229de9 100644 --- a/classes/class_jnisingleton.rst +++ b/classes/class_jnisingleton.rst @@ -29,6 +29,7 @@ Tutorials - `Creating Android plugins <../tutorials/platform/android/android_plugin.html#doc-android-plugin>`__ .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_joint2d.rst b/classes/class_joint2d.rst index 0c58b8b85..3b810a4ea 100644 --- a/classes/class_joint2d.rst +++ b/classes/class_joint2d.rst @@ -146,6 +146,7 @@ Method Descriptions Returns the joint's internal :ref:`RID` from the :ref:`PhysicsServer2D`. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_joint3d.rst b/classes/class_joint3d.rst index 411ce34a2..1be8a876a 100644 --- a/classes/class_joint3d.rst +++ b/classes/class_joint3d.rst @@ -155,6 +155,7 @@ Method Descriptions Returns the joint's internal :ref:`RID` from the :ref:`PhysicsServer3D`. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_json.rst b/classes/class_json.rst index bb9b3a57f..409b34941 100644 --- a/classes/class_json.rst +++ b/classes/class_json.rst @@ -235,7 +235,7 @@ The ``indent`` parameter controls if and how something is indented; its contents ## JSON.stringify(my_dictionary) {"name":"my_dictionary","version":"1.0.0","entities":[{"name":"entity_0","value":"value_0"},{"name":"entity_1","value":"value_1"}]} - + ## JSON.stringify(my_dictionary, "\t") { "name": "my_dictionary", @@ -251,7 +251,7 @@ The ``indent`` parameter controls if and how something is indented; its contents } ] } - + ## JSON.stringify(my_dictionary, "...") { ..."name": "my_dictionary", @@ -290,6 +290,7 @@ You can convert a JSON string back to a native value like this: return JSON.to_native(JSON.parse_string(string), allow_objects) .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_jsonrpc.rst b/classes/class_jsonrpc.rst index 15dabe115..55d0ac301 100644 --- a/classes/class_jsonrpc.rst +++ b/classes/class_jsonrpc.rst @@ -42,7 +42,7 @@ Methods +-------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`String` | :ref:`process_string`\ (\ action\: :ref:`String`\ ) | +-------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`set_scope`\ (\ scope\: :ref:`String`, target\: :ref:`Object`\ ) | + | |void| | :ref:`set_method`\ (\ name\: :ref:`String`, callback\: :ref:`Callable`\ ) | +-------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ .. rst-class:: classref-section-separator @@ -201,23 +201,26 @@ To add new supported methods extend the JSONRPC class and call :ref:`process_act .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator ---- -.. _class_JSONRPC_method_set_scope: +.. _class_JSONRPC_method_set_method: .. rst-class:: classref-method -|void| **set_scope**\ (\ scope\: :ref:`String`, target\: :ref:`Object`\ ) :ref:`🔗` +|void| **set_method**\ (\ name\: :ref:`String`, callback\: :ref:`Callable`\ ) :ref:`🔗` -.. container:: contribute +Registers a callback for the given method name. - There is currently no description for this method. Please help us by :ref:`contributing one `! +- ``name`` The name that clients can use to access the callback. + +- ``callback`` The callback which will handle the specific method. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_kinematiccollision2d.rst b/classes/class_kinematiccollision2d.rst index a06307078..83898884d 100644 --- a/classes/class_kinematiccollision2d.rst +++ b/classes/class_kinematiccollision2d.rst @@ -221,6 +221,7 @@ Returns the moving object's remaining movement vector. Returns the moving object's travel before collision. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_kinematiccollision3d.rst b/classes/class_kinematiccollision3d.rst index a2380aabe..9d2ae7c48 100644 --- a/classes/class_kinematiccollision3d.rst +++ b/classes/class_kinematiccollision3d.rst @@ -235,6 +235,7 @@ Returns the moving object's remaining movement vector. Returns the moving object's travel before collision. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_label.rst b/classes/class_label.rst index 400efb550..fe0dc5b71 100644 --- a/classes/class_label.rst +++ b/classes/class_label.rst @@ -42,6 +42,8 @@ Properties +-----------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------+ | :ref:`AutowrapMode` | :ref:`autowrap_mode` | ``0`` | +-----------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------+ + | |bitfield|\[:ref:`LineBreakFlag`\] | :ref:`autowrap_trim_flags` | ``192`` | + +-----------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`clip_text` | ``false`` | +-----------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------+ | :ref:`String` | :ref:`ellipsis_char` | ``"…"`` | @@ -138,6 +140,8 @@ Theme Properties +---------------------------------+----------------------------------------------------------------------------+-----------------------+ | :ref:`int` | :ref:`font_size` | | +---------------------------------+----------------------------------------------------------------------------+-----------------------+ + | :ref:`StyleBox` | :ref:`focus` | | + +---------------------------------+----------------------------------------------------------------------------+-----------------------+ | :ref:`StyleBox` | :ref:`normal` | | +---------------------------------+----------------------------------------------------------------------------+-----------------------+ @@ -161,7 +165,24 @@ Property Descriptions - |void| **set_autowrap_mode**\ (\ value\: :ref:`AutowrapMode`\ ) - :ref:`AutowrapMode` **get_autowrap_mode**\ (\ ) -If set to something other than :ref:`TextServer.AUTOWRAP_OFF`, the text gets wrapped inside the node's bounding rectangle. If you resize the node, it will change its height automatically to show all the text. To see how each mode behaves, see :ref:`AutowrapMode`. +If set to something other than :ref:`TextServer.AUTOWRAP_OFF`, the text gets wrapped inside the node's bounding rectangle. If you resize the node, it will change its height automatically to show all the text. + +.. rst-class:: classref-item-separator + +---- + +.. _class_Label_property_autowrap_trim_flags: + +.. rst-class:: classref-property + +|bitfield|\[:ref:`LineBreakFlag`\] **autowrap_trim_flags** = ``192`` :ref:`🔗` + +.. rst-class:: classref-property-setget + +- |void| **set_autowrap_trim_flags**\ (\ value\: |bitfield|\[:ref:`LineBreakFlag`\]\ ) +- |bitfield|\[:ref:`LineBreakFlag`\] **get_autowrap_trim_flags**\ (\ ) + +Autowrap space trimming flags. See :ref:`TextServer.BREAK_TRIM_START_EDGE_SPACES` and :ref:`TextServer.BREAK_TRIM_END_EDGE_SPACES` for more info. .. rst-class:: classref-item-separator @@ -212,7 +233,7 @@ Ellipsis character used for text clipping. - |void| **set_horizontal_alignment**\ (\ value\: :ref:`HorizontalAlignment`\ ) - :ref:`HorizontalAlignment` **get_horizontal_alignment**\ (\ ) -Controls the text's horizontal alignment. Supports left, center, right, and fill, or justify. Set it to one of the :ref:`HorizontalAlignment` constants. +Controls the text's horizontal alignment. Supports left, center, right, and fill (also known as justify). .. rst-class:: classref-item-separator @@ -229,7 +250,7 @@ Controls the text's horizontal alignment. Supports left, center, right, and fill - |void| **set_justification_flags**\ (\ value\: |bitfield|\[:ref:`JustificationFlag`\]\ ) - |bitfield|\[:ref:`JustificationFlag`\] **get_justification_flags**\ (\ ) -Line fill alignment rules. See :ref:`JustificationFlag` for more information. +Line fill alignment rules. .. rst-class:: classref-item-separator @@ -418,7 +439,7 @@ Base text writing direction. - |void| **set_text_overrun_behavior**\ (\ value\: :ref:`OverrunBehavior`\ ) - :ref:`OverrunBehavior` **get_text_overrun_behavior**\ (\ ) -Sets the clipping behavior when the text exceeds the node's bounding rectangle. See :ref:`OverrunBehavior` for a description of all modes. +The clipping behavior when the text exceeds the node's bounding rectangle. .. rst-class:: classref-item-separator @@ -452,7 +473,7 @@ If ``true``, all the text displays as UPPERCASE. - |void| **set_vertical_alignment**\ (\ value\: :ref:`VerticalAlignment`\ ) - :ref:`VerticalAlignment` **get_vertical_alignment**\ (\ ) -Controls the text's vertical alignment. Supports top, center, bottom, and fill. Set it to one of the :ref:`VerticalAlignment` constants. +Controls the text's vertical alignment. Supports top, center, bottom, and fill. .. rst-class:: classref-item-separator @@ -473,6 +494,8 @@ The number of characters to display. If set to ``-1``, all characters are displa \ **Note:** Setting this property updates :ref:`visible_ratio` accordingly. +\ **Note:** Characters are counted as Unicode codepoints. A single visible grapheme may contain multiple codepoints (e.g. certain emoji use three codepoints). A single codepoint may contain two UTF-16 characters, which are used in C# strings. + .. rst-class:: classref-item-separator ---- @@ -488,7 +511,7 @@ The number of characters to display. If set to ``-1``, all characters are displa - |void| **set_visible_characters_behavior**\ (\ value\: :ref:`VisibleCharactersBehavior`\ ) - :ref:`VisibleCharactersBehavior` **get_visible_characters_behavior**\ (\ ) -Sets the clipping behavior when :ref:`visible_characters` or :ref:`visible_ratio` is set. See :ref:`VisibleCharactersBehavior` for more info. +The clipping behavior when :ref:`visible_characters` or :ref:`visible_ratio` is set. .. rst-class:: classref-item-separator @@ -723,6 +746,18 @@ Font size of the **Label**'s text. ---- +.. _class_Label_theme_style_focus: + +.. rst-class:: classref-themeproperty + +:ref:`StyleBox` **focus** :ref:`🔗` + +:ref:`StyleBox` used when the **Label** is focused (when used with assistive apps). + +.. rst-class:: classref-item-separator + +---- + .. _class_Label_theme_style_normal: .. rst-class:: classref-themeproperty @@ -732,6 +767,7 @@ Font size of the **Label**'s text. Background :ref:`StyleBox` for the **Label**. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_label3d.rst b/classes/class_label3d.rst index f9b208fbe..e9bbdacf2 100644 --- a/classes/class_label3d.rst +++ b/classes/class_label3d.rst @@ -52,6 +52,8 @@ Properties +---------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------+ | :ref:`AutowrapMode` | :ref:`autowrap_mode` | ``0`` | +---------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------+ + | |bitfield|\[:ref:`LineBreakFlag`\] | :ref:`autowrap_trim_flags` | ``192`` | + +---------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------+ | :ref:`BillboardMode` | :ref:`billboard` | ``0`` | +---------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------+ | :ref:`ShadowCastingSetting` | cast_shadow | ``0`` (overrides :ref:`GeometryInstance3D`) | @@ -265,7 +267,7 @@ Threshold at which antialiasing will be applied on the alpha channel. - |void| **set_alpha_antialiasing**\ (\ value\: :ref:`AlphaAntiAliasing`\ ) - :ref:`AlphaAntiAliasing` **get_alpha_antialiasing**\ (\ ) -The type of alpha antialiasing to apply. See :ref:`AlphaAntiAliasing`. +The type of alpha antialiasing to apply. .. rst-class:: classref-item-separator @@ -282,7 +284,7 @@ The type of alpha antialiasing to apply. See :ref:`AlphaAntiAliasing`\ ) - :ref:`AlphaCutMode` **get_alpha_cut_mode**\ (\ ) -The alpha cutting mode to use for the sprite. See :ref:`AlphaCutMode` for possible values. +The alpha cutting mode to use for the sprite. .. rst-class:: classref-item-separator @@ -333,7 +335,24 @@ Threshold at which the alpha scissor will discard values. - |void| **set_autowrap_mode**\ (\ value\: :ref:`AutowrapMode`\ ) - :ref:`AutowrapMode` **get_autowrap_mode**\ (\ ) -If set to something other than :ref:`TextServer.AUTOWRAP_OFF`, the text gets wrapped inside the node's bounding rectangle. If you resize the node, it will change its height automatically to show all the text. To see how each mode behaves, see :ref:`AutowrapMode`. +If set to something other than :ref:`TextServer.AUTOWRAP_OFF`, the text gets wrapped inside the node's bounding rectangle. If you resize the node, it will change its height automatically to show all the text. + +.. rst-class:: classref-item-separator + +---- + +.. _class_Label3D_property_autowrap_trim_flags: + +.. rst-class:: classref-property + +|bitfield|\[:ref:`LineBreakFlag`\] **autowrap_trim_flags** = ``192`` :ref:`🔗` + +.. rst-class:: classref-property-setget + +- |void| **set_autowrap_trim_flags**\ (\ value\: |bitfield|\[:ref:`LineBreakFlag`\]\ ) +- |bitfield|\[:ref:`LineBreakFlag`\] **get_autowrap_trim_flags**\ (\ ) + +Autowrap space trimming flags. See :ref:`TextServer.BREAK_TRIM_START_EDGE_SPACES` and :ref:`TextServer.BREAK_TRIM_END_EDGE_SPACES` for more info. .. rst-class:: classref-item-separator @@ -350,7 +369,7 @@ If set to something other than :ref:`TextServer.AUTOWRAP_OFF`\ ) - :ref:`BillboardMode` **get_billboard_mode**\ (\ ) -The billboard mode to use for the label. See :ref:`BillboardMode` for possible values. +The billboard mode to use for the label. .. rst-class:: classref-item-separator @@ -384,7 +403,7 @@ If ``true``, text can be seen from the back as well, if ``false``, it is invisib - |void| **set_draw_flag**\ (\ flag\: :ref:`DrawFlags`, enabled\: :ref:`bool`\ ) - :ref:`bool` **get_draw_flag**\ (\ flag\: :ref:`DrawFlags`\ ) |const| -If ``true``, the label is rendered at the same size regardless of distance. +If ``true``, the label is rendered at the same size regardless of distance. The label's size on screen is the same as if the camera was ``1.0`` units away from the label's origin, regardless of the actual distance from the camera. The :ref:`Camera3D`'s field of view (or :ref:`Camera3D.size` when in orthogonal/frustum mode) still affects the size the label is drawn at. .. rst-class:: classref-item-separator @@ -437,7 +456,7 @@ Higher font sizes require more time to render new characters, which can cause st - |void| **set_horizontal_alignment**\ (\ value\: :ref:`HorizontalAlignment`\ ) - :ref:`HorizontalAlignment` **get_horizontal_alignment**\ (\ ) -Controls the text's horizontal alignment. Supports left, center, right, and fill, or justify. Set it to one of the :ref:`HorizontalAlignment` constants. +Controls the text's horizontal alignment. Supports left, center, right, and fill (also known as justify). .. rst-class:: classref-item-separator @@ -454,7 +473,7 @@ Controls the text's horizontal alignment. Supports left, center, right, and fill - |void| **set_justification_flags**\ (\ value\: |bitfield|\[:ref:`JustificationFlag`\]\ ) - |bitfield|\[:ref:`JustificationFlag`\] **get_justification_flags**\ (\ ) -Line fill alignment rules. See :ref:`JustificationFlag` for more information. +Line fill alignment rules. .. rst-class:: classref-item-separator @@ -734,7 +753,7 @@ Base text writing direction. - |void| **set_texture_filter**\ (\ value\: :ref:`TextureFilter`\ ) - :ref:`TextureFilter` **get_texture_filter**\ (\ ) -Filter flags for the texture. See :ref:`TextureFilter` for options. +Filter flags for the texture. .. rst-class:: classref-item-separator @@ -768,7 +787,7 @@ If ``true``, all the text displays as UPPERCASE. - |void| **set_vertical_alignment**\ (\ value\: :ref:`VerticalAlignment`\ ) - :ref:`VerticalAlignment` **get_vertical_alignment**\ (\ ) -Controls the text's vertical alignment. Supports top, center, bottom. Set it to one of the :ref:`VerticalAlignment` constants. +Controls the text's vertical alignment. Supports top, center, and bottom. .. rst-class:: classref-item-separator @@ -826,9 +845,10 @@ Returns the value of the specified flag. |void| **set_draw_flag**\ (\ flag\: :ref:`DrawFlags`, enabled\: :ref:`bool`\ ) :ref:`🔗` -If ``true``, the specified flag will be enabled. See :ref:`DrawFlags` for a list of flags. +If ``true``, the specified ``flag`` will be enabled. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_labelsettings.rst b/classes/class_labelsettings.rst index ccc4889dd..286b8bb38 100644 --- a/classes/class_labelsettings.rst +++ b/classes/class_labelsettings.rst @@ -29,27 +29,73 @@ Properties .. table:: :widths: auto - +-------------------------------+--------------------------------------------------------------------------+-----------------------+ - | :ref:`Font` | :ref:`font` | | - +-------------------------------+--------------------------------------------------------------------------+-----------------------+ - | :ref:`Color` | :ref:`font_color` | ``Color(1, 1, 1, 1)`` | - +-------------------------------+--------------------------------------------------------------------------+-----------------------+ - | :ref:`int` | :ref:`font_size` | ``16`` | - +-------------------------------+--------------------------------------------------------------------------+-----------------------+ - | :ref:`float` | :ref:`line_spacing` | ``3.0`` | - +-------------------------------+--------------------------------------------------------------------------+-----------------------+ - | :ref:`Color` | :ref:`outline_color` | ``Color(1, 1, 1, 1)`` | - +-------------------------------+--------------------------------------------------------------------------+-----------------------+ - | :ref:`int` | :ref:`outline_size` | ``0`` | - +-------------------------------+--------------------------------------------------------------------------+-----------------------+ - | :ref:`float` | :ref:`paragraph_spacing` | ``0.0`` | - +-------------------------------+--------------------------------------------------------------------------+-----------------------+ - | :ref:`Color` | :ref:`shadow_color` | ``Color(0, 0, 0, 0)`` | - +-------------------------------+--------------------------------------------------------------------------+-----------------------+ - | :ref:`Vector2` | :ref:`shadow_offset` | ``Vector2(1, 1)`` | - +-------------------------------+--------------------------------------------------------------------------+-----------------------+ - | :ref:`int` | :ref:`shadow_size` | ``1`` | - +-------------------------------+--------------------------------------------------------------------------+-----------------------+ + +-------------------------------+----------------------------------------------------------------------------------+-----------------------+ + | :ref:`Font` | :ref:`font` | | + +-------------------------------+----------------------------------------------------------------------------------+-----------------------+ + | :ref:`Color` | :ref:`font_color` | ``Color(1, 1, 1, 1)`` | + +-------------------------------+----------------------------------------------------------------------------------+-----------------------+ + | :ref:`int` | :ref:`font_size` | ``16`` | + +-------------------------------+----------------------------------------------------------------------------------+-----------------------+ + | :ref:`float` | :ref:`line_spacing` | ``3.0`` | + +-------------------------------+----------------------------------------------------------------------------------+-----------------------+ + | :ref:`Color` | :ref:`outline_color` | ``Color(1, 1, 1, 1)`` | + +-------------------------------+----------------------------------------------------------------------------------+-----------------------+ + | :ref:`int` | :ref:`outline_size` | ``0`` | + +-------------------------------+----------------------------------------------------------------------------------+-----------------------+ + | :ref:`float` | :ref:`paragraph_spacing` | ``0.0`` | + +-------------------------------+----------------------------------------------------------------------------------+-----------------------+ + | :ref:`Color` | :ref:`shadow_color` | ``Color(0, 0, 0, 0)`` | + +-------------------------------+----------------------------------------------------------------------------------+-----------------------+ + | :ref:`Vector2` | :ref:`shadow_offset` | ``Vector2(1, 1)`` | + +-------------------------------+----------------------------------------------------------------------------------+-----------------------+ + | :ref:`int` | :ref:`shadow_size` | ``1`` | + +-------------------------------+----------------------------------------------------------------------------------+-----------------------+ + | :ref:`int` | :ref:`stacked_outline_count` | ``0`` | + +-------------------------------+----------------------------------------------------------------------------------+-----------------------+ + | :ref:`int` | :ref:`stacked_shadow_count` | ``0`` | + +-------------------------------+----------------------------------------------------------------------------------+-----------------------+ + +.. rst-class:: classref-reftable-group + +Methods +------- + +.. table:: + :widths: auto + + +-------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`add_stacked_outline`\ (\ index\: :ref:`int` = -1\ ) | + +-------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`add_stacked_shadow`\ (\ index\: :ref:`int` = -1\ ) | + +-------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Color` | :ref:`get_stacked_outline_color`\ (\ index\: :ref:`int`\ ) |const| | + +-------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`get_stacked_outline_size`\ (\ index\: :ref:`int`\ ) |const| | + +-------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Color` | :ref:`get_stacked_shadow_color`\ (\ index\: :ref:`int`\ ) |const| | + +-------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Vector2` | :ref:`get_stacked_shadow_offset`\ (\ index\: :ref:`int`\ ) |const| | + +-------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`get_stacked_shadow_outline_size`\ (\ index\: :ref:`int`\ ) |const| | + +-------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`move_stacked_outline`\ (\ from_index\: :ref:`int`, to_position\: :ref:`int`\ ) | + +-------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`move_stacked_shadow`\ (\ from_index\: :ref:`int`, to_position\: :ref:`int`\ ) | + +-------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`remove_stacked_outline`\ (\ index\: :ref:`int`\ ) | + +-------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`remove_stacked_shadow`\ (\ index\: :ref:`int`\ ) | + +-------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_stacked_outline_color`\ (\ index\: :ref:`int`, color\: :ref:`Color`\ ) | + +-------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_stacked_outline_size`\ (\ index\: :ref:`int`, size\: :ref:`int`\ ) | + +-------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_stacked_shadow_color`\ (\ index\: :ref:`int`, color\: :ref:`Color`\ ) | + +-------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_stacked_shadow_offset`\ (\ index\: :ref:`int`, offset\: :ref:`Vector2`\ ) | + +-------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_stacked_shadow_outline_size`\ (\ index\: :ref:`int`, size\: :ref:`int`\ ) | + +-------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------+ .. rst-class:: classref-section-separator @@ -226,7 +272,239 @@ Offset of the shadow effect, in pixels. Size of the shadow effect. +.. rst-class:: classref-item-separator + +---- + +.. _class_LabelSettings_property_stacked_outline_count: + +.. rst-class:: classref-property + +:ref:`int` **stacked_outline_count** = ``0`` :ref:`🔗` + +.. rst-class:: classref-property-setget + +- |void| **set_stacked_outline_count**\ (\ value\: :ref:`int`\ ) +- :ref:`int` **get_stacked_outline_count**\ (\ ) + +The number of stacked outlines. + +.. rst-class:: classref-item-separator + +---- + +.. _class_LabelSettings_property_stacked_shadow_count: + +.. rst-class:: classref-property + +:ref:`int` **stacked_shadow_count** = ``0`` :ref:`🔗` + +.. rst-class:: classref-property-setget + +- |void| **set_stacked_shadow_count**\ (\ value\: :ref:`int`\ ) +- :ref:`int` **get_stacked_shadow_count**\ (\ ) + +The number of stacked shadows. + +.. rst-class:: classref-section-separator + +---- + +.. rst-class:: classref-descriptions-group + +Method Descriptions +------------------- + +.. _class_LabelSettings_method_add_stacked_outline: + +.. rst-class:: classref-method + +|void| **add_stacked_outline**\ (\ index\: :ref:`int` = -1\ ) :ref:`🔗` + +Adds a new stacked outline to the label at the given ``index``. If ``index`` is ``-1``, the new stacked outline will be added at the end of the list. + +.. rst-class:: classref-item-separator + +---- + +.. _class_LabelSettings_method_add_stacked_shadow: + +.. rst-class:: classref-method + +|void| **add_stacked_shadow**\ (\ index\: :ref:`int` = -1\ ) :ref:`🔗` + +Adds a new stacked shadow to the label at the given ``index``. If ``index`` is ``-1``, the new stacked shadow will be added at the end of the list. + +.. rst-class:: classref-item-separator + +---- + +.. _class_LabelSettings_method_get_stacked_outline_color: + +.. rst-class:: classref-method + +:ref:`Color` **get_stacked_outline_color**\ (\ index\: :ref:`int`\ ) |const| :ref:`🔗` + +Returns the color of the stacked outline at ``index``. + +.. rst-class:: classref-item-separator + +---- + +.. _class_LabelSettings_method_get_stacked_outline_size: + +.. rst-class:: classref-method + +:ref:`int` **get_stacked_outline_size**\ (\ index\: :ref:`int`\ ) |const| :ref:`🔗` + +Returns the size of the stacked outline at ``index``. + +.. rst-class:: classref-item-separator + +---- + +.. _class_LabelSettings_method_get_stacked_shadow_color: + +.. rst-class:: classref-method + +:ref:`Color` **get_stacked_shadow_color**\ (\ index\: :ref:`int`\ ) |const| :ref:`🔗` + +Returns the color of the stacked shadow at ``index``. + +.. rst-class:: classref-item-separator + +---- + +.. _class_LabelSettings_method_get_stacked_shadow_offset: + +.. rst-class:: classref-method + +:ref:`Vector2` **get_stacked_shadow_offset**\ (\ index\: :ref:`int`\ ) |const| :ref:`🔗` + +Returns the offset of the stacked shadow at ``index``. + +.. rst-class:: classref-item-separator + +---- + +.. _class_LabelSettings_method_get_stacked_shadow_outline_size: + +.. rst-class:: classref-method + +:ref:`int` **get_stacked_shadow_outline_size**\ (\ index\: :ref:`int`\ ) |const| :ref:`🔗` + +Returns the outline size of the stacked shadow at ``index``. + +.. rst-class:: classref-item-separator + +---- + +.. _class_LabelSettings_method_move_stacked_outline: + +.. rst-class:: classref-method + +|void| **move_stacked_outline**\ (\ from_index\: :ref:`int`, to_position\: :ref:`int`\ ) :ref:`🔗` + +Moves the stacked outline at index ``from_index`` to the given position ``to_position`` in the array. + +.. rst-class:: classref-item-separator + +---- + +.. _class_LabelSettings_method_move_stacked_shadow: + +.. rst-class:: classref-method + +|void| **move_stacked_shadow**\ (\ from_index\: :ref:`int`, to_position\: :ref:`int`\ ) :ref:`🔗` + +Moves the stacked shadow at index ``from_index`` to the given position ``to_position`` in the array. + +.. rst-class:: classref-item-separator + +---- + +.. _class_LabelSettings_method_remove_stacked_outline: + +.. rst-class:: classref-method + +|void| **remove_stacked_outline**\ (\ index\: :ref:`int`\ ) :ref:`🔗` + +Removes the stacked outline at index ``index``. + +.. rst-class:: classref-item-separator + +---- + +.. _class_LabelSettings_method_remove_stacked_shadow: + +.. rst-class:: classref-method + +|void| **remove_stacked_shadow**\ (\ index\: :ref:`int`\ ) :ref:`🔗` + +Removes the stacked shadow at index ``index``. + +.. rst-class:: classref-item-separator + +---- + +.. _class_LabelSettings_method_set_stacked_outline_color: + +.. rst-class:: classref-method + +|void| **set_stacked_outline_color**\ (\ index\: :ref:`int`, color\: :ref:`Color`\ ) :ref:`🔗` + +Sets the color of the stacked outline identified by the given ``index`` to ``color``. + +.. rst-class:: classref-item-separator + +---- + +.. _class_LabelSettings_method_set_stacked_outline_size: + +.. rst-class:: classref-method + +|void| **set_stacked_outline_size**\ (\ index\: :ref:`int`, size\: :ref:`int`\ ) :ref:`🔗` + +Sets the size of the stacked outline identified by the given ``index`` to ``size``. + +.. rst-class:: classref-item-separator + +---- + +.. _class_LabelSettings_method_set_stacked_shadow_color: + +.. rst-class:: classref-method + +|void| **set_stacked_shadow_color**\ (\ index\: :ref:`int`, color\: :ref:`Color`\ ) :ref:`🔗` + +Sets the color of the stacked shadow identified by the given ``index`` to ``color``. + +.. rst-class:: classref-item-separator + +---- + +.. _class_LabelSettings_method_set_stacked_shadow_offset: + +.. rst-class:: classref-method + +|void| **set_stacked_shadow_offset**\ (\ index\: :ref:`int`, offset\: :ref:`Vector2`\ ) :ref:`🔗` + +Sets the offset of the stacked shadow identified by the given ``index`` to ``offset``. + +.. rst-class:: classref-item-separator + +---- + +.. _class_LabelSettings_method_set_stacked_shadow_outline_size: + +.. rst-class:: classref-method + +|void| **set_stacked_shadow_outline_size**\ (\ index\: :ref:`int`, size\: :ref:`int`\ ) :ref:`🔗` + +Sets the outline size of the stacked shadow identified by the given ``index`` to ``size``. + .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_light2d.rst b/classes/class_light2d.rst index 1d3e10ea0..19f5cbcfc 100644 --- a/classes/class_light2d.rst +++ b/classes/class_light2d.rst @@ -177,7 +177,7 @@ Property Descriptions - |void| **set_blend_mode**\ (\ value\: :ref:`BlendMode`\ ) - :ref:`BlendMode` **get_blend_mode**\ (\ ) -The Light2D's blend mode. See :ref:`BlendMode` constants for values. +The Light2D's blend mode. .. rst-class:: classref-item-separator @@ -383,7 +383,7 @@ If ``true``, the Light2D will cast shadows. - |void| **set_shadow_filter**\ (\ value\: :ref:`ShadowFilter`\ ) - :ref:`ShadowFilter` **get_shadow_filter**\ (\ ) -Shadow filter type. See :ref:`ShadowFilter` for possible values. +Shadow filter type. .. rst-class:: classref-item-separator @@ -449,6 +449,7 @@ Returns the light's height, which is used in 2D normal mapping. See :ref:`PointL Sets the light's height, which is used in 2D normal mapping. See :ref:`PointLight2D.height` and :ref:`DirectionalLight2D.height`. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_light3d.rst b/classes/class_light3d.rst index 9158f2097..e2f9ebc6a 100644 --- a/classes/class_light3d.rst +++ b/classes/class_light3d.rst @@ -321,7 +321,7 @@ enum **BakeMode**: :ref:`🔗` :ref:`BakeMode` **BAKE_DISABLED** = ``0`` -Light is ignored when baking. This is the fastest mode, but the light will be taken into account when baking global illumination. This mode should generally be used for dynamic lights that change quickly, as the effect of global illumination is less noticeable on those lights. +Light is ignored when baking. This is the fastest mode, but the light will not be taken into account when baking global illumination. This mode should generally be used for dynamic lights that change quickly, as the effect of global illumination is less noticeable on those lights. \ **Note:** Hiding a light does *not* affect baking :ref:`LightmapGI`. Hiding a light will still affect baking :ref:`VoxelGI` and SDFGI (see :ref:`Environment.sdfgi_enabled`). @@ -477,7 +477,7 @@ The light's angular size in degrees. Increasing this will make shadows softer at - |void| **set_bake_mode**\ (\ value\: :ref:`BakeMode`\ ) - :ref:`BakeMode` **get_bake_mode**\ (\ ) -The light's bake mode. This will affect the global illumination techniques that have an effect on the light's rendering. See :ref:`BakeMode`. +The light's bake mode. This will affect the global illumination techniques that have an effect on the light's rendering. \ **Note:** Meshes' global illumination mode will also affect the global illumination rendering. See :ref:`GeometryInstance3D.gi_mode`. @@ -496,7 +496,7 @@ The light's bake mode. This will affect the global illumination techniques that - |void| **set_color**\ (\ value\: :ref:`Color`\ ) - :ref:`Color` **get_color**\ (\ ) -The light's color. An *overbright* color can be used to achieve a result equivalent to increasing the light's :ref:`light_energy`. +The light's color in the nonlinear sRGB color space. An *overbright* color can be used to achieve a result equivalent to increasing the light's :ref:`light_energy`. .. rst-class:: classref-item-separator @@ -841,7 +841,7 @@ If ``true``, reverses the backface culling of the mesh. This can be useful when .. container:: contribute - There is currently no description for this property. Please help us by :ref:`contributing one `! + There is currently no description for this property. Please help us by `contributing one `__! .. rst-class:: classref-section-separator @@ -885,6 +885,7 @@ Returns the value of the specified :ref:`Param` parameter. Sets the value of the specified :ref:`Param` parameter. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_lightmapgi.rst b/classes/class_lightmapgi.rst index c5f38c349..2a134a4b5 100644 --- a/classes/class_lightmapgi.rst +++ b/classes/class_lightmapgi.rst @@ -749,6 +749,7 @@ If ``true``, a texture with the lighting information will be generated to speed \ **Note:** :ref:`use_texture_for_bounces` only has an effect if :ref:`bounces` is set to a value greater than or equal to ``1``. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_lightmapgidata.rst b/classes/class_lightmapgidata.rst index f6fcfa693..0db4a7e19 100644 --- a/classes/class_lightmapgidata.rst +++ b/classes/class_lightmapgidata.rst @@ -236,6 +236,7 @@ If ``uses_spherical_harmonics`` is ``true``, tells the engine to treat the light \ **Note:** Changing this value on already baked lightmaps will not cause them to be baked again. This means the material appearance will look incorrect until lightmaps are baked again, in which case the value set here is discarded as the entire **LightmapGIData** resource is replaced by the lightmapper. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_lightmapper.rst b/classes/class_lightmapper.rst index cf1005846..7ed6a1656 100644 --- a/classes/class_lightmapper.rst +++ b/classes/class_lightmapper.rst @@ -26,6 +26,7 @@ This class should be extended by custom lightmapper classes. Lightmappers can th Godot contains a built-in GPU-based lightmapper :ref:`LightmapperRD` that uses compute shaders, but custom lightmappers can be implemented by C++ modules. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_lightmapperrd.rst b/classes/class_lightmapperrd.rst index c1b22b483..f881aef63 100644 --- a/classes/class_lightmapperrd.rst +++ b/classes/class_lightmapperrd.rst @@ -24,6 +24,7 @@ LightmapperRD ("RD" stands for :ref:`RenderingDevice`) is \ **Note:** Only usable when using the RenderingDevice backend (Forward+ or Mobile renderers), not Compatibility. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_lightmapprobe.rst b/classes/class_lightmapprobe.rst index 0c85da5be..fa75f9a82 100644 --- a/classes/class_lightmapprobe.rst +++ b/classes/class_lightmapprobe.rst @@ -26,6 +26,7 @@ Typically, :ref:`LightmapGI` probes are placed automatically b \ **Note:** **LightmapProbe** nodes that are placed after baking lightmaps are ignored by dynamic objects. You must bake lightmaps again after creating or modifying **LightmapProbe**\ s for the probes to be effective. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_lightoccluder2d.rst b/classes/class_lightoccluder2d.rst index 694773969..39731018b 100644 --- a/classes/class_lightoccluder2d.rst +++ b/classes/class_lightoccluder2d.rst @@ -101,6 +101,7 @@ The LightOccluder2D's occluder light mask. The LightOccluder2D will cast shadows If enabled, the occluder will be part of a real-time generated signed distance field that can be used in custom shaders. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_line2d.rst b/classes/class_line2d.rst index ff51c8bb6..15b351732 100644 --- a/classes/class_line2d.rst +++ b/classes/class_line2d.rst @@ -240,7 +240,7 @@ If ``true``, the polyline's border will be anti-aliased. - |void| **set_begin_cap_mode**\ (\ value\: :ref:`LineCapMode`\ ) - :ref:`LineCapMode` **get_begin_cap_mode**\ (\ ) -The style of the beginning of the polyline, if :ref:`closed` is ``false``. Use :ref:`LineCapMode` constants. +The style of the beginning of the polyline, if :ref:`closed` is ``false``. .. rst-class:: classref-item-separator @@ -295,7 +295,7 @@ The color of the polyline. Will not be used if a gradient is set. - |void| **set_end_cap_mode**\ (\ value\: :ref:`LineCapMode`\ ) - :ref:`LineCapMode` **get_end_cap_mode**\ (\ ) -The style of the end of the polyline, if :ref:`closed` is ``false``. Use :ref:`LineCapMode` constants. +The style of the end of the polyline, if :ref:`closed` is ``false``. .. rst-class:: classref-item-separator @@ -329,7 +329,7 @@ The gradient is drawn through the whole line from start to finish. The :ref:`def - |void| **set_joint_mode**\ (\ value\: :ref:`LineJointMode`\ ) - :ref:`LineJointMode` **get_joint_mode**\ (\ ) -The style of the connections between segments of the polyline. Use :ref:`LineJointMode` constants. +The style of the connections between segments of the polyline. .. rst-class:: classref-item-separator @@ -416,7 +416,7 @@ The texture used for the polyline. Uses :ref:`texture_mode`\ ) - :ref:`LineTextureMode` **get_texture_mode**\ (\ ) -The style to render the :ref:`texture` of the polyline. Use :ref:`LineTextureMode` constants. +The style to render the :ref:`texture` of the polyline. .. rst-class:: classref-item-separator @@ -532,6 +532,7 @@ Removes the point at index ``index`` from the polyline. Overwrites the position of the point at the given ``index`` with the supplied ``position``. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_lineedit.rst b/classes/class_lineedit.rst index e6f33e8aa..354ea750c 100644 --- a/classes/class_lineedit.rst +++ b/classes/class_lineedit.rst @@ -32,6 +32,14 @@ Description - Check :ref:`edit()`, :ref:`unedit()`, :ref:`is_editing()`, and :ref:`editing_toggled` for more information. +While entering text, it is possible to insert special characters using Unicode, OEM or Windows alt codes: + +- To enter Unicode codepoints, hold :kbd:`Alt` and type the codepoint on the numpad. For example, to enter the character ``á`` (U+00E1), hold :kbd:`Alt` and type :kbd:`+E1` on the numpad (the leading zeroes can be omitted). + +- To enter OEM codepoints, hold :kbd:`Alt` and type the code on the numpad. For example, to enter the character ``á`` (OEM 160), hold :kbd:`Alt` and type ``160`` on the numpad. + +- To enter Windows codepoints, hold :kbd:`Alt` and type the code on the numpad. For example, to enter the character ``á`` (Windows 0225), hold :kbd:`Alt` and type :kbd:`0`, :kbd:`2`, :kbd:`2`, :kbd:`5` on the numpad. The leading zero here must **not** be omitted, as this is how Windows codepoints are distinguished from OEM codepoints. + \ **Important:**\ - Focusing the **LineEdit** with ``ui_focus_next`` (by default :kbd:`Tab`) or ``ui_focus_prev`` (by default :kbd:`Shift + Tab`) or :ref:`Control.grab_focus()` still enters edit mode (for compatibility). @@ -90,75 +98,79 @@ Properties .. table:: :widths: auto - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ - | :ref:`HorizontalAlignment` | :ref:`alignment` | ``0`` | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`caret_blink` | ``false`` | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ - | :ref:`float` | :ref:`caret_blink_interval` | ``0.65`` | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`caret_column` | ``0`` | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`caret_force_displayed` | ``false`` | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`caret_mid_grapheme` | ``false`` | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`clear_button_enabled` | ``false`` | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`context_menu_enabled` | ``true`` | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`deselect_on_focus_loss_enabled` | ``true`` | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`drag_and_drop_selection_enabled` | ``true`` | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`draw_control_chars` | ``false`` | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`editable` | ``true`` | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`emoji_menu_enabled` | ``true`` | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`expand_to_text_length` | ``false`` | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`flat` | ``false`` | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ - | :ref:`FocusMode` | focus_mode | ``2`` (overrides :ref:`Control`) | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`keep_editing_on_text_submit` | ``false`` | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ - | :ref:`String` | :ref:`language` | ``""`` | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`max_length` | ``0`` | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`middle_mouse_paste_enabled` | ``true`` | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ - | :ref:`CursorShape` | mouse_default_cursor_shape | ``1`` (overrides :ref:`Control`) | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ - | :ref:`String` | :ref:`placeholder_text` | ``""`` | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ - | :ref:`Texture2D` | :ref:`right_icon` | | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`secret` | ``false`` | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ - | :ref:`String` | :ref:`secret_character` | ``"•"`` | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`select_all_on_focus` | ``false`` | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`selecting_enabled` | ``true`` | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`shortcut_keys_enabled` | ``true`` | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ - | :ref:`StructuredTextParser` | :ref:`structured_text_bidi_override` | ``0`` | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ - | :ref:`Array` | :ref:`structured_text_bidi_override_options` | ``[]`` | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ - | :ref:`String` | :ref:`text` | ``""`` | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ - | :ref:`TextDirection` | :ref:`text_direction` | ``0`` | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`virtual_keyboard_enabled` | ``true`` | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ - | :ref:`VirtualKeyboardType` | :ref:`virtual_keyboard_type` | ``0`` | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ + +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ + | :ref:`HorizontalAlignment` | :ref:`alignment` | ``0`` | + +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`backspace_deletes_composite_character_enabled` | ``false`` | + +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`caret_blink` | ``false`` | + +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`caret_blink_interval` | ``0.65`` | + +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`caret_column` | ``0`` | + +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`caret_force_displayed` | ``false`` | + +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`caret_mid_grapheme` | ``false`` | + +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`clear_button_enabled` | ``false`` | + +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`context_menu_enabled` | ``true`` | + +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`deselect_on_focus_loss_enabled` | ``true`` | + +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`drag_and_drop_selection_enabled` | ``true`` | + +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`draw_control_chars` | ``false`` | + +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`editable` | ``true`` | + +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`emoji_menu_enabled` | ``true`` | + +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`expand_to_text_length` | ``false`` | + +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`flat` | ``false`` | + +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ + | :ref:`FocusMode` | focus_mode | ``2`` (overrides :ref:`Control`) | + +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`keep_editing_on_text_submit` | ``false`` | + +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`language` | ``""`` | + +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`max_length` | ``0`` | + +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`middle_mouse_paste_enabled` | ``true`` | + +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ + | :ref:`CursorShape` | mouse_default_cursor_shape | ``1`` (overrides :ref:`Control`) | + +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`placeholder_text` | ``""`` | + +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ + | :ref:`Texture2D` | :ref:`right_icon` | | + +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`secret` | ``false`` | + +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`secret_character` | ``"•"`` | + +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`select_all_on_focus` | ``false`` | + +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`selecting_enabled` | ``true`` | + +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`shortcut_keys_enabled` | ``true`` | + +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ + | :ref:`StructuredTextParser` | :ref:`structured_text_bidi_override` | ``0`` | + +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ + | :ref:`Array` | :ref:`structured_text_bidi_override_options` | ``[]`` | + +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`text` | ``""`` | + +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ + | :ref:`TextDirection` | :ref:`text_direction` | ``0`` | + +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`virtual_keyboard_enabled` | ``true`` | + +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`virtual_keyboard_show_on_focus` | ``true`` | + +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ + | :ref:`VirtualKeyboardType` | :ref:`virtual_keyboard_type` | ``0`` | + +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ .. rst-class:: classref-reftable-group @@ -168,53 +180,57 @@ Methods .. table:: :widths: auto - +-----------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`apply_ime`\ (\ ) | - +-----------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`cancel_ime`\ (\ ) | - +-----------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`clear`\ (\ ) | - +-----------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`delete_char_at_caret`\ (\ ) | - +-----------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`delete_text`\ (\ from_column\: :ref:`int`, to_column\: :ref:`int`\ ) | - +-----------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`deselect`\ (\ ) | - +-----------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`edit`\ (\ ) | - +-----------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`PopupMenu` | :ref:`get_menu`\ (\ ) |const| | - +-----------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`float` | :ref:`get_scroll_offset`\ (\ ) |const| | - +-----------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`String` | :ref:`get_selected_text`\ (\ ) | - +-----------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`get_selection_from_column`\ (\ ) |const| | - +-----------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`get_selection_to_column`\ (\ ) |const| | - +-----------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`has_ime_text`\ (\ ) |const| | - +-----------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`has_redo`\ (\ ) |const| | - +-----------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`has_selection`\ (\ ) |const| | - +-----------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`has_undo`\ (\ ) |const| | - +-----------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`insert_text_at_caret`\ (\ text\: :ref:`String`\ ) | - +-----------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`is_editing`\ (\ ) |const| | - +-----------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`is_menu_visible`\ (\ ) |const| | - +-----------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`menu_option`\ (\ option\: :ref:`int`\ ) | - +-----------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`select`\ (\ from\: :ref:`int` = 0, to\: :ref:`int` = -1\ ) | - +-----------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`select_all`\ (\ ) | - +-----------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`unedit`\ (\ ) | - +-----------------------------------+-------------------------------------------------------------------------------------------------------------------------------------+ + +-----------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`apply_ime`\ (\ ) | + +-----------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`cancel_ime`\ (\ ) | + +-----------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`clear`\ (\ ) | + +-----------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`delete_char_at_caret`\ (\ ) | + +-----------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`delete_text`\ (\ from_column\: :ref:`int`, to_column\: :ref:`int`\ ) | + +-----------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`deselect`\ (\ ) | + +-----------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`edit`\ (\ ) | + +-----------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`PopupMenu` | :ref:`get_menu`\ (\ ) |const| | + +-----------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`get_next_composite_character_column`\ (\ column\: :ref:`int`\ ) |const| | + +-----------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`get_previous_composite_character_column`\ (\ column\: :ref:`int`\ ) |const| | + +-----------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`get_scroll_offset`\ (\ ) |const| | + +-----------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`get_selected_text`\ (\ ) | + +-----------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`get_selection_from_column`\ (\ ) |const| | + +-----------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`get_selection_to_column`\ (\ ) |const| | + +-----------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`has_ime_text`\ (\ ) |const| | + +-----------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`has_redo`\ (\ ) |const| | + +-----------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`has_selection`\ (\ ) |const| | + +-----------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`has_undo`\ (\ ) |const| | + +-----------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`insert_text_at_caret`\ (\ text\: :ref:`String`\ ) | + +-----------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`is_editing`\ (\ ) |const| | + +-----------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`is_menu_visible`\ (\ ) |const| | + +-----------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`menu_option`\ (\ option\: :ref:`int`\ ) | + +-----------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`select`\ (\ from\: :ref:`int` = 0, to\: :ref:`int` = -1\ ) | + +-----------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`select_all`\ (\ ) | + +-----------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`unedit`\ (\ ) | + +-----------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------+ .. rst-class:: classref-reftable-group @@ -690,6 +706,23 @@ Text alignment as defined in the :ref:`HorizontalAlignment` **backspace_deletes_composite_character_enabled** = ``false`` :ref:`🔗` + +.. rst-class:: classref-property-setget + +- |void| **set_backspace_deletes_composite_character_enabled**\ (\ value\: :ref:`bool`\ ) +- :ref:`bool` **is_backspace_deletes_composite_character_enabled**\ (\ ) + +If ``true`` and :ref:`caret_mid_grapheme` is ``false``, backspace deletes an entire composite character such as ❤️‍🩹, instead of deleting part of the composite character. + +.. rst-class:: classref-item-separator + +---- + .. _class_LineEdit_property_caret_blink: .. rst-class:: classref-property @@ -752,7 +785,7 @@ The caret's column position inside the **LineEdit**. When set, the text may scro - |void| **set_caret_force_displayed**\ (\ value\: :ref:`bool`\ ) - :ref:`bool` **is_caret_force_displayed**\ (\ ) -If ``true``, the **LineEdit** will always show the caret, even if focus is lost. +If ``true``, the **LineEdit** will always show the caret, even if not editing or focus is lost. .. rst-class:: classref-item-separator @@ -979,7 +1012,7 @@ Maximum number of characters that can be entered inside the **LineEdit**. If ``0 When a limit is defined, characters that would exceed :ref:`max_length` are truncated. This happens both for existing :ref:`text` contents when setting the max length, or for new text inserted in the **LineEdit**, including pasting. -If any input text is truncated, the :ref:`text_change_rejected` signal is emitted with the truncated substring as parameter: +If any input text is truncated, the :ref:`text_change_rejected` signal is emitted with the truncated substring as a parameter: .. tabs:: @@ -992,7 +1025,7 @@ If any input text is truncated, the :ref:`text_change_rejected`\ ) - :ref:`bool` **is_virtual_keyboard_enabled**\ (\ ) -If ``true``, the native virtual keyboard is shown when focused on platforms that support it. +If ``true``, the native virtual keyboard is enabled on platforms that support it. + +.. rst-class:: classref-item-separator + +---- + +.. _class_LineEdit_property_virtual_keyboard_show_on_focus: + +.. rst-class:: classref-property + +:ref:`bool` **virtual_keyboard_show_on_focus** = ``true`` :ref:`🔗` + +.. rst-class:: classref-property-setget + +- |void| **set_virtual_keyboard_show_on_focus**\ (\ value\: :ref:`bool`\ ) +- :ref:`bool` **get_virtual_keyboard_show_on_focus**\ (\ ) + +If ``true``, the native virtual keyboard is shown on focus events on platforms that support it. .. rst-class:: classref-item-separator @@ -1367,7 +1417,7 @@ You can add custom menu items or remove standard ones. Make sure your IDs don't menu.add_item("Insert Date", MENU_MAX + 1) # Connect callback. menu.id_pressed.connect(_on_item_pressed) - + func _on_item_pressed(id): if id == MENU_MAX + 1: insert_text_at_caret(Time.get_date_string_from_system()) @@ -1385,7 +1435,7 @@ You can add custom menu items or remove standard ones. Make sure your IDs don't // Add event handler. menu.IdPressed += OnItemPressed; } - + public void OnItemPressed(int id) { if (id == LineEdit.MenuItems.Max + 1) @@ -1402,6 +1452,34 @@ You can add custom menu items or remove standard ones. Make sure your IDs don't ---- +.. _class_LineEdit_method_get_next_composite_character_column: + +.. rst-class:: classref-method + +:ref:`int` **get_next_composite_character_column**\ (\ column\: :ref:`int`\ ) |const| :ref:`🔗` + +Returns the correct column at the end of a composite character like ❤️‍🩹 (mending heart; Unicode: ``U+2764 U+FE0F U+200D U+1FA79``) which is comprised of more than one Unicode code point, if the caret is at the start of the composite character. Also returns the correct column with the caret at mid grapheme and for non-composite characters. + +\ **Note:** To check at caret location use ``get_next_composite_character_column(get_caret_column())`` + +.. rst-class:: classref-item-separator + +---- + +.. _class_LineEdit_method_get_previous_composite_character_column: + +.. rst-class:: classref-method + +:ref:`int` **get_previous_composite_character_column**\ (\ column\: :ref:`int`\ ) |const| :ref:`🔗` + +Returns the correct column at the start of a composite character like ❤️‍🩹 (mending heart; Unicode: ``U+2764 U+FE0F U+200D U+1FA79``) which is comprised of more than one Unicode code point, if the caret is at the end of the composite character. Also returns the correct column with the caret at mid grapheme and for non-composite characters. + +\ **Note:** To check at caret location use ``get_previous_composite_character_column(get_caret_column())`` + +.. rst-class:: classref-item-separator + +---- + .. _class_LineEdit_method_get_scroll_offset: .. rst-class:: classref-method @@ -1821,6 +1899,7 @@ Default background for the **LineEdit**. Background used when **LineEdit** is in read-only mode (:ref:`editable` is set to ``false``). .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_linkbutton.rst b/classes/class_linkbutton.rst index 59dfb1e39..c0d65b110 100644 --- a/classes/class_linkbutton.rst +++ b/classes/class_linkbutton.rst @@ -32,7 +32,7 @@ Properties :widths: auto +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ - | :ref:`FocusMode` | focus_mode | ``0`` (overrides :ref:`Control`) | + | :ref:`FocusMode` | focus_mode | ``3`` (overrides :ref:`Control`) | +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ | :ref:`String` | :ref:`language` | ``""`` | +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ @@ -229,7 +229,7 @@ Base text writing direction. - |void| **set_underline_mode**\ (\ value\: :ref:`UnderlineMode`\ ) - :ref:`UnderlineMode` **get_underline_mode**\ (\ ) -The underline mode to use for the text. See :ref:`UnderlineMode` for the available modes. +The underline mode to use for the text. .. rst-class:: classref-item-separator @@ -417,6 +417,7 @@ Font size of the **LinkButton**'s text. :ref:`StyleBox` used when the **LinkButton** is focused. The :ref:`focus` :ref:`StyleBox` is displayed *over* the base :ref:`StyleBox`, so a partially transparent :ref:`StyleBox` should be used to ensure the base :ref:`StyleBox` remains visible. A :ref:`StyleBox` that represents an outline or an underline works well for this purpose. To disable the focus visual effect, assign a :ref:`StyleBoxEmpty` resource. Note that disabling the focus visual effect will harm keyboard/controller navigation usability, so this is not recommended for accessibility reasons. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_logger.rst b/classes/class_logger.rst new file mode 100644 index 000000000..847533667 --- /dev/null +++ b/classes/class_logger.rst @@ -0,0 +1,132 @@ +:github_url: hide + +.. DO NOT EDIT THIS FILE!!! +.. Generated automatically from Godot engine sources. +.. Generator: https://github.com/godotengine/godot/tree/master/doc/tools/make_rst.py. +.. XML source: https://github.com/godotengine/godot/tree/master/doc/classes/Logger.xml. + +.. _class_Logger: + +Logger +====== + +**Inherits:** :ref:`RefCounted` **<** :ref:`Object` + +Custom logger to receive messages from the internal error/warning stream. + +.. rst-class:: classref-introduction-group + +Description +----------- + +Custom logger to receive messages from the internal error/warning stream. Loggers are registered via :ref:`OS.add_logger()`. + +.. rst-class:: classref-reftable-group + +Methods +------- + +.. table:: + :widths: auto + + +--------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_log_error`\ (\ function\: :ref:`String`, file\: :ref:`String`, line\: :ref:`int`, code\: :ref:`String`, rationale\: :ref:`String`, editor_notify\: :ref:`bool`, error_type\: :ref:`int`, script_backtraces\: :ref:`Array`\[:ref:`ScriptBacktrace`\]\ ) |virtual| | + +--------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_log_message`\ (\ message\: :ref:`String`, error\: :ref:`bool`\ ) |virtual| | + +--------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + +.. rst-class:: classref-section-separator + +---- + +.. rst-class:: classref-descriptions-group + +Enumerations +------------ + +.. _enum_Logger_ErrorType: + +.. rst-class:: classref-enumeration + +enum **ErrorType**: :ref:`🔗` + +.. _class_Logger_constant_ERROR_TYPE_ERROR: + +.. rst-class:: classref-enumeration-constant + +:ref:`ErrorType` **ERROR_TYPE_ERROR** = ``0`` + +The message received is an error. + +.. _class_Logger_constant_ERROR_TYPE_WARNING: + +.. rst-class:: classref-enumeration-constant + +:ref:`ErrorType` **ERROR_TYPE_WARNING** = ``1`` + +The message received is a warning. + +.. _class_Logger_constant_ERROR_TYPE_SCRIPT: + +.. rst-class:: classref-enumeration-constant + +:ref:`ErrorType` **ERROR_TYPE_SCRIPT** = ``2`` + +The message received is a script error. + +.. _class_Logger_constant_ERROR_TYPE_SHADER: + +.. rst-class:: classref-enumeration-constant + +:ref:`ErrorType` **ERROR_TYPE_SHADER** = ``3`` + +The message received is a shader error. + +.. rst-class:: classref-section-separator + +---- + +.. rst-class:: classref-descriptions-group + +Method Descriptions +------------------- + +.. _class_Logger_private_method__log_error: + +.. rst-class:: classref-method + +|void| **_log_error**\ (\ function\: :ref:`String`, file\: :ref:`String`, line\: :ref:`int`, code\: :ref:`String`, rationale\: :ref:`String`, editor_notify\: :ref:`bool`, error_type\: :ref:`int`, script_backtraces\: :ref:`Array`\[:ref:`ScriptBacktrace`\]\ ) |virtual| :ref:`🔗` + +Called when an error is logged. The error provides the ``function``, ``file``, and ``line`` that it originated from, as well as either the ``code`` that generated the error or a ``rationale``. + +The type of error provided by ``error_type`` is described in the :ref:`ErrorType` enumeration. + +Additionally, ``script_backtraces`` provides backtraces for each of the script languages. These will only contain stack frames in editor builds and debug builds by default. To enable them for release builds as well, you need to enable :ref:`ProjectSettings.debug/settings/gdscript/always_track_call_stacks`. + +\ **Warning:** This function may be called from multiple different threads, so you may need to do your own locking. + +\ **Note:** ``script_backtraces`` will not contain any captured variables, due to its prohibitively high cost. To get those you will need to capture the backtraces yourself, from within the **Logger** virtual methods, using :ref:`Engine.capture_script_backtraces()`. + +.. rst-class:: classref-item-separator + +---- + +.. _class_Logger_private_method__log_message: + +.. rst-class:: classref-method + +|void| **_log_message**\ (\ message\: :ref:`String`, error\: :ref:`bool`\ ) |virtual| :ref:`🔗` + +Called when a message is logged. If ``error`` is ``true``, then this message was meant to be sent to ``stderr``. + +\ **Warning:** This function may be called from multiple different threads, so you may need to do your own locking. + +.. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` +.. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` +.. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` +.. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` +.. |static| replace:: :abbr:`static (This method doesn't need an instance to be called, so it can be called directly using the class name.)` +.. |operator| replace:: :abbr:`operator (This method describes a valid operator to use with this type as left-hand operand.)` +.. |bitfield| replace:: :abbr:`BitField (This value is an integer composed as a bitmask of the following flags.)` +.. |void| replace:: :abbr:`void (No return value.)` diff --git a/classes/class_lookatmodifier3d.rst b/classes/class_lookatmodifier3d.rst index a810d677e..b36c347bc 100644 --- a/classes/class_lookatmodifier3d.rst +++ b/classes/class_lookatmodifier3d.rst @@ -641,11 +641,11 @@ The transition type of the time-based interpolation. See also :ref:`TransitionTy - |void| **set_use_angle_limitation**\ (\ value\: :ref:`bool`\ ) - :ref:`bool` **is_using_angle_limitation**\ (\ ) -If ``true``, limits the degree of rotation. This helps prevent the character's neck from rotating 360 degrees. +If ``true``, limits the amount of rotation. For example, this helps to prevent a character's neck from rotating 360 degrees. \ **Note:** As with :ref:`AnimationTree` blending, interpolation is provided that favors :ref:`Skeleton3D.get_bone_rest()`. This means that interpolation does not select the shortest path in some cases. -\ **Note:** Some :ref:`transition_type` may exceed the limitations (e.g. `Back`, `Elastic`, and `Spring`). If interpolation occurs while overshooting the limitations, the result might possibly not respect the bone rest. +\ **Note:** Some values for :ref:`transition_type` (such as :ref:`Tween.TRANS_BACK`, :ref:`Tween.TRANS_ELASTIC`, and :ref:`Tween.TRANS_SPRING`) may exceed the limitations. If interpolation occurs while overshooting the limitations, the result might not respect the bone rest. .. rst-class:: classref-item-separator @@ -691,7 +691,7 @@ Returns the remaining seconds of the time-based interpolation. :ref:`bool` **is_interpolating**\ (\ ) |const| :ref:`🔗` -Returns whether the time-based interpolation is running or not. If ``true``, it is equivalent to :ref:`get_interpolation_remaining()` being ``0``. +Returns ``true`` if time-based interpolation is running. If ``true``, it is equivalent to :ref:`get_interpolation_remaining()` returning ``0.0``. This is useful to determine whether a **LookAtModifier3D** can be removed safely. @@ -710,6 +710,7 @@ Returns whether the target is within the angle limitations. It is useful for uns \ **Note:** The value is updated after :ref:`SkeletonModifier3D._process_modification()`. To retrieve this value correctly, we recommend using the signal :ref:`SkeletonModifier3D.modification_processed`. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_mainloop.rst b/classes/class_mainloop.rst index 216d39823..b6c450082 100644 --- a/classes/class_mainloop.rst +++ b/classes/class_mainloop.rst @@ -34,18 +34,18 @@ Here is an example script implementing a simple **MainLoop**: class_name CustomMainLoop extends MainLoop - + var time_elapsed = 0 - + func _initialize(): print("Initialized:") print(" Starting time: %s" % str(time_elapsed)) - + func _process(delta): time_elapsed += delta # Return true to end the main loop. return Input.get_mouse_button_mask() != 0 || Input.is_key_pressed(KEY_ESCAPE) - + func _finalize(): print("Finalized:") print(" End time: %s" % str(time_elapsed)) @@ -53,25 +53,25 @@ Here is an example script implementing a simple **MainLoop**: .. code-tab:: csharp using Godot; - + [GlobalClass] public partial class CustomMainLoop : MainLoop { private double _timeElapsed = 0; - + public override void _Initialize() { GD.Print("Initialized:"); GD.Print($" Starting Time: {_timeElapsed}"); } - + public override bool _Process(double delta) { _timeElapsed += delta; // Return true to end the main loop. return Input.GetMouseButtonMask() != 0 || Input.IsKeyPressed(Key.Escape); } - + private void _Finalize() { GD.Print("Finalized:"); @@ -262,11 +262,13 @@ Called once during initialization. :ref:`bool` **_physics_process**\ (\ delta\: :ref:`float`\ ) |virtual| :ref:`🔗` -Called each physics frame with the time since the last physics frame as argument (``delta``, in seconds). Equivalent to :ref:`Node._physics_process()`. +Called each physics tick. ``delta`` is the logical time between physics ticks in seconds and is equal to :ref:`Engine.time_scale` / :ref:`Engine.physics_ticks_per_second`. Equivalent to :ref:`Node._physics_process()`. -If implemented, the method must return a boolean value. ``true`` ends the main loop, while ``false`` lets it proceed to the next frame. +If implemented, the method must return a boolean value. ``true`` ends the main loop, while ``false`` lets it proceed to the next step. -\ **Note:** ``delta`` will be larger than expected if running at a framerate lower than :ref:`Engine.physics_ticks_per_second` / :ref:`Engine.max_physics_steps_per_frame` FPS. This is done to avoid "spiral of death" scenarios where performance would plummet due to an ever-increasing number of physics steps per frame. This behavior affects both :ref:`_process()` and :ref:`_physics_process()`. As a result, avoid using ``delta`` for time measurements in real-world seconds. Use the :ref:`Time` singleton's methods for this purpose instead, such as :ref:`Time.get_ticks_usec()`. +\ **Note:** :ref:`_physics_process()` may be called up to :ref:`Engine.max_physics_steps_per_frame` times per (idle) frame. This step limit may be reached when the engine is suffering performance issues. + +\ **Note:** Accumulated ``delta`` may diverge from real world seconds. .. rst-class:: classref-item-separator @@ -278,13 +280,18 @@ If implemented, the method must return a boolean value. ``true`` ends the main l :ref:`bool` **_process**\ (\ delta\: :ref:`float`\ ) |virtual| :ref:`🔗` -Called each process (idle) frame with the time since the last process frame as argument (in seconds). Equivalent to :ref:`Node._process()`. +Called on each idle frame, prior to rendering, and after physics ticks have been processed. ``delta`` is the time between frames in seconds. Equivalent to :ref:`Node._process()`. If implemented, the method must return a boolean value. ``true`` ends the main loop, while ``false`` lets it proceed to the next frame. -\ **Note:** ``delta`` will be larger than expected if running at a framerate lower than :ref:`Engine.physics_ticks_per_second` / :ref:`Engine.max_physics_steps_per_frame` FPS. This is done to avoid "spiral of death" scenarios where performance would plummet due to an ever-increasing number of physics steps per frame. This behavior affects both :ref:`_process()` and :ref:`_physics_process()`. As a result, avoid using ``delta`` for time measurements in real-world seconds. Use the :ref:`Time` singleton's methods for this purpose instead, such as :ref:`Time.get_ticks_usec()`. +\ **Note:** When the engine is struggling and the frame rate is lowered, ``delta`` will increase. When ``delta`` is increased, it's capped at a maximum of :ref:`Engine.time_scale` \* :ref:`Engine.max_physics_steps_per_frame` / :ref:`Engine.physics_ticks_per_second`. As a result, accumulated ``delta`` may not represent real world time. + +\ **Note:** When ``--fixed-fps`` is enabled or the engine is running in Movie Maker mode (see :ref:`MovieWriter`), process ``delta`` will always be the same for every frame, regardless of how much time the frame took to render. + +\ **Note:** Frame delta may be post-processed by :ref:`OS.delta_smoothing` if this is enabled for the project. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_margincontainer.rst b/classes/class_margincontainer.rst index c3a1faaa1..694fb69ec 100644 --- a/classes/class_margincontainer.rst +++ b/classes/class_margincontainer.rst @@ -128,6 +128,7 @@ Offsets towards the inside direct children of the container by this amount of pi Offsets towards the inside direct children of the container by this amount of pixels from the top. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_marker2d.rst b/classes/class_marker2d.rst index 2f3bb6d1a..8259b8c22 100644 --- a/classes/class_marker2d.rst +++ b/classes/class_marker2d.rst @@ -56,6 +56,7 @@ Property Descriptions Size of the gizmo cross that appears in the editor. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_marker3d.rst b/classes/class_marker3d.rst index da67a1282..f275164da 100644 --- a/classes/class_marker3d.rst +++ b/classes/class_marker3d.rst @@ -56,6 +56,7 @@ Property Descriptions Size of the gizmo cross that appears in the editor. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_marshalls.rst b/classes/class_marshalls.rst index c8834d50c..1c93d7d27 100644 --- a/classes/class_marshalls.rst +++ b/classes/class_marshalls.rst @@ -127,6 +127,7 @@ Returns a Base64-encoded string of the :ref:`Variant` ``variant`` Internally, this uses the same encoding mechanism as the :ref:`@GlobalScope.var_to_bytes()` method. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_material.rst b/classes/class_material.rst index ce05d1ad9..e0eca96f4 100644 --- a/classes/class_material.rst +++ b/classes/class_material.rst @@ -61,9 +61,9 @@ Methods +---------------------------------+-----------------------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`_can_use_render_priority`\ (\ ) |virtual| |const| | +---------------------------------+-----------------------------------------------------------------------------------------------------------------+ - | :ref:`Mode` | :ref:`_get_shader_mode`\ (\ ) |virtual| |const| | + | :ref:`Mode` | :ref:`_get_shader_mode`\ (\ ) |virtual| |required| |const| | +---------------------------------+-----------------------------------------------------------------------------------------------------------------+ - | :ref:`RID` | :ref:`_get_shader_rid`\ (\ ) |virtual| |const| | + | :ref:`RID` | :ref:`_get_shader_rid`\ (\ ) |virtual| |required| |const| | +---------------------------------+-----------------------------------------------------------------------------------------------------------------+ | :ref:`Resource` | :ref:`create_placeholder`\ (\ ) |const| | +---------------------------------+-----------------------------------------------------------------------------------------------------------------+ @@ -136,7 +136,7 @@ Sets the **Material** to be used for the next pass. This renders the object agai - |void| **set_render_priority**\ (\ value\: :ref:`int`\ ) - :ref:`int` **get_render_priority**\ (\ ) -Sets the render priority for objects in 3D scenes. Higher priority objects will be sorted in front of lower priority objects. In other words, all objects with :ref:`render_priority` ``1`` will render before all objects with :ref:`render_priority` ``0``. +Sets the render priority for objects in 3D scenes. Higher priority objects will be sorted in front of lower priority objects. In other words, all objects with :ref:`render_priority` ``1`` will render on top of all objects with :ref:`render_priority` ``0``. \ **Note:** This only applies to :ref:`StandardMaterial3D`\ s and :ref:`ShaderMaterial`\ s with type "Spatial". @@ -179,7 +179,7 @@ Only exposed for the purpose of overriding. You cannot call this function direct .. rst-class:: classref-method -:ref:`Mode` **_get_shader_mode**\ (\ ) |virtual| |const| :ref:`🔗` +:ref:`Mode` **_get_shader_mode**\ (\ ) |virtual| |required| |const| :ref:`🔗` Only exposed for the purpose of overriding. You cannot call this function directly. Used internally by various editor tools. @@ -191,7 +191,7 @@ Only exposed for the purpose of overriding. You cannot call this function direct .. rst-class:: classref-method -:ref:`RID` **_get_shader_rid**\ (\ ) |virtual| |const| :ref:`🔗` +:ref:`RID` **_get_shader_rid**\ (\ ) |virtual| |required| |const| :ref:`🔗` Only exposed for the purpose of overriding. You cannot call this function directly. Used internally by various editor tools. Used to access the RID of the **Material**'s :ref:`Shader`. @@ -220,6 +220,7 @@ Creates a placeholder version of this resource (:ref:`PlaceholderMaterial`. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_menubar.rst b/classes/class_menubar.rst index 3d8a70850..9eb17ad2d 100644 --- a/classes/class_menubar.rst +++ b/classes/class_menubar.rst @@ -29,19 +29,21 @@ Properties .. table:: :widths: auto - +--------------------------------------------------+----------------------------------------------------------------------+-----------+ - | :ref:`bool` | :ref:`flat` | ``false`` | - +--------------------------------------------------+----------------------------------------------------------------------+-----------+ - | :ref:`String` | :ref:`language` | ``""`` | - +--------------------------------------------------+----------------------------------------------------------------------+-----------+ - | :ref:`bool` | :ref:`prefer_global_menu` | ``true`` | - +--------------------------------------------------+----------------------------------------------------------------------+-----------+ - | :ref:`int` | :ref:`start_index` | ``-1`` | - +--------------------------------------------------+----------------------------------------------------------------------+-----------+ - | :ref:`bool` | :ref:`switch_on_hover` | ``true`` | - +--------------------------------------------------+----------------------------------------------------------------------+-----------+ - | :ref:`TextDirection` | :ref:`text_direction` | ``0`` | - +--------------------------------------------------+----------------------------------------------------------------------+-----------+ + +--------------------------------------------------+----------------------------------------------------------------------+---------------------------------------------------------------------+ + | :ref:`bool` | :ref:`flat` | ``false`` | + +--------------------------------------------------+----------------------------------------------------------------------+---------------------------------------------------------------------+ + | :ref:`FocusMode` | focus_mode | ``3`` (overrides :ref:`Control`) | + +--------------------------------------------------+----------------------------------------------------------------------+---------------------------------------------------------------------+ + | :ref:`String` | :ref:`language` | ``""`` | + +--------------------------------------------------+----------------------------------------------------------------------+---------------------------------------------------------------------+ + | :ref:`bool` | :ref:`prefer_global_menu` | ``true`` | + +--------------------------------------------------+----------------------------------------------------------------------+---------------------------------------------------------------------+ + | :ref:`int` | :ref:`start_index` | ``-1`` | + +--------------------------------------------------+----------------------------------------------------------------------+---------------------------------------------------------------------+ + | :ref:`bool` | :ref:`switch_on_hover` | ``true`` | + +--------------------------------------------------+----------------------------------------------------------------------+---------------------------------------------------------------------+ + | :ref:`TextDirection` | :ref:`text_direction` | ``0`` | + +--------------------------------------------------+----------------------------------------------------------------------+---------------------------------------------------------------------+ .. rst-class:: classref-reftable-group @@ -649,6 +651,7 @@ Default :ref:`StyleBox` for the menu item (for right-to-left lay :ref:`StyleBox` used when the menu item is being pressed (for right-to-left layouts). .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_menubutton.rst b/classes/class_menubutton.rst index c46ad6361..79ffe2d51 100644 --- a/classes/class_menubutton.rst +++ b/classes/class_menubutton.rst @@ -1,5 +1,8 @@ :github_url: hide +.. meta:: + :keywords: dropdown + .. DO NOT EDIT THIS FILE!!! .. Generated automatically from Godot engine sources. .. Generator: https://github.com/godotengine/godot/tree/master/doc/tools/make_rst.py. @@ -36,7 +39,7 @@ Properties +-----------------------------------------------+-------------------------------------------------------------------+-------------------------------------------------------------------------------+ | :ref:`bool` | flat | ``true`` (overrides :ref:`Button`) | +-----------------------------------------------+-------------------------------------------------------------------+-------------------------------------------------------------------------------+ - | :ref:`FocusMode` | focus_mode | ``0`` (overrides :ref:`Control`) | + | :ref:`FocusMode` | focus_mode | ``3`` (overrides :ref:`Control`) | +-----------------------------------------------+-------------------------------------------------------------------+-------------------------------------------------------------------------------+ | :ref:`int` | :ref:`item_count` | ``0`` | +-----------------------------------------------+-------------------------------------------------------------------+-------------------------------------------------------------------------------+ @@ -161,6 +164,7 @@ If ``true``, shortcuts are disabled and cannot be used to trigger the button. Adjusts popup position and sizing for the **MenuButton**, then shows the :ref:`PopupMenu`. Prefer this over using ``get_popup().popup()``. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_mesh.rst b/classes/class_mesh.rst index bfe43ae2a..2922201d8 100644 --- a/classes/class_mesh.rst +++ b/classes/class_mesh.rst @@ -56,59 +56,59 @@ Methods .. table:: :widths: auto - +-----------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`AABB` | :ref:`_get_aabb`\ (\ ) |virtual| |const| | - +-----------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`_get_blend_shape_count`\ (\ ) |virtual| |const| | - +-----------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`StringName` | :ref:`_get_blend_shape_name`\ (\ index\: :ref:`int`\ ) |virtual| |const| | - +-----------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`_get_surface_count`\ (\ ) |virtual| |const| | - +-----------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_set_blend_shape_name`\ (\ index\: :ref:`int`, name\: :ref:`StringName`\ ) |virtual| | - +-----------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`_surface_get_array_index_len`\ (\ index\: :ref:`int`\ ) |virtual| |const| | - +-----------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`_surface_get_array_len`\ (\ index\: :ref:`int`\ ) |virtual| |const| | - +-----------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Array` | :ref:`_surface_get_arrays`\ (\ index\: :ref:`int`\ ) |virtual| |const| | - +-----------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Array`\[:ref:`Array`\] | :ref:`_surface_get_blend_shape_arrays`\ (\ index\: :ref:`int`\ ) |virtual| |const| | - +-----------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`_surface_get_format`\ (\ index\: :ref:`int`\ ) |virtual| |const| | - +-----------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Dictionary` | :ref:`_surface_get_lods`\ (\ index\: :ref:`int`\ ) |virtual| |const| | - +-----------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Material` | :ref:`_surface_get_material`\ (\ index\: :ref:`int`\ ) |virtual| |const| | - +-----------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`_surface_get_primitive_type`\ (\ index\: :ref:`int`\ ) |virtual| |const| | - +-----------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_surface_set_material`\ (\ index\: :ref:`int`, material\: :ref:`Material`\ ) |virtual| | - +-----------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`ConvexPolygonShape3D` | :ref:`create_convex_shape`\ (\ clean\: :ref:`bool` = true, simplify\: :ref:`bool` = false\ ) |const| | - +-----------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Mesh` | :ref:`create_outline`\ (\ margin\: :ref:`float`\ ) |const| | - +-----------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Resource` | :ref:`create_placeholder`\ (\ ) |const| | - +-----------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`ConcavePolygonShape3D` | :ref:`create_trimesh_shape`\ (\ ) |const| | - +-----------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`TriangleMesh` | :ref:`generate_triangle_mesh`\ (\ ) |const| | - +-----------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`AABB` | :ref:`get_aabb`\ (\ ) |const| | - +-----------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`PackedVector3Array` | :ref:`get_faces`\ (\ ) |const| | - +-----------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`get_surface_count`\ (\ ) |const| | - +-----------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Array` | :ref:`surface_get_arrays`\ (\ surf_idx\: :ref:`int`\ ) |const| | - +-----------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Array`\[:ref:`Array`\] | :ref:`surface_get_blend_shape_arrays`\ (\ surf_idx\: :ref:`int`\ ) |const| | - +-----------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Material` | :ref:`surface_get_material`\ (\ surf_idx\: :ref:`int`\ ) |const| | - +-----------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`surface_set_material`\ (\ surf_idx\: :ref:`int`, material\: :ref:`Material`\ ) | - +-----------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + +-----------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`AABB` | :ref:`_get_aabb`\ (\ ) |virtual| |required| |const| | + +-----------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`_get_blend_shape_count`\ (\ ) |virtual| |required| |const| | + +-----------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`StringName` | :ref:`_get_blend_shape_name`\ (\ index\: :ref:`int`\ ) |virtual| |required| |const| | + +-----------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`_get_surface_count`\ (\ ) |virtual| |required| |const| | + +-----------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_set_blend_shape_name`\ (\ index\: :ref:`int`, name\: :ref:`StringName`\ ) |virtual| |required| | + +-----------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`_surface_get_array_index_len`\ (\ index\: :ref:`int`\ ) |virtual| |required| |const| | + +-----------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`_surface_get_array_len`\ (\ index\: :ref:`int`\ ) |virtual| |required| |const| | + +-----------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Array` | :ref:`_surface_get_arrays`\ (\ index\: :ref:`int`\ ) |virtual| |required| |const| | + +-----------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Array`\[:ref:`Array`\] | :ref:`_surface_get_blend_shape_arrays`\ (\ index\: :ref:`int`\ ) |virtual| |required| |const| | + +-----------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`_surface_get_format`\ (\ index\: :ref:`int`\ ) |virtual| |required| |const| | + +-----------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Dictionary` | :ref:`_surface_get_lods`\ (\ index\: :ref:`int`\ ) |virtual| |required| |const| | + +-----------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Material` | :ref:`_surface_get_material`\ (\ index\: :ref:`int`\ ) |virtual| |required| |const| | + +-----------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`_surface_get_primitive_type`\ (\ index\: :ref:`int`\ ) |virtual| |required| |const| | + +-----------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_surface_set_material`\ (\ index\: :ref:`int`, material\: :ref:`Material`\ ) |virtual| |required| | + +-----------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`ConvexPolygonShape3D` | :ref:`create_convex_shape`\ (\ clean\: :ref:`bool` = true, simplify\: :ref:`bool` = false\ ) |const| | + +-----------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Mesh` | :ref:`create_outline`\ (\ margin\: :ref:`float`\ ) |const| | + +-----------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Resource` | :ref:`create_placeholder`\ (\ ) |const| | + +-----------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`ConcavePolygonShape3D` | :ref:`create_trimesh_shape`\ (\ ) |const| | + +-----------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`TriangleMesh` | :ref:`generate_triangle_mesh`\ (\ ) |const| | + +-----------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`AABB` | :ref:`get_aabb`\ (\ ) |const| | + +-----------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`PackedVector3Array` | :ref:`get_faces`\ (\ ) |const| | + +-----------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`get_surface_count`\ (\ ) |const| | + +-----------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Array` | :ref:`surface_get_arrays`\ (\ surf_idx\: :ref:`int`\ ) |const| | + +-----------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Array`\[:ref:`Array`\] | :ref:`surface_get_blend_shape_arrays`\ (\ surf_idx\: :ref:`int`\ ) |const| | + +-----------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Material` | :ref:`surface_get_material`\ (\ surf_idx\: :ref:`int`\ ) |const| | + +-----------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`surface_set_material`\ (\ surf_idx\: :ref:`int`, material\: :ref:`Material`\ ) | + +-----------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ .. rst-class:: classref-section-separator @@ -573,7 +573,7 @@ Flag used to mark that the array contains 2D vertices. :ref:`ArrayFormat` **ARRAY_FLAG_USE_DYNAMIC_UPDATE** = ``67108864`` -Flag indices that the mesh data will use ``GL_DYNAMIC_DRAW`` on GLES. Unused on Vulkan. +Flag used to mark that the mesh data will use ``GL_DYNAMIC_DRAW`` on GLES. Unused on Vulkan. .. _class_Mesh_constant_ARRAY_FLAG_USE_8_BONE_WEIGHTS: @@ -660,7 +660,7 @@ Method Descriptions .. rst-class:: classref-method -:ref:`AABB` **_get_aabb**\ (\ ) |virtual| |const| :ref:`🔗` +:ref:`AABB` **_get_aabb**\ (\ ) |virtual| |required| |const| :ref:`🔗` Virtual method to override the :ref:`AABB` for a custom class extending **Mesh**. @@ -672,7 +672,7 @@ Virtual method to override the :ref:`AABB` for a custom class extend .. rst-class:: classref-method -:ref:`int` **_get_blend_shape_count**\ (\ ) |virtual| |const| :ref:`🔗` +:ref:`int` **_get_blend_shape_count**\ (\ ) |virtual| |required| |const| :ref:`🔗` Virtual method to override the number of blend shapes for a custom class extending **Mesh**. @@ -684,7 +684,7 @@ Virtual method to override the number of blend shapes for a custom class extendi .. rst-class:: classref-method -:ref:`StringName` **_get_blend_shape_name**\ (\ index\: :ref:`int`\ ) |virtual| |const| :ref:`🔗` +:ref:`StringName` **_get_blend_shape_name**\ (\ index\: :ref:`int`\ ) |virtual| |required| |const| :ref:`🔗` Virtual method to override the retrieval of blend shape names for a custom class extending **Mesh**. @@ -696,7 +696,7 @@ Virtual method to override the retrieval of blend shape names for a custom class .. rst-class:: classref-method -:ref:`int` **_get_surface_count**\ (\ ) |virtual| |const| :ref:`🔗` +:ref:`int` **_get_surface_count**\ (\ ) |virtual| |required| |const| :ref:`🔗` Virtual method to override the surface count for a custom class extending **Mesh**. @@ -708,7 +708,7 @@ Virtual method to override the surface count for a custom class extending **Mesh .. rst-class:: classref-method -|void| **_set_blend_shape_name**\ (\ index\: :ref:`int`, name\: :ref:`StringName`\ ) |virtual| :ref:`🔗` +|void| **_set_blend_shape_name**\ (\ index\: :ref:`int`, name\: :ref:`StringName`\ ) |virtual| |required| :ref:`🔗` Virtual method to override the names of blend shapes for a custom class extending **Mesh**. @@ -720,7 +720,7 @@ Virtual method to override the names of blend shapes for a custom class extendin .. rst-class:: classref-method -:ref:`int` **_surface_get_array_index_len**\ (\ index\: :ref:`int`\ ) |virtual| |const| :ref:`🔗` +:ref:`int` **_surface_get_array_index_len**\ (\ index\: :ref:`int`\ ) |virtual| |required| |const| :ref:`🔗` Virtual method to override the surface array index length for a custom class extending **Mesh**. @@ -732,7 +732,7 @@ Virtual method to override the surface array index length for a custom class ext .. rst-class:: classref-method -:ref:`int` **_surface_get_array_len**\ (\ index\: :ref:`int`\ ) |virtual| |const| :ref:`🔗` +:ref:`int` **_surface_get_array_len**\ (\ index\: :ref:`int`\ ) |virtual| |required| |const| :ref:`🔗` Virtual method to override the surface array length for a custom class extending **Mesh**. @@ -744,7 +744,7 @@ Virtual method to override the surface array length for a custom class extending .. rst-class:: classref-method -:ref:`Array` **_surface_get_arrays**\ (\ index\: :ref:`int`\ ) |virtual| |const| :ref:`🔗` +:ref:`Array` **_surface_get_arrays**\ (\ index\: :ref:`int`\ ) |virtual| |required| |const| :ref:`🔗` Virtual method to override the surface arrays for a custom class extending **Mesh**. @@ -756,7 +756,7 @@ Virtual method to override the surface arrays for a custom class extending **Mes .. rst-class:: classref-method -:ref:`Array`\[:ref:`Array`\] **_surface_get_blend_shape_arrays**\ (\ index\: :ref:`int`\ ) |virtual| |const| :ref:`🔗` +:ref:`Array`\[:ref:`Array`\] **_surface_get_blend_shape_arrays**\ (\ index\: :ref:`int`\ ) |virtual| |required| |const| :ref:`🔗` Virtual method to override the blend shape arrays for a custom class extending **Mesh**. @@ -768,7 +768,7 @@ Virtual method to override the blend shape arrays for a custom class extending * .. rst-class:: classref-method -:ref:`int` **_surface_get_format**\ (\ index\: :ref:`int`\ ) |virtual| |const| :ref:`🔗` +:ref:`int` **_surface_get_format**\ (\ index\: :ref:`int`\ ) |virtual| |required| |const| :ref:`🔗` Virtual method to override the surface format for a custom class extending **Mesh**. @@ -780,7 +780,7 @@ Virtual method to override the surface format for a custom class extending **Mes .. rst-class:: classref-method -:ref:`Dictionary` **_surface_get_lods**\ (\ index\: :ref:`int`\ ) |virtual| |const| :ref:`🔗` +:ref:`Dictionary` **_surface_get_lods**\ (\ index\: :ref:`int`\ ) |virtual| |required| |const| :ref:`🔗` Virtual method to override the surface LODs for a custom class extending **Mesh**. @@ -792,7 +792,7 @@ Virtual method to override the surface LODs for a custom class extending **Mesh* .. rst-class:: classref-method -:ref:`Material` **_surface_get_material**\ (\ index\: :ref:`int`\ ) |virtual| |const| :ref:`🔗` +:ref:`Material` **_surface_get_material**\ (\ index\: :ref:`int`\ ) |virtual| |required| |const| :ref:`🔗` Virtual method to override the surface material for a custom class extending **Mesh**. @@ -804,7 +804,7 @@ Virtual method to override the surface material for a custom class extending **M .. rst-class:: classref-method -:ref:`int` **_surface_get_primitive_type**\ (\ index\: :ref:`int`\ ) |virtual| |const| :ref:`🔗` +:ref:`int` **_surface_get_primitive_type**\ (\ index\: :ref:`int`\ ) |virtual| |required| |const| :ref:`🔗` Virtual method to override the surface primitive type for a custom class extending **Mesh**. @@ -816,7 +816,7 @@ Virtual method to override the surface primitive type for a custom class extendi .. rst-class:: classref-method -|void| **_surface_set_material**\ (\ index\: :ref:`int`, material\: :ref:`Material`\ ) |virtual| :ref:`🔗` +|void| **_surface_set_material**\ (\ index\: :ref:`int`, material\: :ref:`Material`\ ) |virtual| |required| :ref:`🔗` Virtual method to override the setting of a ``material`` at the given ``index`` for a custom class extending **Mesh**. @@ -977,6 +977,7 @@ Sets a :ref:`Material` for a given surface. Surface will be rend \ **Note:** This assigns the material within the **Mesh** resource, not the :ref:`Material` associated to the :ref:`MeshInstance3D`'s Surface Material Override properties. To set the :ref:`Material` associated to the :ref:`MeshInstance3D`'s Surface Material Override properties, use :ref:`MeshInstance3D.set_surface_override_material()` instead. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_meshconvexdecompositionsettings.rst b/classes/class_meshconvexdecompositionsettings.rst index bb9066173..9949fd7dc 100644 --- a/classes/class_meshconvexdecompositionsettings.rst +++ b/classes/class_meshconvexdecompositionsettings.rst @@ -315,6 +315,7 @@ Controls the bias toward clipping along revolution axes. Ranges from ``0.0`` to Controls the bias toward clipping along symmetry planes. Ranges from ``0.0`` to ``1.0``. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_meshdatatool.rst b/classes/class_meshdatatool.rst index 5662676d2..fe63a21e2 100644 --- a/classes/class_meshdatatool.rst +++ b/classes/class_meshdatatool.rst @@ -254,9 +254,9 @@ Returns meta information assigned to given edge. :ref:`int` **get_edge_vertex**\ (\ idx\: :ref:`int`, vertex\: :ref:`int`\ ) |const| :ref:`🔗` -Returns index of specified vertex connected to given edge. +Returns the index of the specified ``vertex`` connected to the edge at index ``idx``. -Vertex argument can only be 0 or 1 because edges are comprised of two vertices. +\ ``vertex`` can only be ``0`` or ``1``, as edges are composed of two vertices. .. rst-class:: classref-item-separator @@ -280,9 +280,9 @@ Returns the number of faces in this :ref:`Mesh`. :ref:`int` **get_face_edge**\ (\ idx\: :ref:`int`, edge\: :ref:`int`\ ) |const| :ref:`🔗` -Returns specified edge associated with given face. +Returns the edge associated with the face at index ``idx``. -Edge argument must be either 0, 1, or 2 because a face only has three edges. +\ ``edge`` argument must be either ``0``, ``1``, or ``2`` because a face only has three edges. .. rst-class:: classref-item-separator @@ -652,6 +652,7 @@ Sets the UV2 of the given vertex. Sets the bone weights of the given vertex. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_meshinstance2d.rst b/classes/class_meshinstance2d.rst index f68702391..535db0f85 100644 --- a/classes/class_meshinstance2d.rst +++ b/classes/class_meshinstance2d.rst @@ -99,6 +99,7 @@ The :ref:`Mesh` that will be drawn by the **MeshInstance2D**. The :ref:`Texture2D` that will be used if using the default :ref:`CanvasItemMaterial`. Can be accessed as ``TEXTURE`` in CanvasItem shader. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_meshinstance3d.rst b/classes/class_meshinstance3d.rst index c0058626e..17c255753 100644 --- a/classes/class_meshinstance3d.rst +++ b/classes/class_meshinstance3d.rst @@ -21,7 +21,7 @@ Node that instances meshes into a scenario. Description ----------- -MeshInstance3D is a node that takes a :ref:`Mesh` resource and adds it to the current scenario by creating an instance of it. This is the class most often used render 3D geometry and can be used to instance a single :ref:`Mesh` in many places. This allows reusing geometry, which can save on resources. When a :ref:`Mesh` has to be instantiated more than thousands of times at close proximity, consider using a :ref:`MultiMesh` in a :ref:`MultiMeshInstance3D` instead. +MeshInstance3D is a node that takes a :ref:`Mesh` resource and adds it to the current scenario by creating an instance of it. This is the class most often used to render 3D geometry and can be used to instance a single :ref:`Mesh` in many places. This allows reusing geometry, which can save on resources. When a :ref:`Mesh` has to be instantiated more than thousands of times at close proximity, consider using a :ref:`MultiMesh` in a :ref:`MultiMeshInstance3D` instead. .. rst-class:: classref-introduction-group @@ -348,6 +348,7 @@ Sets the override ``material`` for the specified ``surface`` of the :ref:`Mesh` associated to the **MeshInstance3D**'s Surface Material Override properties, not the material within the :ref:`Mesh` resource. To set the material within the :ref:`Mesh` resource, use :ref:`Mesh.surface_set_material()` instead. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_meshlibrary.rst b/classes/class_meshlibrary.rst index b4b27b69f..51ea94ce2 100644 --- a/classes/class_meshlibrary.rst +++ b/classes/class_meshlibrary.rst @@ -165,7 +165,7 @@ Returns the item's mesh. :ref:`ShadowCastingSetting` **get_item_mesh_cast_shadow**\ (\ id\: :ref:`int`\ ) |const| :ref:`🔗` -Returns the item's shadow casting mode. See :ref:`ShadowCastingSetting` for possible values. +Returns the item's shadow casting mode. .. rst-class:: classref-item-separator @@ -299,7 +299,7 @@ Sets the item's mesh. |void| **set_item_mesh_cast_shadow**\ (\ id\: :ref:`int`, shadow_casting_setting\: :ref:`ShadowCastingSetting`\ ) :ref:`🔗` -Sets the item's shadow casting mode. See :ref:`ShadowCastingSetting` for possible values. +Sets the item's shadow casting mode to ``shadow_casting_setting``. .. rst-class:: classref-item-separator @@ -390,6 +390,7 @@ Sets an item's collision shapes. The array should consist of :ref:`Shape3D` objects, each followed by a :ref:`Transform3D` that will be applied to it. For shapes that should not have a transform, use :ref:`Transform3D.IDENTITY`. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_meshtexture.rst b/classes/class_meshtexture.rst index 8536ba640..fe662cc59 100644 --- a/classes/class_meshtexture.rst +++ b/classes/class_meshtexture.rst @@ -96,6 +96,7 @@ Sets the size of the image, needed for reference. Sets the mesh used to draw. It must be a mesh using 2D vertices. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_methodtweener.rst b/classes/class_methodtweener.rst index c989041ab..153453635 100644 --- a/classes/class_methodtweener.rst +++ b/classes/class_methodtweener.rst @@ -83,6 +83,7 @@ Sets the type of used easing from :ref:`EaseType`. If not s Sets the type of used transition from :ref:`TransitionType`. If not set, the default transition is used from the :ref:`Tween` that contains this Tweener. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_missingnode.rst b/classes/class_missingnode.rst index e8994206a..f745e6c67 100644 --- a/classes/class_missingnode.rst +++ b/classes/class_missingnode.rst @@ -96,6 +96,7 @@ Returns the path of the scene this node was instance of originally. If ``true``, allows new properties to be set along with existing ones. If ``false``, only existing properties' values can be set, and new properties cannot be added. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_missingresource.rst b/classes/class_missingresource.rst index ee4a81be7..59f048296 100644 --- a/classes/class_missingresource.rst +++ b/classes/class_missingresource.rst @@ -77,6 +77,7 @@ The name of the class this resource was supposed to be (see :ref:`Object.get_cla If set to ``true``, allows new properties to be added on top of the existing ones with :ref:`Object.set()`. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_mobilevrinterface.rst b/classes/class_mobilevrinterface.rst index 4f7cee4d5..59a390126 100644 --- a/classes/class_mobilevrinterface.rst +++ b/classes/class_mobilevrinterface.rst @@ -245,6 +245,7 @@ The strength used to calculate the VRS density map. The greater this value, the \ **Note:** Mobile and Forward+ renderers only. Requires :ref:`Viewport.vrs_mode` to be set to :ref:`Viewport.VRS_XR`. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_modifierbonetarget3d.rst b/classes/class_modifierbonetarget3d.rst new file mode 100644 index 000000000..b58c4f62c --- /dev/null +++ b/classes/class_modifierbonetarget3d.rst @@ -0,0 +1,87 @@ +:github_url: hide + +.. DO NOT EDIT THIS FILE!!! +.. Generated automatically from Godot engine sources. +.. Generator: https://github.com/godotengine/godot/tree/master/doc/tools/make_rst.py. +.. XML source: https://github.com/godotengine/godot/tree/master/doc/classes/ModifierBoneTarget3D.xml. + +.. _class_ModifierBoneTarget3D: + +ModifierBoneTarget3D +==================== + +**Inherits:** :ref:`SkeletonModifier3D` **<** :ref:`Node3D` **<** :ref:`Node` **<** :ref:`Object` + +А node that dynamically copies the 3D transform of a bone in its parent :ref:`Skeleton3D`. + +.. rst-class:: classref-introduction-group + +Description +----------- + +This node selects a bone in a :ref:`Skeleton3D` and attaches to it. This means that the **ModifierBoneTarget3D** node will dynamically copy the 3D transform of the selected bone. + +The functionality is similar to :ref:`BoneAttachment3D`, but this node adopts the :ref:`SkeletonModifier3D` cycle and is intended to be used as another :ref:`SkeletonModifier3D`'s target. + +.. rst-class:: classref-reftable-group + +Properties +---------- + +.. table:: + :widths: auto + + +-----------------------------+-----------------------------------------------------------------+--------+ + | :ref:`int` | :ref:`bone` | ``-1`` | + +-----------------------------+-----------------------------------------------------------------+--------+ + | :ref:`String` | :ref:`bone_name` | ``""`` | + +-----------------------------+-----------------------------------------------------------------+--------+ + +.. rst-class:: classref-section-separator + +---- + +.. rst-class:: classref-descriptions-group + +Property Descriptions +--------------------- + +.. _class_ModifierBoneTarget3D_property_bone: + +.. rst-class:: classref-property + +:ref:`int` **bone** = ``-1`` :ref:`🔗` + +.. rst-class:: classref-property-setget + +- |void| **set_bone**\ (\ value\: :ref:`int`\ ) +- :ref:`int` **get_bone**\ (\ ) + +The index of the attached bone. + +.. rst-class:: classref-item-separator + +---- + +.. _class_ModifierBoneTarget3D_property_bone_name: + +.. rst-class:: classref-property + +:ref:`String` **bone_name** = ``""`` :ref:`🔗` + +.. rst-class:: classref-property-setget + +- |void| **set_bone_name**\ (\ value\: :ref:`String`\ ) +- :ref:`String` **get_bone_name**\ (\ ) + +The name of the attached bone. + +.. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` +.. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` +.. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` +.. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` +.. |static| replace:: :abbr:`static (This method doesn't need an instance to be called, so it can be called directly using the class name.)` +.. |operator| replace:: :abbr:`operator (This method describes a valid operator to use with this type as left-hand operand.)` +.. |bitfield| replace:: :abbr:`BitField (This value is an integer composed as a bitmask of the following flags.)` +.. |void| replace:: :abbr:`void (No return value.)` diff --git a/classes/class_moviewriter.rst b/classes/class_moviewriter.rst index 9bab0f83a..029f4f3b2 100644 --- a/classes/class_moviewriter.rst +++ b/classes/class_moviewriter.rst @@ -21,9 +21,11 @@ Description Godot can record videos with non-real-time simulation. Like the ``--fixed-fps`` :doc:`command line argument <../tutorials/editor/command_line_tutorial>`, this forces the reported ``delta`` in :ref:`Node._process()` functions to be identical across frames, regardless of how long it actually took to render the frame. This can be used to record high-quality videos with perfect frame pacing regardless of your hardware's capabilities. -Godot has 2 built-in **MovieWriter**\ s: +Godot has 3 built-in **MovieWriter**\ s: -- AVI container with MJPEG for video and uncompressed audio (``.avi`` file extension). Lossy compression, medium file sizes, fast encoding. The lossy compression quality can be adjusted by changing :ref:`ProjectSettings.editor/movie_writer/mjpeg_quality`. The resulting file can be viewed in most video players, but it must be converted to another format for viewing on the web or by Godot with :ref:`VideoStreamPlayer`. MJPEG does not support transparency. AVI output is currently limited to a file of 4 GB in size at most. +- OGV container with Theora for video and Vorbis for audio (``.ogv`` file extension). Lossy compression, medium file sizes, fast encoding. The lossy compression quality can be adjusted by changing :ref:`ProjectSettings.editor/movie_writer/video_quality` and :ref:`ProjectSettings.editor/movie_writer/ogv/audio_quality`. The resulting file can be viewed in Godot with :ref:`VideoStreamPlayer` and most video players, but not web browsers as they don't support Theora. + +- AVI container with MJPEG for video and uncompressed audio (``.avi`` file extension). Lossy compression, medium file sizes, fast encoding. The lossy compression quality can be adjusted by changing :ref:`ProjectSettings.editor/movie_writer/video_quality`. The resulting file can be viewed in most video players, but it must be converted to another format for viewing on the web or by Godot with :ref:`VideoStreamPlayer`. MJPEG does not support transparency. AVI output is currently limited to a file of 4 GB in size at most. - PNG image sequence for video and WAV for audio (``.png`` file extension). Lossless compression, large file sizes, slow encoding. Designed to be encoded to a video file with another tool such as `FFmpeg `__ after recording. Transparency is currently not supported, even if the root viewport is set to be transparent. @@ -33,6 +35,10 @@ If you need to encode to a different format or pipe a stream through third-party \ **Note:** MovieWriter is available for use in both the editor and exported projects, but it is *not* designed for use by end users to record videos while playing. Players wishing to record gameplay videos should install tools such as `OBS Studio `__ or `SimpleScreenRecorder `__ instead. +\ **Note:** MJPEG support (``.avi`` file extension) depends on the ``jpg`` module being enabled at compile time (default behavior). + +\ **Note:** OGV support (``.ogv`` file extension) depends on the ``theora`` module being enabled at compile time (default behavior). Theora compression is only available in editor binaries. + .. rst-class:: classref-reftable-group Methods @@ -41,21 +47,21 @@ Methods .. table:: :widths: auto - +--------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`_get_audio_mix_rate`\ (\ ) |virtual| |const| | - +--------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`SpeakerMode` | :ref:`_get_audio_speaker_mode`\ (\ ) |virtual| |const| | - +--------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`_handles_file`\ (\ path\: :ref:`String`\ ) |virtual| |const| | - +--------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Error` | :ref:`_write_begin`\ (\ movie_size\: :ref:`Vector2i`, fps\: :ref:`int`, base_path\: :ref:`String`\ ) |virtual| | - +--------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_write_end`\ (\ ) |virtual| | - +--------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Error` | :ref:`_write_frame`\ (\ frame_image\: :ref:`Image`, audio_frame_block\: ``const void*``\ ) |virtual| | - +--------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`add_writer`\ (\ writer\: :ref:`MovieWriter`\ ) |static| | - +--------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + +--------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`_get_audio_mix_rate`\ (\ ) |virtual| |required| |const| | + +--------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`SpeakerMode` | :ref:`_get_audio_speaker_mode`\ (\ ) |virtual| |required| |const| | + +--------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`_handles_file`\ (\ path\: :ref:`String`\ ) |virtual| |required| |const| | + +--------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Error` | :ref:`_write_begin`\ (\ movie_size\: :ref:`Vector2i`, fps\: :ref:`int`, base_path\: :ref:`String`\ ) |virtual| |required| | + +--------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_write_end`\ (\ ) |virtual| |required| | + +--------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Error` | :ref:`_write_frame`\ (\ frame_image\: :ref:`Image`, audio_frame_block\: ``const void*``\ ) |virtual| |required| | + +--------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`add_writer`\ (\ writer\: :ref:`MovieWriter`\ ) |static| | + +--------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ .. rst-class:: classref-section-separator @@ -70,7 +76,7 @@ Method Descriptions .. rst-class:: classref-method -:ref:`int` **_get_audio_mix_rate**\ (\ ) |virtual| |const| :ref:`🔗` +:ref:`int` **_get_audio_mix_rate**\ (\ ) |virtual| |required| |const| :ref:`🔗` Called when the audio sample rate used for recording the audio is requested by the engine. The value returned must be specified in Hz. Defaults to 48000 Hz if :ref:`_get_audio_mix_rate()` is not overridden. @@ -82,7 +88,7 @@ Called when the audio sample rate used for recording the audio is requested by t .. rst-class:: classref-method -:ref:`SpeakerMode` **_get_audio_speaker_mode**\ (\ ) |virtual| |const| :ref:`🔗` +:ref:`SpeakerMode` **_get_audio_speaker_mode**\ (\ ) |virtual| |required| |const| :ref:`🔗` Called when the audio speaker mode used for recording the audio is requested by the engine. This can affect the number of output channels in the resulting audio file/stream. Defaults to :ref:`AudioServer.SPEAKER_MODE_STEREO` if :ref:`_get_audio_speaker_mode()` is not overridden. @@ -94,7 +100,7 @@ Called when the audio speaker mode used for recording the audio is requested by .. rst-class:: classref-method -:ref:`bool` **_handles_file**\ (\ path\: :ref:`String`\ ) |virtual| |const| :ref:`🔗` +:ref:`bool` **_handles_file**\ (\ path\: :ref:`String`\ ) |virtual| |required| |const| :ref:`🔗` Called when the engine determines whether this **MovieWriter** is able to handle the file at ``path``. Must return ``true`` if this **MovieWriter** is able to handle the given file path, ``false`` otherwise. Typically, :ref:`_handles_file()` is overridden as follows to allow the user to record a file at any path with a given file extension: @@ -113,7 +119,7 @@ Called when the engine determines whether this **MovieWriter** is able to handle .. rst-class:: classref-method -:ref:`Error` **_write_begin**\ (\ movie_size\: :ref:`Vector2i`, fps\: :ref:`int`, base_path\: :ref:`String`\ ) |virtual| :ref:`🔗` +:ref:`Error` **_write_begin**\ (\ movie_size\: :ref:`Vector2i`, fps\: :ref:`int`, base_path\: :ref:`String`\ ) |virtual| |required| :ref:`🔗` Called once before the engine starts writing video and audio data. ``movie_size`` is the width and height of the video to save. ``fps`` is the number of frames per second specified in the project settings or using the ``--fixed-fps `` :doc:`command line argument <../tutorials/editor/command_line_tutorial>`. @@ -125,7 +131,7 @@ Called once before the engine starts writing video and audio data. ``movie_size` .. rst-class:: classref-method -|void| **_write_end**\ (\ ) |virtual| :ref:`🔗` +|void| **_write_end**\ (\ ) |virtual| |required| :ref:`🔗` Called when the engine finishes writing. This occurs when the engine quits by pressing the window manager's close button, or when :ref:`SceneTree.quit()` is called. @@ -139,7 +145,7 @@ Called when the engine finishes writing. This occurs when the engine quits by pr .. rst-class:: classref-method -:ref:`Error` **_write_frame**\ (\ frame_image\: :ref:`Image`, audio_frame_block\: ``const void*``\ ) |virtual| :ref:`🔗` +:ref:`Error` **_write_frame**\ (\ frame_image\: :ref:`Image`, audio_frame_block\: ``const void*``\ ) |virtual| |required| :ref:`🔗` Called at the end of every rendered frame. The ``frame_image`` and ``audio_frame_block`` function arguments should be written to. @@ -158,6 +164,7 @@ Adds a writer to be usable by the engine. The supported file extensions can be s \ **Note:** :ref:`add_writer()` must be called early enough in the engine initialization to work, as movie writing is designed to start at the same time as the rest of the engine. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_multimesh.rst b/classes/class_multimesh.rst index 72b639896..39b5daedc 100644 --- a/classes/class_multimesh.rst +++ b/classes/class_multimesh.rst @@ -192,7 +192,7 @@ Property Descriptions .. container:: contribute - There is currently no description for this property. Please help us by :ref:`contributing one `! + There is currently no description for this property. Please help us by `contributing one `__! **Note:** The returned array is *copied* and any changes to it will not update the original property value. See :ref:`PackedFloat32Array` for more details. @@ -558,6 +558,7 @@ Sets the :ref:`Transform3D` for a specific instance. Sets the :ref:`Transform2D` for a specific instance. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_multimeshinstance2d.rst b/classes/class_multimeshinstance2d.rst index 9e29da841..138e42153 100644 --- a/classes/class_multimeshinstance2d.rst +++ b/classes/class_multimeshinstance2d.rst @@ -97,6 +97,7 @@ The :ref:`MultiMesh` that will be drawn by the **MultiMeshInsta The :ref:`Texture2D` that will be used if using the default :ref:`CanvasItemMaterial`. Can be accessed as ``TEXTURE`` in CanvasItem shader. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_multimeshinstance3d.rst b/classes/class_multimeshinstance3d.rst index 1484ec410..5b1ab7770 100644 --- a/classes/class_multimeshinstance3d.rst +++ b/classes/class_multimeshinstance3d.rst @@ -72,6 +72,7 @@ Property Descriptions The :ref:`MultiMesh` resource that will be used and shared among all instances of the **MultiMeshInstance3D**. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_multiplayerapi.rst b/classes/class_multiplayerapi.rst index 4c0d4cc75..8623ea1b5 100644 --- a/classes/class_multiplayerapi.rst +++ b/classes/class_multiplayerapi.rst @@ -364,6 +364,7 @@ Sends an RPC to the target ``peer``. The given ``method`` will be called on the Sets the default MultiplayerAPI implementation class. This method can be used by modules and extensions to configure which implementation will be used by :ref:`SceneTree` when the engine starts. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_multiplayerapiextension.rst b/classes/class_multiplayerapiextension.rst index 77258ffc6..f28ba38c1 100644 --- a/classes/class_multiplayerapiextension.rst +++ b/classes/class_multiplayerapiextension.rst @@ -33,29 +33,31 @@ The following example extend the default implementation (:ref:`SceneMultiplayer< extends MultiplayerAPIExtension class_name LogMultiplayer - + # We want to extend the default SceneMultiplayer. var base_multiplayer = SceneMultiplayer.new() - + func _init(): # Just passthrough base signals (copied to var to avoid cyclic reference) var cts = connected_to_server var cf = connection_failed + var sd = server_disconnected var pc = peer_connected var pd = peer_disconnected base_multiplayer.connected_to_server.connect(func(): cts.emit()) base_multiplayer.connection_failed.connect(func(): cf.emit()) + base_multiplayer.server_disconnected.connect(func(): sd.emit()) base_multiplayer.peer_connected.connect(func(id): pc.emit(id)) base_multiplayer.peer_disconnected.connect(func(id): pd.emit(id)) - + func _poll(): return base_multiplayer.poll() - + # Log RPC being made and forward it to the default multiplayer. func _rpc(peer: int, object: Object, method: StringName, args: Array) -> Error: print("Got RPC for %d: %s::%s(%s)" % [peer, object, method, args]) return base_multiplayer.rpc(peer, object, method, args) - + # Log configuration add. E.g. root path (nullptr, NodePath), replication (Node, Spawner|Synchronizer), custom. func _object_configuration_add(object, config: Variant) -> Error: if config is MultiplayerSynchronizer: @@ -63,7 +65,7 @@ The following example extend the default implementation (:ref:`SceneMultiplayer< elif config is MultiplayerSpawner: print("Adding node %s to the spawn list. Spawner: %s" % [object, config]) return base_multiplayer.object_configuration_add(object, config) - + # Log configuration remove. E.g. root path (nullptr, NodePath), replication (Node, Spawner|Synchronizer), custom. func _object_configuration_remove(object, config: Variant) -> Error: if config is MultiplayerSynchronizer: @@ -71,17 +73,20 @@ The following example extend the default implementation (:ref:`SceneMultiplayer< elif config is MultiplayerSpawner: print("Removing node %s from the spawn list. Spawner: %s" % [object, config]) return base_multiplayer.object_configuration_remove(object, config) - + # These can be optional, but in our case we want to extend SceneMultiplayer, so forward everything. func _set_multiplayer_peer(p_peer: MultiplayerPeer): base_multiplayer.multiplayer_peer = p_peer - + func _get_multiplayer_peer() -> MultiplayerPeer: return base_multiplayer.multiplayer_peer - + func _get_unique_id() -> int: return base_multiplayer.get_unique_id() - + + func _get_remote_sender_id() -> int: + return base_multiplayer.get_remote_sender_id() + func _get_peer_ids() -> PackedInt32Array: return base_multiplayer.get_peers() @@ -245,6 +250,7 @@ Callback for :ref:`MultiplayerAPI.rpc()`. Called when the :ref:`MultiplayerAPI.multiplayer_peer` is set. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_multiplayerpeer.rst b/classes/class_multiplayerpeer.rst index 0f89e4367..5fa5f7d28 100644 --- a/classes/class_multiplayerpeer.rst +++ b/classes/class_multiplayerpeer.rst @@ -268,7 +268,7 @@ The channel to use to send packets. Many network APIs such as ENet and WebRTC al - |void| **set_transfer_mode**\ (\ value\: :ref:`TransferMode`\ ) - :ref:`TransferMode` **get_transfer_mode**\ (\ ) -The manner in which to send packets to the target peer. See :ref:`TransferMode`, and the :ref:`set_target_peer()` method. +The manner in which to send packets to the target peer. See the :ref:`set_target_peer()` method. .. rst-class:: classref-section-separator @@ -321,7 +321,7 @@ Returns a randomly generated integer that can be used as a network unique ID. :ref:`ConnectionStatus` **get_connection_status**\ (\ ) |const| :ref:`🔗` -Returns the current state of the connection. See :ref:`ConnectionStatus`. +Returns the current state of the connection. .. rst-class:: classref-item-separator @@ -410,6 +410,7 @@ Sets the peer to which packets will be sent. The ``id`` can be one of: :ref:`TARGET_PEER_BROADCAST` to send to all connected peers, :ref:`TARGET_PEER_SERVER` to send to the peer acting as server, a valid peer ID to send to that specific peer, a negative peer ID to send to all peers except that one. By default, the target peer is :ref:`TARGET_PEER_BROADCAST`. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_multiplayerpeerextension.rst b/classes/class_multiplayerpeerextension.rst index 4e7f93b30..55ea3e96c 100644 --- a/classes/class_multiplayerpeerextension.rst +++ b/classes/class_multiplayerpeerextension.rst @@ -32,53 +32,53 @@ Methods .. table:: :widths: auto - +----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_close`\ (\ ) |virtual| | - +----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_disconnect_peer`\ (\ p_peer\: :ref:`int`, p_force\: :ref:`bool`\ ) |virtual| | - +----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`_get_available_packet_count`\ (\ ) |virtual| |const| | - +----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`ConnectionStatus` | :ref:`_get_connection_status`\ (\ ) |virtual| |const| | - +----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`_get_max_packet_size`\ (\ ) |virtual| |const| | - +----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Error` | :ref:`_get_packet`\ (\ r_buffer\: ``const uint8_t **``, r_buffer_size\: ``int32_t*``\ ) |virtual| | - +----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`_get_packet_channel`\ (\ ) |virtual| |const| | - +----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`TransferMode` | :ref:`_get_packet_mode`\ (\ ) |virtual| |const| | - +----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`_get_packet_peer`\ (\ ) |virtual| |const| | - +----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`PackedByteArray` | :ref:`_get_packet_script`\ (\ ) |virtual| | - +----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`_get_transfer_channel`\ (\ ) |virtual| |const| | - +----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`TransferMode` | :ref:`_get_transfer_mode`\ (\ ) |virtual| |const| | - +----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`_get_unique_id`\ (\ ) |virtual| |const| | - +----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`_is_refusing_new_connections`\ (\ ) |virtual| |const| | - +----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`_is_server`\ (\ ) |virtual| |const| | - +----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`_is_server_relay_supported`\ (\ ) |virtual| |const| | - +----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_poll`\ (\ ) |virtual| | - +----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Error` | :ref:`_put_packet`\ (\ p_buffer\: ``const uint8_t*``, p_buffer_size\: :ref:`int`\ ) |virtual| | - +----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Error` | :ref:`_put_packet_script`\ (\ p_buffer\: :ref:`PackedByteArray`\ ) |virtual| | - +----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_set_refuse_new_connections`\ (\ p_enable\: :ref:`bool`\ ) |virtual| | - +----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_set_target_peer`\ (\ p_peer\: :ref:`int`\ ) |virtual| | - +----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_set_transfer_channel`\ (\ p_channel\: :ref:`int`\ ) |virtual| | - +----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_set_transfer_mode`\ (\ p_mode\: :ref:`TransferMode`\ ) |virtual| | - +----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + +----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_close`\ (\ ) |virtual| |required| | + +----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_disconnect_peer`\ (\ p_peer\: :ref:`int`, p_force\: :ref:`bool`\ ) |virtual| |required| | + +----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`_get_available_packet_count`\ (\ ) |virtual| |required| |const| | + +----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`ConnectionStatus` | :ref:`_get_connection_status`\ (\ ) |virtual| |required| |const| | + +----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`_get_max_packet_size`\ (\ ) |virtual| |required| |const| | + +----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Error` | :ref:`_get_packet`\ (\ r_buffer\: ``const uint8_t **``, r_buffer_size\: ``int32_t*``\ ) |virtual| | + +----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`_get_packet_channel`\ (\ ) |virtual| |required| |const| | + +----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`TransferMode` | :ref:`_get_packet_mode`\ (\ ) |virtual| |required| |const| | + +----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`_get_packet_peer`\ (\ ) |virtual| |required| |const| | + +----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`PackedByteArray` | :ref:`_get_packet_script`\ (\ ) |virtual| | + +----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`_get_transfer_channel`\ (\ ) |virtual| |required| |const| | + +----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`TransferMode` | :ref:`_get_transfer_mode`\ (\ ) |virtual| |required| |const| | + +----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`_get_unique_id`\ (\ ) |virtual| |required| |const| | + +----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`_is_refusing_new_connections`\ (\ ) |virtual| |const| | + +----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`_is_server`\ (\ ) |virtual| |required| |const| | + +----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`_is_server_relay_supported`\ (\ ) |virtual| |const| | + +----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_poll`\ (\ ) |virtual| |required| | + +----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Error` | :ref:`_put_packet`\ (\ p_buffer\: ``const uint8_t*``, p_buffer_size\: :ref:`int`\ ) |virtual| | + +----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Error` | :ref:`_put_packet_script`\ (\ p_buffer\: :ref:`PackedByteArray`\ ) |virtual| | + +----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_set_refuse_new_connections`\ (\ p_enable\: :ref:`bool`\ ) |virtual| | + +----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_set_target_peer`\ (\ p_peer\: :ref:`int`\ ) |virtual| |required| | + +----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_set_transfer_channel`\ (\ p_channel\: :ref:`int`\ ) |virtual| |required| | + +----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_set_transfer_mode`\ (\ p_mode\: :ref:`TransferMode`\ ) |virtual| |required| | + +----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ .. rst-class:: classref-section-separator @@ -93,7 +93,7 @@ Method Descriptions .. rst-class:: classref-method -|void| **_close**\ (\ ) |virtual| :ref:`🔗` +|void| **_close**\ (\ ) |virtual| |required| :ref:`🔗` Called when the multiplayer peer should be immediately closed (see :ref:`MultiplayerPeer.close()`). @@ -105,7 +105,7 @@ Called when the multiplayer peer should be immediately closed (see :ref:`Multipl .. rst-class:: classref-method -|void| **_disconnect_peer**\ (\ p_peer\: :ref:`int`, p_force\: :ref:`bool`\ ) |virtual| :ref:`🔗` +|void| **_disconnect_peer**\ (\ p_peer\: :ref:`int`, p_force\: :ref:`bool`\ ) |virtual| |required| :ref:`🔗` Called when the connected ``p_peer`` should be forcibly disconnected (see :ref:`MultiplayerPeer.disconnect_peer()`). @@ -117,7 +117,7 @@ Called when the connected ``p_peer`` should be forcibly disconnected (see :ref:` .. rst-class:: classref-method -:ref:`int` **_get_available_packet_count**\ (\ ) |virtual| |const| :ref:`🔗` +:ref:`int` **_get_available_packet_count**\ (\ ) |virtual| |required| |const| :ref:`🔗` Called when the available packet count is internally requested by the :ref:`MultiplayerAPI`. @@ -129,7 +129,7 @@ Called when the available packet count is internally requested by the :ref:`Mult .. rst-class:: classref-method -:ref:`ConnectionStatus` **_get_connection_status**\ (\ ) |virtual| |const| :ref:`🔗` +:ref:`ConnectionStatus` **_get_connection_status**\ (\ ) |virtual| |required| |const| :ref:`🔗` Called when the connection status is requested on the :ref:`MultiplayerPeer` (see :ref:`MultiplayerPeer.get_connection_status()`). @@ -141,7 +141,7 @@ Called when the connection status is requested on the :ref:`MultiplayerPeer` **_get_max_packet_size**\ (\ ) |virtual| |const| :ref:`🔗` +:ref:`int` **_get_max_packet_size**\ (\ ) |virtual| |required| |const| :ref:`🔗` Called when the maximum allowed packet size (in bytes) is requested by the :ref:`MultiplayerAPI`. @@ -165,7 +165,7 @@ Called when a packet needs to be received by the :ref:`MultiplayerAPI` **_get_packet_channel**\ (\ ) |virtual| |const| :ref:`🔗` +:ref:`int` **_get_packet_channel**\ (\ ) |virtual| |required| |const| :ref:`🔗` Called to get the channel over which the next available packet was received. See :ref:`MultiplayerPeer.get_packet_channel()`. @@ -177,7 +177,7 @@ Called to get the channel over which the next available packet was received. See .. rst-class:: classref-method -:ref:`TransferMode` **_get_packet_mode**\ (\ ) |virtual| |const| :ref:`🔗` +:ref:`TransferMode` **_get_packet_mode**\ (\ ) |virtual| |required| |const| :ref:`🔗` Called to get the transfer mode the remote peer used to send the next available packet. See :ref:`MultiplayerPeer.get_packet_mode()`. @@ -189,7 +189,7 @@ Called to get the transfer mode the remote peer used to send the next available .. rst-class:: classref-method -:ref:`int` **_get_packet_peer**\ (\ ) |virtual| |const| :ref:`🔗` +:ref:`int` **_get_packet_peer**\ (\ ) |virtual| |required| |const| :ref:`🔗` Called when the ID of the :ref:`MultiplayerPeer` who sent the most recent packet is requested (see :ref:`MultiplayerPeer.get_packet_peer()`). @@ -213,7 +213,7 @@ Called when a packet needs to be received by the :ref:`MultiplayerAPI` **_get_transfer_channel**\ (\ ) |virtual| |const| :ref:`🔗` +:ref:`int` **_get_transfer_channel**\ (\ ) |virtual| |required| |const| :ref:`🔗` Called when the transfer channel to use is read on this :ref:`MultiplayerPeer` (see :ref:`MultiplayerPeer.transfer_channel`). @@ -225,7 +225,7 @@ Called when the transfer channel to use is read on this :ref:`MultiplayerPeer` **_get_transfer_mode**\ (\ ) |virtual| |const| :ref:`🔗` +:ref:`TransferMode` **_get_transfer_mode**\ (\ ) |virtual| |required| |const| :ref:`🔗` Called when the transfer mode to use is read on this :ref:`MultiplayerPeer` (see :ref:`MultiplayerPeer.transfer_mode`). @@ -237,7 +237,7 @@ Called when the transfer mode to use is read on this :ref:`MultiplayerPeer` **_get_unique_id**\ (\ ) |virtual| |const| :ref:`🔗` +:ref:`int` **_get_unique_id**\ (\ ) |virtual| |required| |const| :ref:`🔗` Called when the unique ID of this :ref:`MultiplayerPeer` is requested (see :ref:`MultiplayerPeer.get_unique_id()`). The value must be between ``1`` and ``2147483647``. @@ -261,7 +261,7 @@ Called when the "refuse new connections" status is requested on this :ref:`Multi .. rst-class:: classref-method -:ref:`bool` **_is_server**\ (\ ) |virtual| |const| :ref:`🔗` +:ref:`bool` **_is_server**\ (\ ) |virtual| |required| |const| :ref:`🔗` Called when the "is server" status is requested on the :ref:`MultiplayerAPI`. See :ref:`MultiplayerAPI.is_server()`. @@ -285,7 +285,7 @@ Called to check if the server can act as a relay in the current configuration. S .. rst-class:: classref-method -|void| **_poll**\ (\ ) |virtual| :ref:`🔗` +|void| **_poll**\ (\ ) |virtual| |required| :ref:`🔗` Called when the :ref:`MultiplayerAPI` is polled. See :ref:`MultiplayerAPI.poll()`. @@ -333,7 +333,7 @@ Called when the "refuse new connections" status is set on this :ref:`Multiplayer .. rst-class:: classref-method -|void| **_set_target_peer**\ (\ p_peer\: :ref:`int`\ ) |virtual| :ref:`🔗` +|void| **_set_target_peer**\ (\ p_peer\: :ref:`int`\ ) |virtual| |required| :ref:`🔗` Called when the target peer to use is set for this :ref:`MultiplayerPeer` (see :ref:`MultiplayerPeer.set_target_peer()`). @@ -345,7 +345,7 @@ Called when the target peer to use is set for this :ref:`MultiplayerPeer`\ ) |virtual| :ref:`🔗` +|void| **_set_transfer_channel**\ (\ p_channel\: :ref:`int`\ ) |virtual| |required| :ref:`🔗` Called when the channel to use is set for this :ref:`MultiplayerPeer` (see :ref:`MultiplayerPeer.transfer_channel`). @@ -357,11 +357,12 @@ Called when the channel to use is set for this :ref:`MultiplayerPeer`\ ) |virtual| :ref:`🔗` +|void| **_set_transfer_mode**\ (\ p_mode\: :ref:`TransferMode`\ ) |virtual| |required| :ref:`🔗` Called when the transfer mode is set on this :ref:`MultiplayerPeer` (see :ref:`MultiplayerPeer.transfer_mode`). .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_multiplayerspawner.rst b/classes/class_multiplayerspawner.rst index a8540ac7a..1073da47a 100644 --- a/classes/class_multiplayerspawner.rst +++ b/classes/class_multiplayerspawner.rst @@ -221,6 +221,7 @@ Requests a custom spawn, with ``data`` passed to :ref:`spawn_function` is only needed for custom spawns. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_multiplayersynchronizer.rst b/classes/class_multiplayersynchronizer.rst index 56b3f4bde..531d5b7b6 100644 --- a/classes/class_multiplayersynchronizer.rst +++ b/classes/class_multiplayersynchronizer.rst @@ -261,7 +261,7 @@ If :ref:`root_path` was spawne - |void| **set_visibility_update_mode**\ (\ value\: :ref:`VisibilityUpdateMode`\ ) - :ref:`VisibilityUpdateMode` **get_visibility_update_mode**\ (\ ) -Specifies when visibility filters are updated (see :ref:`VisibilityUpdateMode` for options). +Specifies when visibility filters are updated. .. rst-class:: classref-section-separator @@ -331,6 +331,7 @@ Sets the visibility of ``peer`` to ``visible``. If ``peer`` is ``0``, the value Updates the visibility of ``for_peer`` according to visibility filters. If ``for_peer`` is ``0`` (the default), all peers' visibilties are updated. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_mutex.rst b/classes/class_mutex.rst index 63c52380d..be57752fe 100644 --- a/classes/class_mutex.rst +++ b/classes/class_mutex.rst @@ -106,6 +106,7 @@ Unlocks this **Mutex**, leaving it to other threads. \ **Warning:** Calling :ref:`unlock()` more times that :ref:`lock()` on a given thread, thus ending up trying to unlock a non-locked mutex, is wrong and may causes crashes or deadlocks. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_nativemenu.rst b/classes/class_nativemenu.rst index cbb4153b5..12e360ebc 100644 --- a/classes/class_nativemenu.rst +++ b/classes/class_nativemenu.rst @@ -28,7 +28,7 @@ To create a menu, use :ref:`create_menu()`, :: var menu - + func _menu_callback(item_id): if item_id == "ITEM_CUT": cut() @@ -36,7 +36,7 @@ To create a menu, use :ref:`create_menu()`, copy() elif item_id == "ITEM_PASTE": paste() - + func _enter_tree(): # Create new menu and add items: menu = NativeMenu.create_menu() @@ -44,11 +44,11 @@ To create a menu, use :ref:`create_menu()`, NativeMenu.add_item(menu, "Copy", _menu_callback, Callable(), "ITEM_COPY") NativeMenu.add_separator(menu) NativeMenu.add_item(menu, "Paste", _menu_callback, Callable(), "ITEM_PASTE") - + func _on_button_pressed(): # Show popup menu at mouse position: NativeMenu.popup(menu, DisplayServer.mouse_get_position()) - + func _exit_tree(): # Remove menu when it's no longer needed: NativeMenu.free_menu(menu) @@ -799,7 +799,7 @@ Returns global menu close callback. Returns global menu open callback. -b]Note:** This method is implemented only on macOS. +\ **Note:** This method is implemented only on macOS. .. rst-class:: classref-item-separator @@ -1326,6 +1326,7 @@ Registers callable to emit after the menu is closed. \ **Note:** This method is implemented only on macOS. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_navigationagent2d.rst b/classes/class_navigationagent2d.rst index 658b4d439..7ccdb817a 100644 --- a/classes/class_navigationagent2d.rst +++ b/classes/class_navigationagent2d.rst @@ -27,6 +27,8 @@ Dynamic obstacles are avoided using RVO collision avoidance. Avoidance is comput \ **Note:** After setting the :ref:`target_position` property, the :ref:`get_next_path_position()` method must be used once every physics frame to update the internal path logic of the navigation agent. The vector position it returns should be used as the next movement position for the agent's parent node. +\ **Note:** Several methods of this class, such as :ref:`get_next_path_position()`, can trigger a new path calculation. Calling these in your callback to an agent's signal, such as :ref:`waypoint_reached`, can cause infinite recursion. It is recommended to call these methods in the physics step or, alternatively, delay their call until the end of the frame (see :ref:`Object.call_deferred()` or :ref:`Object.CONNECT_DEFERRED`). + .. rst-class:: classref-introduction-group Tutorials @@ -77,6 +79,14 @@ Properties +------------------------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------+-----------------------+ | :ref:`PathPostProcessing` | :ref:`path_postprocessing` | ``0`` | +------------------------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------+-----------------------+ + | :ref:`float` | :ref:`path_return_max_length` | ``0.0`` | + +------------------------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------+-----------------------+ + | :ref:`float` | :ref:`path_return_max_radius` | ``0.0`` | + +------------------------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------+-----------------------+ + | :ref:`float` | :ref:`path_search_max_distance` | ``0.0`` | + +------------------------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------+-----------------------+ + | :ref:`int` | :ref:`path_search_max_polygons` | ``4096`` | + +------------------------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------+-----------------------+ | :ref:`PathfindingAlgorithm` | :ref:`pathfinding_algorithm` | ``0`` | +------------------------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------+-----------------------+ | :ref:`float` | :ref:`radius` | ``10.0`` | @@ -125,6 +135,8 @@ Methods +-----------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`Vector2` | :ref:`get_next_path_position`\ (\ ) | +-----------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`get_path_length`\ (\ ) |const| | + +-----------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`RID` | :ref:`get_rid`\ (\ ) |const| | +-----------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`is_navigation_finished`\ (\ ) | @@ -555,6 +567,76 @@ The path postprocessing applied to the raw path corridor found by the :ref:`path ---- +.. _class_NavigationAgent2D_property_path_return_max_length: + +.. rst-class:: classref-property + +:ref:`float` **path_return_max_length** = ``0.0`` :ref:`🔗` + +.. rst-class:: classref-property-setget + +- |void| **set_path_return_max_length**\ (\ value\: :ref:`float`\ ) +- :ref:`float` **get_path_return_max_length**\ (\ ) + +The maximum allowed length of the returned path in world units. A path will be clipped when going over this length. + +.. rst-class:: classref-item-separator + +---- + +.. _class_NavigationAgent2D_property_path_return_max_radius: + +.. rst-class:: classref-property + +:ref:`float` **path_return_max_radius** = ``0.0`` :ref:`🔗` + +.. rst-class:: classref-property-setget + +- |void| **set_path_return_max_radius**\ (\ value\: :ref:`float`\ ) +- :ref:`float` **get_path_return_max_radius**\ (\ ) + +The maximum allowed radius in world units that the returned path can be from the path start. The path will be clipped when going over this radius. Compared to :ref:`path_return_max_length`, this allows the agent to go that much further, if they need to walk around a corner. + +\ **Note:** This will perform a sphere clip considering only the actual navigation mesh path points with the first path position being the sphere's center. + +.. rst-class:: classref-item-separator + +---- + +.. _class_NavigationAgent2D_property_path_search_max_distance: + +.. rst-class:: classref-property + +:ref:`float` **path_search_max_distance** = ``0.0`` :ref:`🔗` + +.. rst-class:: classref-property-setget + +- |void| **set_path_search_max_distance**\ (\ value\: :ref:`float`\ ) +- :ref:`float` **get_path_search_max_distance**\ (\ ) + +The maximum distance a searched polygon can be away from the start polygon before the pathfinding cancels the search for a path to the (possibly unreachable or very far away) target position polygon. In this case the pathfinding resets and builds a path from the start polygon to the polygon that was found closest to the target position so far. A value of ``0`` or below counts as unlimited. In case of unlimited the pathfinding will search all polygons connected with the start polygon until either the target position polygon is found or all available polygon search options are exhausted. + +.. rst-class:: classref-item-separator + +---- + +.. _class_NavigationAgent2D_property_path_search_max_polygons: + +.. rst-class:: classref-property + +:ref:`int` **path_search_max_polygons** = ``4096`` :ref:`🔗` + +.. rst-class:: classref-property-setget + +- |void| **set_path_search_max_polygons**\ (\ value\: :ref:`int`\ ) +- :ref:`int` **get_path_search_max_polygons**\ (\ ) + +The maximum number of polygons that are searched before the pathfinding cancels the search for a path to the (possibly unreachable or very far away) target position polygon. In this case the pathfinding resets and builds a path from the start polygon to the polygon that was found closest to the target position so far. A value of ``0`` or below counts as unlimited. In case of unlimited the pathfinding will search all polygons connected with the start polygon until either the target position polygon is found or all available polygon search options are exhausted. + +.. rst-class:: classref-item-separator + +---- + .. _class_NavigationAgent2D_property_pathfinding_algorithm: .. rst-class:: classref-property @@ -585,7 +667,7 @@ The pathfinding algorithm used in the path query. The radius of the avoidance agent. This is the "body" of the avoidance agent and not the avoidance maneuver starting radius (which is controlled by :ref:`neighbor_distance`). -Does not affect normal pathfinding. To change an actor's pathfinding radius bake :ref:`NavigationMesh` resources with a different :ref:`NavigationMesh.agent_radius` property and use different navigation maps for each actor size. +Does not affect normal pathfinding. To change an actor's pathfinding radius bake :ref:`NavigationPolygon` resources with a different :ref:`NavigationPolygon.agent_radius` property and use different navigation maps for each actor size. .. rst-class:: classref-item-separator @@ -841,6 +923,18 @@ Returns the next position in global coordinates that can be moved to, making sur ---- +.. _class_NavigationAgent2D_method_get_path_length: + +.. rst-class:: classref-method + +:ref:`float` **get_path_length**\ (\ ) |const| :ref:`🔗` + +Returns the length of the currently calculated path. The returned value is ``0.0``, if the path is still calculating or no calculation has been requested yet. + +.. rst-class:: classref-item-separator + +---- + .. _class_NavigationAgent2D_method_get_rid: .. rst-class:: classref-method @@ -948,6 +1042,7 @@ Sets the :ref:`RID` of the navigation map this NavigationAgent node s Replaces the internal velocity in the collision avoidance simulation with ``velocity``. When an agent is teleported to a new position this function should be used in the same frame. If called frequently this function can get agents stuck. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_navigationagent3d.rst b/classes/class_navigationagent3d.rst index 949cdd364..a1a47913d 100644 --- a/classes/class_navigationagent3d.rst +++ b/classes/class_navigationagent3d.rst @@ -27,6 +27,8 @@ Dynamic obstacles are avoided using RVO collision avoidance. Avoidance is comput \ **Note:** After setting the :ref:`target_position` property, the :ref:`get_next_path_position()` method must be used once every physics frame to update the internal path logic of the navigation agent. The vector position it returns should be used as the next movement position for the agent's parent node. +\ **Note:** Several methods of this class, such as :ref:`get_next_path_position()`, can trigger a new path calculation. Calling these in your callback to an agent's signal, such as :ref:`waypoint_reached`, can cause infinite recursion. It is recommended to call these methods in the physics step or, alternatively, delay their call until the end of the frame (see :ref:`Object.call_deferred()` or :ref:`Object.CONNECT_DEFERRED`). + .. rst-class:: classref-introduction-group Tutorials @@ -81,6 +83,14 @@ Properties +------------------------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------+-----------------------+ | :ref:`PathPostProcessing` | :ref:`path_postprocessing` | ``0`` | +------------------------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------+-----------------------+ + | :ref:`float` | :ref:`path_return_max_length` | ``0.0`` | + +------------------------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------+-----------------------+ + | :ref:`float` | :ref:`path_return_max_radius` | ``0.0`` | + +------------------------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------+-----------------------+ + | :ref:`float` | :ref:`path_search_max_distance` | ``0.0`` | + +------------------------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------+-----------------------+ + | :ref:`int` | :ref:`path_search_max_polygons` | ``4096`` | + +------------------------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------+-----------------------+ | :ref:`PathfindingAlgorithm` | :ref:`pathfinding_algorithm` | ``0`` | +------------------------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------+-----------------------+ | :ref:`float` | :ref:`radius` | ``0.5`` | @@ -131,6 +141,8 @@ Methods +-----------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`Vector3` | :ref:`get_next_path_position`\ (\ ) | +-----------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`get_path_length`\ (\ ) |const| | + +-----------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`RID` | :ref:`get_rid`\ (\ ) |const| | +-----------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`is_navigation_finished`\ (\ ) | @@ -595,6 +607,76 @@ The path postprocessing applied to the raw path corridor found by the :ref:`path ---- +.. _class_NavigationAgent3D_property_path_return_max_length: + +.. rst-class:: classref-property + +:ref:`float` **path_return_max_length** = ``0.0`` :ref:`🔗` + +.. rst-class:: classref-property-setget + +- |void| **set_path_return_max_length**\ (\ value\: :ref:`float`\ ) +- :ref:`float` **get_path_return_max_length**\ (\ ) + +The maximum allowed length of the returned path in world units. A path will be clipped when going over this length. + +.. rst-class:: classref-item-separator + +---- + +.. _class_NavigationAgent3D_property_path_return_max_radius: + +.. rst-class:: classref-property + +:ref:`float` **path_return_max_radius** = ``0.0`` :ref:`🔗` + +.. rst-class:: classref-property-setget + +- |void| **set_path_return_max_radius**\ (\ value\: :ref:`float`\ ) +- :ref:`float` **get_path_return_max_radius**\ (\ ) + +The maximum allowed radius in world units that the returned path can be from the path start. The path will be clipped when going over this radius. Compared to :ref:`path_return_max_length`, this allows the agent to go that much further, if they need to walk around a corner. + +\ **Note:** This will perform a sphere clip considering only the actual navigation mesh path points with the first path position being the sphere's center. + +.. rst-class:: classref-item-separator + +---- + +.. _class_NavigationAgent3D_property_path_search_max_distance: + +.. rst-class:: classref-property + +:ref:`float` **path_search_max_distance** = ``0.0`` :ref:`🔗` + +.. rst-class:: classref-property-setget + +- |void| **set_path_search_max_distance**\ (\ value\: :ref:`float`\ ) +- :ref:`float` **get_path_search_max_distance**\ (\ ) + +The maximum distance a searched polygon can be away from the start polygon before the pathfinding cancels the search for a path to the (possibly unreachable or very far away) target position polygon. In this case the pathfinding resets and builds a path from the start polygon to the polygon that was found closest to the target position so far. A value of ``0`` or below counts as unlimited. In case of unlimited the pathfinding will search all polygons connected with the start polygon until either the target position polygon is found or all available polygon search options are exhausted. + +.. rst-class:: classref-item-separator + +---- + +.. _class_NavigationAgent3D_property_path_search_max_polygons: + +.. rst-class:: classref-property + +:ref:`int` **path_search_max_polygons** = ``4096`` :ref:`🔗` + +.. rst-class:: classref-property-setget + +- |void| **set_path_search_max_polygons**\ (\ value\: :ref:`int`\ ) +- :ref:`int` **get_path_search_max_polygons**\ (\ ) + +The maximum number of polygons that are searched before the pathfinding cancels the search for a path to the (possibly unreachable or very far away) target position polygon. In this case the pathfinding resets and builds a path from the start polygon to the polygon that was found closest to the target position so far. A value of ``0`` or below counts as unlimited. In case of unlimited the pathfinding will search all polygons connected with the start polygon until either the target position polygon is found or all available polygon search options are exhausted. + +.. rst-class:: classref-item-separator + +---- + .. _class_NavigationAgent3D_property_pathfinding_algorithm: .. rst-class:: classref-property @@ -900,6 +982,18 @@ Returns the next position in global coordinates that can be moved to, making sur ---- +.. _class_NavigationAgent3D_method_get_path_length: + +.. rst-class:: classref-method + +:ref:`float` **get_path_length**\ (\ ) |const| :ref:`🔗` + +Returns the length of the currently calculated path. The returned value is ``0.0``, if the path is still calculating or no calculation has been requested yet. + +.. rst-class:: classref-item-separator + +---- + .. _class_NavigationAgent3D_method_get_rid: .. rst-class:: classref-method @@ -1007,6 +1101,7 @@ Sets the :ref:`RID` of the navigation map this NavigationAgent node s Replaces the internal velocity in the collision avoidance simulation with ``velocity``. When an agent is teleported to a new position this function should be used in the same frame. If called frequently this function can get agents stuck. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_navigationlink2d.rst b/classes/class_navigationlink2d.rst index d9a924464..668cf9083 100644 --- a/classes/class_navigationlink2d.rst +++ b/classes/class_navigationlink2d.rst @@ -328,6 +328,7 @@ Based on ``value``, enables or disables the specified layer in the :ref:`navigat Sets the :ref:`RID` of the navigation map this link should use. By default the link will automatically join the :ref:`World2D` default navigation map so this function is only required to override the default map. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_navigationlink3d.rst b/classes/class_navigationlink3d.rst index cc3a1ab7d..a618ad6cf 100644 --- a/classes/class_navigationlink3d.rst +++ b/classes/class_navigationlink3d.rst @@ -328,6 +328,7 @@ Based on ``value``, enables or disables the specified layer in the :ref:`navigat Sets the :ref:`RID` of the navigation map this link should use. By default the link will automatically join the :ref:`World3D` default navigation map so this function is only required to override the default map. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_navigationmesh.rst b/classes/class_navigationmesh.rst index 765663e5c..797b18520 100644 --- a/classes/class_navigationmesh.rst +++ b/classes/class_navigationmesh.rst @@ -330,6 +330,8 @@ The distance to erode/shrink the walkable area of the heightfield away from obst \ **Note:** While baking, this value will be rounded up to the nearest multiple of :ref:`cell_size`. +\ **Note:** The radius must be equal or higher than ``0.0``. If the radius is ``0.0``, it won't be possible to fix invalid outline overlaps and other precision errors during the baking process. As a result, some obstacles may be excluded incorrectly from the final navigation mesh, or may delete the navigation mesh's polygons. + .. rst-class:: classref-item-separator ---- @@ -349,7 +351,7 @@ The size of the non-navigable border around the bake bounding area. In conjunction with the :ref:`filter_baking_aabb` and a :ref:`edge_max_error` value at ``1.0`` or below the border size can be used to bake tile aligned navigation meshes without the tile edges being shrunk by :ref:`agent_radius`. -\ **Note:** While baking and not zero, this value will be rounded up to the nearest multiple of :ref:`cell_size`. +\ **Note:** If this value is not ``0.0``, it will be rounded up to the nearest multiple of :ref:`cell_size` during baking. .. rst-class:: classref-item-separator @@ -574,7 +576,7 @@ Only used when :ref:`geometry_parsed_geometry_type`\ ) - :ref:`ParsedGeometryType` **get_parsed_geometry_type**\ (\ ) -Determines which type of nodes will be parsed as geometry. See :ref:`ParsedGeometryType` for possible values. +Determines which type of nodes will be parsed as geometry. .. rst-class:: classref-item-separator @@ -591,7 +593,7 @@ Determines which type of nodes will be parsed as geometry. See :ref:`ParsedGeome - |void| **set_source_geometry_mode**\ (\ value\: :ref:`SourceGeometryMode`\ ) - :ref:`SourceGeometryMode` **get_source_geometry_mode**\ (\ ) -The source of the geometry used when baking. See :ref:`SourceGeometryMode` for possible values. +The source of the geometry used when baking. .. rst-class:: classref-item-separator @@ -665,7 +667,7 @@ The minimum size of a region for it to be created. - |void| **set_sample_partition_type**\ (\ value\: :ref:`SamplePartitionType`\ ) - :ref:`SamplePartitionType` **get_sample_partition_type**\ (\ ) -Partitioning algorithm for creating the navigation mesh polys. See :ref:`SamplePartitionType` for possible values. +Partitioning algorithm for creating the navigation mesh polys. .. rst-class:: classref-item-separator @@ -812,6 +814,7 @@ Based on ``value``, enables or disables the specified layer in the :ref:`geometr Sets the vertices that can be then indexed to create polygons with the :ref:`add_polygon()` method. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_navigationmeshgenerator.rst b/classes/class_navigationmeshgenerator.rst index a4f8843a8..b40bec7d2 100644 --- a/classes/class_navigationmeshgenerator.rst +++ b/classes/class_navigationmeshgenerator.rst @@ -116,6 +116,7 @@ Parses the :ref:`SceneTree` for source geometry according to th \ **Performance:** While convenient, reading data arrays from :ref:`Mesh` resources can affect the frame rate negatively. The data needs to be received from the GPU, stalling the :ref:`RenderingServer` in the process. For performance prefer the use of e.g. collision shapes or creating the data arrays entirely in code. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_navigationmeshsourcegeometrydata2d.rst b/classes/class_navigationmeshsourcegeometrydata2d.rst index cb2bb11b8..d7f3d7181 100644 --- a/classes/class_navigationmeshsourcegeometrydata2d.rst +++ b/classes/class_navigationmeshsourcegeometrydata2d.rst @@ -277,6 +277,7 @@ Sets the projected obstructions with an Array of Dictionaries with the following Sets all the traversable area outlines arrays. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_navigationmeshsourcegeometrydata3d.rst b/classes/class_navigationmeshsourcegeometrydata3d.rst index 65a1c0f99..76f67f6aa 100644 --- a/classes/class_navigationmeshsourcegeometrydata3d.rst +++ b/classes/class_navigationmeshsourcegeometrydata3d.rst @@ -116,7 +116,7 @@ Adds an :ref:`Array` the size of :ref:`Mesh.ARRAY_MAX`, elevation\: :ref:`float`, height\: :ref:`float`, carve\: :ref:`bool`\ ) :ref:`🔗` -Adds a projected obstruction shape to the source geometry. The ``vertices`` are considered projected on a xz-axes plane, placed at the global y-axis ``elevation`` and extruded by ``height``. If ``carve`` is ``true`` the carved shape will not be affected by additional offsets (e.g. agent radius) of the navigation mesh baking process. +Adds a projected obstruction shape to the source geometry. The ``vertices`` are considered projected on an xz-axes plane, placed at the global y-axis ``elevation`` and extruded by ``height``. If ``carve`` is ``true`` the carved shape will not be affected by additional offsets (e.g. agent radius) of the navigation mesh baking process. .. rst-class:: classref-item-separator @@ -287,6 +287,7 @@ Sets the parsed source geometry data vertices. The vertices need to be matched w \ **Warning:** Inappropriate data can crash the baking process of the involved third-party libraries. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_navigationobstacle2d.rst b/classes/class_navigationobstacle2d.rst index be09dee70..d0d5add30 100644 --- a/classes/class_navigationobstacle2d.rst +++ b/classes/class_navigationobstacle2d.rst @@ -274,6 +274,7 @@ Based on ``value``, enables or disables the specified layer in the :ref:`avoidan Sets the :ref:`RID` of the navigation map this NavigationObstacle node should use and also updates the ``obstacle`` on the NavigationServer. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_navigationobstacle3d.rst b/classes/class_navigationobstacle3d.rst index 117ba1787..7120dc852 100644 --- a/classes/class_navigationobstacle3d.rst +++ b/classes/class_navigationobstacle3d.rst @@ -314,6 +314,7 @@ Based on ``value``, enables or disables the specified layer in the :ref:`avoidan Sets the :ref:`RID` of the navigation map this NavigationObstacle node should use and also updates the ``obstacle`` on the NavigationServer. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_navigationpathqueryparameters2d.rst b/classes/class_navigationpathqueryparameters2d.rst index 636993287..f12b746c1 100644 --- a/classes/class_navigationpathqueryparameters2d.rst +++ b/classes/class_navigationpathqueryparameters2d.rst @@ -38,25 +38,37 @@ Properties .. table:: :widths: auto - +------------------------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------+-------------------+ - | :ref:`RID` | :ref:`map` | ``RID()`` | - +------------------------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------+-------------------+ - | |bitfield|\[:ref:`PathMetadataFlags`\] | :ref:`metadata_flags` | ``7`` | - +------------------------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------+-------------------+ - | :ref:`int` | :ref:`navigation_layers` | ``1`` | - +------------------------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------+-------------------+ - | :ref:`PathPostProcessing` | :ref:`path_postprocessing` | ``0`` | - +------------------------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------+-------------------+ - | :ref:`PathfindingAlgorithm` | :ref:`pathfinding_algorithm` | ``0`` | - +------------------------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------+-------------------+ - | :ref:`float` | :ref:`simplify_epsilon` | ``0.0`` | - +------------------------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------+-------------------+ - | :ref:`bool` | :ref:`simplify_path` | ``false`` | - +------------------------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------+-------------------+ - | :ref:`Vector2` | :ref:`start_position` | ``Vector2(0, 0)`` | - +------------------------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------+-------------------+ - | :ref:`Vector2` | :ref:`target_position` | ``Vector2(0, 0)`` | - +------------------------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------+-------------------+ + +------------------------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------+-------------------+ + | :ref:`Array`\[:ref:`RID`\] | :ref:`excluded_regions` | ``[]`` | + +------------------------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------+-------------------+ + | :ref:`Array`\[:ref:`RID`\] | :ref:`included_regions` | ``[]`` | + +------------------------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------+-------------------+ + | :ref:`RID` | :ref:`map` | ``RID()`` | + +------------------------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------+-------------------+ + | |bitfield|\[:ref:`PathMetadataFlags`\] | :ref:`metadata_flags` | ``7`` | + +------------------------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------+-------------------+ + | :ref:`int` | :ref:`navigation_layers` | ``1`` | + +------------------------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------+-------------------+ + | :ref:`PathPostProcessing` | :ref:`path_postprocessing` | ``0`` | + +------------------------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------+-------------------+ + | :ref:`float` | :ref:`path_return_max_length` | ``0.0`` | + +------------------------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------+-------------------+ + | :ref:`float` | :ref:`path_return_max_radius` | ``0.0`` | + +------------------------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------+-------------------+ + | :ref:`float` | :ref:`path_search_max_distance` | ``0.0`` | + +------------------------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------+-------------------+ + | :ref:`int` | :ref:`path_search_max_polygons` | ``4096`` | + +------------------------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------+-------------------+ + | :ref:`PathfindingAlgorithm` | :ref:`pathfinding_algorithm` | ``0`` | + +------------------------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------+-------------------+ + | :ref:`float` | :ref:`simplify_epsilon` | ``0.0`` | + +------------------------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------+-------------------+ + | :ref:`bool` | :ref:`simplify_path` | ``false`` | + +------------------------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------+-------------------+ + | :ref:`Vector2` | :ref:`start_position` | ``Vector2(0, 0)`` | + +------------------------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------+-------------------+ + | :ref:`Vector2` | :ref:`target_position` | ``Vector2(0, 0)`` | + +------------------------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------+-------------------+ .. rst-class:: classref-section-separator @@ -174,6 +186,44 @@ Include all available metadata about the returned path. Property Descriptions --------------------- +.. _class_NavigationPathQueryParameters2D_property_excluded_regions: + +.. rst-class:: classref-property + +:ref:`Array`\[:ref:`RID`\] **excluded_regions** = ``[]`` :ref:`🔗` + +.. rst-class:: classref-property-setget + +- |void| **set_excluded_regions**\ (\ value\: :ref:`Array`\[:ref:`RID`\]\ ) +- :ref:`Array`\[:ref:`RID`\] **get_excluded_regions**\ (\ ) + +The list of region :ref:`RID`\ s that will be excluded from the path query. Use :ref:`NavigationRegion2D.get_rid()` to get the :ref:`RID` associated with a :ref:`NavigationRegion2D` node. + +\ **Note:** The returned array is copied and any changes to it will not update the original property value. To update the value you need to modify the returned array, and then set it to the property again. + +.. rst-class:: classref-item-separator + +---- + +.. _class_NavigationPathQueryParameters2D_property_included_regions: + +.. rst-class:: classref-property + +:ref:`Array`\[:ref:`RID`\] **included_regions** = ``[]`` :ref:`🔗` + +.. rst-class:: classref-property-setget + +- |void| **set_included_regions**\ (\ value\: :ref:`Array`\[:ref:`RID`\]\ ) +- :ref:`Array`\[:ref:`RID`\] **get_included_regions**\ (\ ) + +The list of region :ref:`RID`\ s that will be included by the path query. Use :ref:`NavigationRegion2D.get_rid()` to get the :ref:`RID` associated with a :ref:`NavigationRegion2D` node. If left empty all regions are included. If a region ends up being both included and excluded at the same time it will be excluded. + +\ **Note:** The returned array is copied and any changes to it will not update the original property value. To update the value you need to modify the returned array, and then set it to the property again. + +.. rst-class:: classref-item-separator + +---- + .. _class_NavigationPathQueryParameters2D_property_map: .. rst-class:: classref-property @@ -242,6 +292,76 @@ The path postprocessing applied to the raw path corridor found by the :ref:`path ---- +.. _class_NavigationPathQueryParameters2D_property_path_return_max_length: + +.. rst-class:: classref-property + +:ref:`float` **path_return_max_length** = ``0.0`` :ref:`🔗` + +.. rst-class:: classref-property-setget + +- |void| **set_path_return_max_length**\ (\ value\: :ref:`float`\ ) +- :ref:`float` **get_path_return_max_length**\ (\ ) + +The maximum allowed length of the returned path in world units. A path will be clipped when going over this length. A value of ``0`` or below counts as disabled. + +.. rst-class:: classref-item-separator + +---- + +.. _class_NavigationPathQueryParameters2D_property_path_return_max_radius: + +.. rst-class:: classref-property + +:ref:`float` **path_return_max_radius** = ``0.0`` :ref:`🔗` + +.. rst-class:: classref-property-setget + +- |void| **set_path_return_max_radius**\ (\ value\: :ref:`float`\ ) +- :ref:`float` **get_path_return_max_radius**\ (\ ) + +The maximum allowed radius in world units that the returned path can be from the path start. The path will be clipped when going over this radius. A value of ``0`` or below counts as disabled. + +\ **Note:** This will perform a circle shaped clip operation on the path with the first path position being the circle's center position. + +.. rst-class:: classref-item-separator + +---- + +.. _class_NavigationPathQueryParameters2D_property_path_search_max_distance: + +.. rst-class:: classref-property + +:ref:`float` **path_search_max_distance** = ``0.0`` :ref:`🔗` + +.. rst-class:: classref-property-setget + +- |void| **set_path_search_max_distance**\ (\ value\: :ref:`float`\ ) +- :ref:`float` **get_path_search_max_distance**\ (\ ) + +The maximum distance a searched polygon can be away from the start polygon before the pathfinding cancels the search for a path to the (possibly unreachable or very far away) target position polygon. In this case the pathfinding resets and builds a path from the start polygon to the polygon that was found closest to the target position so far. A value of ``0`` or below counts as unlimited. In case of unlimited the pathfinding will search all polygons connected with the start polygon until either the target position polygon is found or all available polygon search options are exhausted. + +.. rst-class:: classref-item-separator + +---- + +.. _class_NavigationPathQueryParameters2D_property_path_search_max_polygons: + +.. rst-class:: classref-property + +:ref:`int` **path_search_max_polygons** = ``4096`` :ref:`🔗` + +.. rst-class:: classref-property-setget + +- |void| **set_path_search_max_polygons**\ (\ value\: :ref:`int`\ ) +- :ref:`int` **get_path_search_max_polygons**\ (\ ) + +The maximum number of polygons that are searched before the pathfinding cancels the search for a path to the (possibly unreachable or very far away) target position polygon. In this case the pathfinding resets and builds a path from the start polygon to the polygon that was found closest to the target position so far. A value of ``0`` or below counts as unlimited. In case of unlimited the pathfinding will search all polygons connected with the start polygon until either the target position polygon is found or all available polygon search options are exhausted. + +.. rst-class:: classref-item-separator + +---- + .. _class_NavigationPathQueryParameters2D_property_pathfinding_algorithm: .. rst-class:: classref-property @@ -326,6 +446,7 @@ The pathfinding start position in global coordinates. The pathfinding target position in global coordinates. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_navigationpathqueryparameters3d.rst b/classes/class_navigationpathqueryparameters3d.rst index 9849c14aa..5148d6426 100644 --- a/classes/class_navigationpathqueryparameters3d.rst +++ b/classes/class_navigationpathqueryparameters3d.rst @@ -38,25 +38,37 @@ Properties .. table:: :widths: auto - +------------------------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------+----------------------+ - | :ref:`RID` | :ref:`map` | ``RID()`` | - +------------------------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------+----------------------+ - | |bitfield|\[:ref:`PathMetadataFlags`\] | :ref:`metadata_flags` | ``7`` | - +------------------------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------+----------------------+ - | :ref:`int` | :ref:`navigation_layers` | ``1`` | - +------------------------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------+----------------------+ - | :ref:`PathPostProcessing` | :ref:`path_postprocessing` | ``0`` | - +------------------------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------+----------------------+ - | :ref:`PathfindingAlgorithm` | :ref:`pathfinding_algorithm` | ``0`` | - +------------------------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------+----------------------+ - | :ref:`float` | :ref:`simplify_epsilon` | ``0.0`` | - +------------------------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------+----------------------+ - | :ref:`bool` | :ref:`simplify_path` | ``false`` | - +------------------------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------+----------------------+ - | :ref:`Vector3` | :ref:`start_position` | ``Vector3(0, 0, 0)`` | - +------------------------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------+----------------------+ - | :ref:`Vector3` | :ref:`target_position` | ``Vector3(0, 0, 0)`` | - +------------------------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------+----------------------+ + +------------------------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------+----------------------+ + | :ref:`Array`\[:ref:`RID`\] | :ref:`excluded_regions` | ``[]`` | + +------------------------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------+----------------------+ + | :ref:`Array`\[:ref:`RID`\] | :ref:`included_regions` | ``[]`` | + +------------------------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------+----------------------+ + | :ref:`RID` | :ref:`map` | ``RID()`` | + +------------------------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------+----------------------+ + | |bitfield|\[:ref:`PathMetadataFlags`\] | :ref:`metadata_flags` | ``7`` | + +------------------------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------+----------------------+ + | :ref:`int` | :ref:`navigation_layers` | ``1`` | + +------------------------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------+----------------------+ + | :ref:`PathPostProcessing` | :ref:`path_postprocessing` | ``0`` | + +------------------------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------+----------------------+ + | :ref:`float` | :ref:`path_return_max_length` | ``0.0`` | + +------------------------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------+----------------------+ + | :ref:`float` | :ref:`path_return_max_radius` | ``0.0`` | + +------------------------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------+----------------------+ + | :ref:`float` | :ref:`path_search_max_distance` | ``0.0`` | + +------------------------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------+----------------------+ + | :ref:`int` | :ref:`path_search_max_polygons` | ``4096`` | + +------------------------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------+----------------------+ + | :ref:`PathfindingAlgorithm` | :ref:`pathfinding_algorithm` | ``0`` | + +------------------------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------+----------------------+ + | :ref:`float` | :ref:`simplify_epsilon` | ``0.0`` | + +------------------------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------+----------------------+ + | :ref:`bool` | :ref:`simplify_path` | ``false`` | + +------------------------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------+----------------------+ + | :ref:`Vector3` | :ref:`start_position` | ``Vector3(0, 0, 0)`` | + +------------------------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------+----------------------+ + | :ref:`Vector3` | :ref:`target_position` | ``Vector3(0, 0, 0)`` | + +------------------------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------+----------------------+ .. rst-class:: classref-section-separator @@ -174,6 +186,44 @@ Include all available metadata about the returned path. Property Descriptions --------------------- +.. _class_NavigationPathQueryParameters3D_property_excluded_regions: + +.. rst-class:: classref-property + +:ref:`Array`\[:ref:`RID`\] **excluded_regions** = ``[]`` :ref:`🔗` + +.. rst-class:: classref-property-setget + +- |void| **set_excluded_regions**\ (\ value\: :ref:`Array`\[:ref:`RID`\]\ ) +- :ref:`Array`\[:ref:`RID`\] **get_excluded_regions**\ (\ ) + +The list of region :ref:`RID`\ s that will be excluded from the path query. Use :ref:`NavigationRegion3D.get_rid()` to get the :ref:`RID` associated with a :ref:`NavigationRegion3D` node. + +\ **Note:** The returned array is copied and any changes to it will not update the original property value. To update the value you need to modify the returned array, and then set it to the property again. + +.. rst-class:: classref-item-separator + +---- + +.. _class_NavigationPathQueryParameters3D_property_included_regions: + +.. rst-class:: classref-property + +:ref:`Array`\[:ref:`RID`\] **included_regions** = ``[]`` :ref:`🔗` + +.. rst-class:: classref-property-setget + +- |void| **set_included_regions**\ (\ value\: :ref:`Array`\[:ref:`RID`\]\ ) +- :ref:`Array`\[:ref:`RID`\] **get_included_regions**\ (\ ) + +The list of region :ref:`RID`\ s that will be included by the path query. Use :ref:`NavigationRegion3D.get_rid()` to get the :ref:`RID` associated with a :ref:`NavigationRegion3D` node. If left empty all regions are included. If a region ends up being both included and excluded at the same time it will be excluded. + +\ **Note:** The returned array is copied and any changes to it will not update the original property value. To update the value you need to modify the returned array, and then set it to the property again. + +.. rst-class:: classref-item-separator + +---- + .. _class_NavigationPathQueryParameters3D_property_map: .. rst-class:: classref-property @@ -242,6 +292,76 @@ The path postprocessing applied to the raw path corridor found by the :ref:`path ---- +.. _class_NavigationPathQueryParameters3D_property_path_return_max_length: + +.. rst-class:: classref-property + +:ref:`float` **path_return_max_length** = ``0.0`` :ref:`🔗` + +.. rst-class:: classref-property-setget + +- |void| **set_path_return_max_length**\ (\ value\: :ref:`float`\ ) +- :ref:`float` **get_path_return_max_length**\ (\ ) + +The maximum allowed length of the returned path in world units. A path will be clipped when going over this length. A value of ``0`` or below counts as disabled. + +.. rst-class:: classref-item-separator + +---- + +.. _class_NavigationPathQueryParameters3D_property_path_return_max_radius: + +.. rst-class:: classref-property + +:ref:`float` **path_return_max_radius** = ``0.0`` :ref:`🔗` + +.. rst-class:: classref-property-setget + +- |void| **set_path_return_max_radius**\ (\ value\: :ref:`float`\ ) +- :ref:`float` **get_path_return_max_radius**\ (\ ) + +The maximum allowed radius in world units that the returned path can be from the path start. The path will be clipped when going over this radius. A value of ``0`` or below counts as disabled. + +\ **Note:** This will perform a sphere shaped clip operation on the path with the first path position being the sphere's center position. + +.. rst-class:: classref-item-separator + +---- + +.. _class_NavigationPathQueryParameters3D_property_path_search_max_distance: + +.. rst-class:: classref-property + +:ref:`float` **path_search_max_distance** = ``0.0`` :ref:`🔗` + +.. rst-class:: classref-property-setget + +- |void| **set_path_search_max_distance**\ (\ value\: :ref:`float`\ ) +- :ref:`float` **get_path_search_max_distance**\ (\ ) + +The maximum distance a searched polygon can be away from the start polygon before the pathfinding cancels the search for a path to the (possibly unreachable or very far away) target position polygon. In this case the pathfinding resets and builds a path from the start polygon to the polygon that was found closest to the target position so far. A value of ``0`` or below counts as unlimited. In case of unlimited the pathfinding will search all polygons connected with the start polygon until either the target position polygon is found or all available polygon search options are exhausted. + +.. rst-class:: classref-item-separator + +---- + +.. _class_NavigationPathQueryParameters3D_property_path_search_max_polygons: + +.. rst-class:: classref-property + +:ref:`int` **path_search_max_polygons** = ``4096`` :ref:`🔗` + +.. rst-class:: classref-property-setget + +- |void| **set_path_search_max_polygons**\ (\ value\: :ref:`int`\ ) +- :ref:`int` **get_path_search_max_polygons**\ (\ ) + +The maximum number of polygons that are searched before the pathfinding cancels the search for a path to the (possibly unreachable or very far away) target position polygon. In this case the pathfinding resets and builds a path from the start polygon to the polygon that was found closest to the target position so far. A value of ``0`` or below counts as unlimited. In case of unlimited the pathfinding will search all polygons connected with the start polygon until either the target position polygon is found or all available polygon search options are exhausted. + +.. rst-class:: classref-item-separator + +---- + .. _class_NavigationPathQueryParameters3D_property_pathfinding_algorithm: .. rst-class:: classref-property @@ -326,6 +446,7 @@ The pathfinding start position in global coordinates. The pathfinding target position in global coordinates. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_navigationpathqueryresult2d.rst b/classes/class_navigationpathqueryresult2d.rst index 172115787..6966932e2 100644 --- a/classes/class_navigationpathqueryresult2d.rst +++ b/classes/class_navigationpathqueryresult2d.rst @@ -41,6 +41,8 @@ Properties +-----------------------------------------------------+----------------------------------------------------------------------------------+--------------------------+ | :ref:`PackedVector2Array` | :ref:`path` | ``PackedVector2Array()`` | +-----------------------------------------------------+----------------------------------------------------------------------------------+--------------------------+ + | :ref:`float` | :ref:`path_length` | ``0.0`` | + +-----------------------------------------------------+----------------------------------------------------------------------------------+--------------------------+ | :ref:`PackedInt64Array` | :ref:`path_owner_ids` | ``PackedInt64Array()`` | +-----------------------------------------------------+----------------------------------------------------------------------------------+--------------------------+ | :ref:`Array`\[:ref:`RID`\] | :ref:`path_rids` | ``[]`` | @@ -119,6 +121,23 @@ The resulting path array from the navigation query. All path array positions are ---- +.. _class_NavigationPathQueryResult2D_property_path_length: + +.. rst-class:: classref-property + +:ref:`float` **path_length** = ``0.0`` :ref:`🔗` + +.. rst-class:: classref-property-setget + +- |void| **set_path_length**\ (\ value\: :ref:`float`\ ) +- :ref:`float` **get_path_length**\ (\ ) + +Returns the length of the path. + +.. rst-class:: classref-item-separator + +---- + .. _class_NavigationPathQueryResult2D_property_path_owner_ids: .. rst-class:: classref-property @@ -188,6 +207,7 @@ Method Descriptions Reset the result object to its initial state. This is useful to reuse the object across multiple queries. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_navigationpathqueryresult3d.rst b/classes/class_navigationpathqueryresult3d.rst index 9860757ef..f2f266259 100644 --- a/classes/class_navigationpathqueryresult3d.rst +++ b/classes/class_navigationpathqueryresult3d.rst @@ -41,6 +41,8 @@ Properties +-----------------------------------------------------+----------------------------------------------------------------------------------+--------------------------+ | :ref:`PackedVector3Array` | :ref:`path` | ``PackedVector3Array()`` | +-----------------------------------------------------+----------------------------------------------------------------------------------+--------------------------+ + | :ref:`float` | :ref:`path_length` | ``0.0`` | + +-----------------------------------------------------+----------------------------------------------------------------------------------+--------------------------+ | :ref:`PackedInt64Array` | :ref:`path_owner_ids` | ``PackedInt64Array()`` | +-----------------------------------------------------+----------------------------------------------------------------------------------+--------------------------+ | :ref:`Array`\[:ref:`RID`\] | :ref:`path_rids` | ``[]`` | @@ -119,6 +121,23 @@ The resulting path array from the navigation query. All path array positions are ---- +.. _class_NavigationPathQueryResult3D_property_path_length: + +.. rst-class:: classref-property + +:ref:`float` **path_length** = ``0.0`` :ref:`🔗` + +.. rst-class:: classref-property-setget + +- |void| **set_path_length**\ (\ value\: :ref:`float`\ ) +- :ref:`float` **get_path_length**\ (\ ) + +Returns the length of the path. + +.. rst-class:: classref-item-separator + +---- + .. _class_NavigationPathQueryResult3D_property_path_owner_ids: .. rst-class:: classref-property @@ -188,6 +207,7 @@ Method Descriptions Reset the result object to its initial state. This is useful to reuse the object across multiple queries. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_navigationpolygon.rst b/classes/class_navigationpolygon.rst index e349874ea..f273124bc 100644 --- a/classes/class_navigationpolygon.rst +++ b/classes/class_navigationpolygon.rst @@ -303,6 +303,8 @@ Property Descriptions The distance to erode/shrink the walkable surface when baking the navigation mesh. +\ **Note:** The radius must be equal or higher than ``0.0``. If the radius is ``0.0``, it won't be possible to fix invalid outline overlaps and other precision errors during the baking process. As a result, some obstacles may be excluded incorrectly from the final navigation mesh, or may delete the navigation mesh's polygons. + .. rst-class:: classref-item-separator ---- @@ -407,7 +409,7 @@ Only used when :ref:`parsed_geometry_type`\ ) - :ref:`ParsedGeometryType` **get_parsed_geometry_type**\ (\ ) -Determines which type of nodes will be parsed as geometry. See :ref:`ParsedGeometryType` for possible values. +Determines which type of nodes will be parsed as geometry. .. rst-class:: classref-item-separator @@ -424,7 +426,7 @@ Determines which type of nodes will be parsed as geometry. See :ref:`ParsedGeome - |void| **set_sample_partition_type**\ (\ value\: :ref:`SamplePartitionType`\ ) - :ref:`SamplePartitionType` **get_sample_partition_type**\ (\ ) -Partitioning algorithm for creating the navigation mesh polys. See :ref:`SamplePartitionType` for possible values. +Partitioning algorithm for creating the navigation mesh polys. .. rst-class:: classref-item-separator @@ -460,7 +462,7 @@ Only used when :ref:`source_geometry_mode`\ ) - :ref:`SourceGeometryMode` **get_source_geometry_mode**\ (\ ) -The source of the geometry used when baking. See :ref:`SourceGeometryMode` for possible values. +The source of the geometry used when baking. .. rst-class:: classref-section-separator @@ -549,7 +551,7 @@ Clears the array of polygons, but it doesn't clear the array of outlines and ver :ref:`NavigationMesh` **get_navigation_mesh**\ (\ ) :ref:`🔗` -Returns the :ref:`NavigationMesh` resulting from this navigation polygon. This navigation mesh can be used to update the navigation mesh of a region with the :ref:`NavigationServer3D.region_set_navigation_mesh()` API directly (as 2D uses the 3D server behind the scene). +Returns the :ref:`NavigationMesh` resulting from this navigation polygon. This navigation mesh can be used to update the navigation mesh of a region with the :ref:`NavigationServer3D.region_set_navigation_mesh()` API directly. .. rst-class:: classref-item-separator @@ -686,6 +688,7 @@ Based on ``value``, enables or disables the specified layer in the :ref:`parsed_ Sets the vertices that can be then indexed to create polygons with the :ref:`add_polygon()` method. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_navigationregion2d.rst b/classes/class_navigationregion2d.rst index 5284319e0..1e7251504 100644 --- a/classes/class_navigationregion2d.rst +++ b/classes/class_navigationregion2d.rst @@ -344,6 +344,7 @@ Based on ``value``, enables or disables the specified layer in the :ref:`navigat Sets the :ref:`RID` of the navigation map this region should use. By default the region will automatically join the :ref:`World2D` default navigation map so this function is only required to override the default map. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_navigationregion3d.rst b/classes/class_navigationregion3d.rst index c926d3271..40b31eaec 100644 --- a/classes/class_navigationregion3d.rst +++ b/classes/class_navigationregion3d.rst @@ -344,6 +344,7 @@ Based on ``value``, enables or disables the specified layer in the :ref:`navigat Sets the :ref:`RID` of the navigation map this region should use. By default the region will automatically join the :ref:`World3D` default navigation map so this function is only required to override the default map. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_navigationserver2d.rst b/classes/class_navigationserver2d.rst index ce8ce19f6..1667c74a9 100644 --- a/classes/class_navigationserver2d.rst +++ b/classes/class_navigationserver2d.rst @@ -131,6 +131,8 @@ Methods +-----------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`Array`\[:ref:`RID`\] | :ref:`get_maps`\ (\ ) |const| | +-----------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`get_process_info`\ (\ process_info\: :ref:`ProcessInfo`\ ) |const| | + +-----------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`is_baking_navigation_polygon`\ (\ navigation_polygon\: :ref:`NavigationPolygon`\ ) |const| | +-----------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`RID` | :ref:`link_create`\ (\ ) | @@ -141,6 +143,8 @@ Methods +-----------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`float` | :ref:`link_get_enter_cost`\ (\ link\: :ref:`RID`\ ) |const| | +-----------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`link_get_iteration_id`\ (\ link\: :ref:`RID`\ ) |const| | + +-----------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`RID` | :ref:`link_get_map`\ (\ link\: :ref:`RID`\ ) |const| | +-----------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`link_get_navigation_layers`\ (\ link\: :ref:`RID`\ ) |const| | @@ -191,6 +195,8 @@ Methods +-----------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`Array`\[:ref:`RID`\] | :ref:`map_get_links`\ (\ map\: :ref:`RID`\ ) |const| | +-----------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`map_get_merge_rasterizer_cell_scale`\ (\ map\: :ref:`RID`\ ) |const| | + +-----------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`Array`\[:ref:`RID`\] | :ref:`map_get_obstacles`\ (\ map\: :ref:`RID`\ ) |const| | +-----------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`PackedVector2Array` | :ref:`map_get_path`\ (\ map\: :ref:`RID`, origin\: :ref:`Vector2`, destination\: :ref:`Vector2`, optimize\: :ref:`bool`, navigation_layers\: :ref:`int` = 1\ ) | @@ -213,6 +219,8 @@ Methods +-----------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`map_set_link_connection_radius`\ (\ map\: :ref:`RID`, radius\: :ref:`float`\ ) | +-----------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`map_set_merge_rasterizer_cell_scale`\ (\ map\: :ref:`RID`, scale\: :ref:`float`\ ) | + +-----------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`map_set_use_async_iterations`\ (\ map\: :ref:`RID`, enabled\: :ref:`bool`\ ) | +-----------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`map_set_use_edge_connections`\ (\ map\: :ref:`RID`, enabled\: :ref:`bool`\ ) | @@ -271,6 +279,8 @@ Methods +-----------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`float` | :ref:`region_get_enter_cost`\ (\ region\: :ref:`RID`\ ) |const| | +-----------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`region_get_iteration_id`\ (\ region\: :ref:`RID`\ ) |const| | + +-----------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`RID` | :ref:`region_get_map`\ (\ region\: :ref:`RID`\ ) |const| | +-----------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`region_get_navigation_layers`\ (\ region\: :ref:`RID`\ ) |const| | @@ -283,6 +293,8 @@ Methods +-----------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`float` | :ref:`region_get_travel_cost`\ (\ region\: :ref:`RID`\ ) |const| | +-----------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`region_get_use_async_iterations`\ (\ region\: :ref:`RID`\ ) |const| | + +-----------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`region_get_use_edge_connections`\ (\ region\: :ref:`RID`\ ) |const| | +-----------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`region_owns_point`\ (\ region\: :ref:`RID`, point\: :ref:`Vector2`\ ) |const| | @@ -303,8 +315,12 @@ Methods +-----------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`region_set_travel_cost`\ (\ region\: :ref:`RID`, travel_cost\: :ref:`float`\ ) | +-----------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`region_set_use_async_iterations`\ (\ region\: :ref:`RID`, enabled\: :ref:`bool`\ ) | + +-----------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`region_set_use_edge_connections`\ (\ region\: :ref:`RID`, enabled\: :ref:`bool`\ ) | +-----------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_active`\ (\ active\: :ref:`bool`\ ) | + +-----------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`set_debug_enabled`\ (\ enabled\: :ref:`bool`\ ) | +-----------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`PackedVector2Array` | :ref:`simplify_path`\ (\ path\: :ref:`PackedVector2Array`, epsilon\: :ref:`float`\ ) | @@ -323,6 +339,18 @@ Methods Signals ------- +.. _class_NavigationServer2D_signal_avoidance_debug_changed: + +.. rst-class:: classref-signal + +**avoidance_debug_changed**\ (\ ) :ref:`🔗` + +Emitted when avoidance debug settings are changed. Only available in debug builds. + +.. rst-class:: classref-item-separator + +---- + .. _class_NavigationServer2D_signal_map_changed: .. rst-class:: classref-signal @@ -349,6 +377,101 @@ Emitted when navigation debug settings are changed. Only available in debug buil .. rst-class:: classref-descriptions-group +Enumerations +------------ + +.. _enum_NavigationServer2D_ProcessInfo: + +.. rst-class:: classref-enumeration + +enum **ProcessInfo**: :ref:`🔗` + +.. _class_NavigationServer2D_constant_INFO_ACTIVE_MAPS: + +.. rst-class:: classref-enumeration-constant + +:ref:`ProcessInfo` **INFO_ACTIVE_MAPS** = ``0`` + +Constant to get the number of active navigation maps. + +.. _class_NavigationServer2D_constant_INFO_REGION_COUNT: + +.. rst-class:: classref-enumeration-constant + +:ref:`ProcessInfo` **INFO_REGION_COUNT** = ``1`` + +Constant to get the number of active navigation regions. + +.. _class_NavigationServer2D_constant_INFO_AGENT_COUNT: + +.. rst-class:: classref-enumeration-constant + +:ref:`ProcessInfo` **INFO_AGENT_COUNT** = ``2`` + +Constant to get the number of active navigation agents processing avoidance. + +.. _class_NavigationServer2D_constant_INFO_LINK_COUNT: + +.. rst-class:: classref-enumeration-constant + +:ref:`ProcessInfo` **INFO_LINK_COUNT** = ``3`` + +Constant to get the number of active navigation links. + +.. _class_NavigationServer2D_constant_INFO_POLYGON_COUNT: + +.. rst-class:: classref-enumeration-constant + +:ref:`ProcessInfo` **INFO_POLYGON_COUNT** = ``4`` + +Constant to get the number of navigation mesh polygons. + +.. _class_NavigationServer2D_constant_INFO_EDGE_COUNT: + +.. rst-class:: classref-enumeration-constant + +:ref:`ProcessInfo` **INFO_EDGE_COUNT** = ``5`` + +Constant to get the number of navigation mesh polygon edges. + +.. _class_NavigationServer2D_constant_INFO_EDGE_MERGE_COUNT: + +.. rst-class:: classref-enumeration-constant + +:ref:`ProcessInfo` **INFO_EDGE_MERGE_COUNT** = ``6`` + +Constant to get the number of navigation mesh polygon edges that were merged due to edge key overlap. + +.. _class_NavigationServer2D_constant_INFO_EDGE_CONNECTION_COUNT: + +.. rst-class:: classref-enumeration-constant + +:ref:`ProcessInfo` **INFO_EDGE_CONNECTION_COUNT** = ``7`` + +Constant to get the number of navigation mesh polygon edges that are considered connected by edge proximity. + +.. _class_NavigationServer2D_constant_INFO_EDGE_FREE_COUNT: + +.. rst-class:: classref-enumeration-constant + +:ref:`ProcessInfo` **INFO_EDGE_FREE_COUNT** = ``8`` + +Constant to get the number of navigation mesh polygon edges that could not be merged but may be still connected by edge proximity or with links. + +.. _class_NavigationServer2D_constant_INFO_OBSTACLE_COUNT: + +.. rst-class:: classref-enumeration-constant + +:ref:`ProcessInfo` **INFO_OBSTACLE_COUNT** = ``9`` + +Constant to get the number of active navigation obstacles. + +.. rst-class:: classref-section-separator + +---- + +.. rst-class:: classref-descriptions-group + Method Descriptions ------------------- @@ -674,7 +797,7 @@ Sets the maximum distance to other agents this agent takes into account in the n |void| **agent_set_paused**\ (\ agent\: :ref:`RID`, paused\: :ref:`bool`\ ) :ref:`🔗` -If ``paused`` is ``true`` the specified ``agent`` will not be processed, e.g. calculate avoidance velocities or receive avoidance callbacks. +If ``paused`` is ``true`` the specified ``agent`` will not be processed. For example, it will not calculate avoidance velocities or receive avoidance callbacks. .. rst-class:: classref-item-separator @@ -812,6 +935,18 @@ Returns all created navigation map :ref:`RID`\ s on the NavigationSer ---- +.. _class_NavigationServer2D_method_get_process_info: + +.. rst-class:: classref-method + +:ref:`int` **get_process_info**\ (\ process_info\: :ref:`ProcessInfo`\ ) |const| :ref:`🔗` + +Returns information about the current state of the NavigationServer. + +.. rst-class:: classref-item-separator + +---- + .. _class_NavigationServer2D_method_is_baking_navigation_polygon: .. rst-class:: classref-method @@ -872,6 +1007,20 @@ Returns the enter cost of this ``link``. ---- +.. _class_NavigationServer2D_method_link_get_iteration_id: + +.. rst-class:: classref-method + +:ref:`int` **link_get_iteration_id**\ (\ link\: :ref:`RID`\ ) |const| :ref:`🔗` + +Returns the current iteration ID of the navigation link. Every time the navigation link changes and synchronizes, the iteration ID increases. An iteration ID of ``0`` means the navigation link has never synchronized. + +\ **Note:** The iteration ID will wrap around to ``1`` after reaching its range limit. + +.. rst-class:: classref-item-separator + +---- + .. _class_NavigationServer2D_method_link_get_map: .. rst-class:: classref-method @@ -1070,6 +1219,8 @@ Create a new map. |void| **map_force_update**\ (\ map\: :ref:`RID`\ ) :ref:`🔗` +**Deprecated:** This method is no longer supported, as it is incompatible with asynchronous updates. It can only be used in a single-threaded context, at your own risk. + This function immediately forces synchronization of the specified navigation ``map`` :ref:`RID`. By default navigation maps are only synchronized at the end of each physics frame. This function can be used to immediately (re)calculate all the navigation meshes and region connections of the navigation map. This makes it possible to query a navigation path for a changed map immediately and in the same frame (multiple times if needed). Due to technical restrictions the current NavigationServer command queue will be flushed. This means all already queued update commands for this physics frame will be executed, even those intended for other maps, regions and agents not part of the specified map. The expensive computation of the navigation meshes and region connections of a map will only be done for the specified map. Other maps will receive the normal synchronization at the end of the physics frame. Should the specified map receive changes after the forced update it will update again as well when the other maps receive their update. @@ -1180,6 +1331,18 @@ Returns all navigation link :ref:`RID`\ s that are currently assigned ---- +.. _class_NavigationServer2D_method_map_get_merge_rasterizer_cell_scale: + +.. rst-class:: classref-method + +:ref:`float` **map_get_merge_rasterizer_cell_scale**\ (\ map\: :ref:`RID`\ ) |const| :ref:`🔗` + +Returns map's internal merge rasterizer cell scale. + +.. rst-class:: classref-item-separator + +---- + .. _class_NavigationServer2D_method_map_get_obstacles: .. rst-class:: classref-method @@ -1316,6 +1479,18 @@ Set the map's link connection radius used to connect links to navigation polygon ---- +.. _class_NavigationServer2D_method_map_set_merge_rasterizer_cell_scale: + +.. rst-class:: classref-method + +|void| **map_set_merge_rasterizer_cell_scale**\ (\ map\: :ref:`RID`, scale\: :ref:`float`\ ) :ref:`🔗` + +Set the map's internal merge rasterizer cell scale used to control merging sensitivity. + +.. rst-class:: classref-item-separator + +---- + .. _class_NavigationServer2D_method_map_set_use_async_iterations: .. rst-class:: classref-method @@ -1490,7 +1665,7 @@ Sets the navigation map :ref:`RID` for the obstacle. |void| **obstacle_set_paused**\ (\ obstacle\: :ref:`RID`, paused\: :ref:`bool`\ ) :ref:`🔗` -If ``paused`` is ``true`` the specified ``obstacle`` will not be processed, e.g. affect avoidance velocities. +If ``paused`` is ``true`` the specified ``obstacle`` will not be processed. For example, it will no longer affect avoidance velocities. .. rst-class:: classref-item-separator @@ -1668,6 +1843,20 @@ Returns the enter cost of this ``region``. ---- +.. _class_NavigationServer2D_method_region_get_iteration_id: + +.. rst-class:: classref-method + +:ref:`int` **region_get_iteration_id**\ (\ region\: :ref:`RID`\ ) |const| :ref:`🔗` + +Returns the current iteration ID of the navigation region. Every time the navigation region changes and synchronizes, the iteration ID increases. An iteration ID of ``0`` means the navigation region has never synchronized. + +\ **Note:** The iteration ID will wrap around to ``1`` after reaching its range limit. + +.. rst-class:: classref-item-separator + +---- + .. _class_NavigationServer2D_method_region_get_map: .. rst-class:: classref-method @@ -1744,6 +1933,18 @@ Returns the travel cost of this ``region``. ---- +.. _class_NavigationServer2D_method_region_get_use_async_iterations: + +.. rst-class:: classref-method + +:ref:`bool` **region_get_use_async_iterations**\ (\ region\: :ref:`RID`\ ) |const| :ref:`🔗` + +Returns ``true`` if the ``region`` uses an async synchronization process that runs on a background thread. + +.. rst-class:: classref-item-separator + +---- + .. _class_NavigationServer2D_method_region_get_use_edge_connections: .. rst-class:: classref-method @@ -1868,6 +2069,18 @@ Sets the ``travel_cost`` for this ``region``. ---- +.. _class_NavigationServer2D_method_region_set_use_async_iterations: + +.. rst-class:: classref-method + +|void| **region_set_use_async_iterations**\ (\ region\: :ref:`RID`, enabled\: :ref:`bool`\ ) :ref:`🔗` + +If ``enabled`` is ``true`` the ``region`` uses an async synchronization process that runs on a background thread. + +.. rst-class:: classref-item-separator + +---- + .. _class_NavigationServer2D_method_region_set_use_edge_connections: .. rst-class:: classref-method @@ -1880,6 +2093,18 @@ If ``enabled`` is ``true``, the navigation ``region`` will use edge connections ---- +.. _class_NavigationServer2D_method_set_active: + +.. rst-class:: classref-method + +|void| **set_active**\ (\ active\: :ref:`bool`\ ) :ref:`🔗` + +Control activation of this server. + +.. rst-class:: classref-item-separator + +---- + .. _class_NavigationServer2D_method_set_debug_enabled: .. rst-class:: classref-method @@ -1933,6 +2158,7 @@ Sets the ``callback`` :ref:`Callable` for the specific source ge - ``node`` - The :ref:`Node` that is parsed. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_navigationserver3d.rst b/classes/class_navigationserver3d.rst index 5b4231125..f254ff21f 100644 --- a/classes/class_navigationserver3d.rst +++ b/classes/class_navigationserver3d.rst @@ -151,6 +151,8 @@ Methods +-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`float` | :ref:`link_get_enter_cost`\ (\ link\: :ref:`RID`\ ) |const| | +-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`link_get_iteration_id`\ (\ link\: :ref:`RID`\ ) |const| | + +-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`RID` | :ref:`link_get_map`\ (\ link\: :ref:`RID`\ ) |const| | +-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`link_get_navigation_layers`\ (\ link\: :ref:`RID`\ ) |const| | @@ -311,6 +313,8 @@ Methods +-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`float` | :ref:`region_get_enter_cost`\ (\ region\: :ref:`RID`\ ) |const| | +-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`region_get_iteration_id`\ (\ region\: :ref:`RID`\ ) |const| | + +-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`RID` | :ref:`region_get_map`\ (\ region\: :ref:`RID`\ ) |const| | +-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`region_get_navigation_layers`\ (\ region\: :ref:`RID`\ ) |const| | @@ -323,6 +327,8 @@ Methods +-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`float` | :ref:`region_get_travel_cost`\ (\ region\: :ref:`RID`\ ) |const| | +-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`region_get_use_async_iterations`\ (\ region\: :ref:`RID`\ ) |const| | + +-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`region_get_use_edge_connections`\ (\ region\: :ref:`RID`\ ) |const| | +-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`region_owns_point`\ (\ region\: :ref:`RID`, point\: :ref:`Vector3`\ ) |const| | @@ -343,6 +349,8 @@ Methods +-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`region_set_travel_cost`\ (\ region\: :ref:`RID`, travel_cost\: :ref:`float`\ ) | +-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`region_set_use_async_iterations`\ (\ region\: :ref:`RID`, enabled\: :ref:`bool`\ ) | + +-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`region_set_use_edge_connections`\ (\ region\: :ref:`RID`, enabled\: :ref:`bool`\ ) | +-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`set_active`\ (\ active\: :ref:`bool`\ ) | @@ -859,7 +867,7 @@ Sets the maximum distance to other agents this agent takes into account in the n |void| **agent_set_paused**\ (\ agent\: :ref:`RID`, paused\: :ref:`bool`\ ) :ref:`🔗` -If ``paused`` is ``true`` the specified ``agent`` will not be processed, e.g. calculate avoidance velocities or receive avoidance callbacks. +If ``paused`` is ``true`` the specified ``agent`` will not be processed. For example, it will not calculate avoidance velocities or receive avoidance callbacks. .. rst-class:: classref-item-separator @@ -1019,7 +1027,7 @@ Returns all created navigation map :ref:`RID`\ s on the NavigationSer :ref:`int` **get_process_info**\ (\ process_info\: :ref:`ProcessInfo`\ ) |const| :ref:`🔗` -Returns information about the current state of the NavigationServer. See :ref:`ProcessInfo` for a list of available states. +Returns information about the current state of the NavigationServer. .. rst-class:: classref-item-separator @@ -1085,6 +1093,20 @@ Returns the enter cost of this ``link``. ---- +.. _class_NavigationServer3D_method_link_get_iteration_id: + +.. rst-class:: classref-method + +:ref:`int` **link_get_iteration_id**\ (\ link\: :ref:`RID`\ ) |const| :ref:`🔗` + +Returns the current iteration ID of the navigation link. Every time the navigation link changes and synchronizes, the iteration ID increases. An iteration ID of ``0`` means the navigation link has never synchronized. + +\ **Note:** The iteration ID will wrap around to ``1`` after reaching its range limit. + +.. rst-class:: classref-item-separator + +---- + .. _class_NavigationServer3D_method_link_get_map: .. rst-class:: classref-method @@ -1283,6 +1305,8 @@ Create a new map. |void| **map_force_update**\ (\ map\: :ref:`RID`\ ) :ref:`🔗` +**Deprecated:** This method is no longer supported, as it is incompatible with asynchronous updates. It can only be used in a single-threaded context, at your own risk. + This function immediately forces synchronization of the specified navigation ``map`` :ref:`RID`. By default navigation maps are only synchronized at the end of each physics frame. This function can be used to immediately (re)calculate all the navigation meshes and region connections of the navigation map. This makes it possible to query a navigation path for a changed map immediately and in the same frame (multiple times if needed). Due to technical restrictions the current NavigationServer command queue will be flushed. This means all already queued update commands for this physics frame will be executed, even those intended for other maps, regions and agents not part of the specified map. The expensive computation of the navigation meshes and region connections of a map will only be done for the specified map. Other maps will receive the normal synchronization at the end of the physics frame. Should the specified map receive changes after the forced update it will update again as well when the other maps receive their update. @@ -1837,7 +1861,7 @@ Assigns the ``obstacle`` to a navigation map. |void| **obstacle_set_paused**\ (\ obstacle\: :ref:`RID`, paused\: :ref:`bool`\ ) :ref:`🔗` -If ``paused`` is ``true`` the specified ``obstacle`` will not be processed, e.g. affect avoidance velocities. +If ``paused`` is ``true`` the specified ``obstacle`` will not be processed. For example, it will no longer affect avoidance velocities. .. rst-class:: classref-item-separator @@ -2067,6 +2091,20 @@ Returns the enter cost of this ``region``. ---- +.. _class_NavigationServer3D_method_region_get_iteration_id: + +.. rst-class:: classref-method + +:ref:`int` **region_get_iteration_id**\ (\ region\: :ref:`RID`\ ) |const| :ref:`🔗` + +Returns the current iteration ID of the navigation region. Every time the navigation region changes and synchronizes, the iteration ID increases. An iteration ID of ``0`` means the navigation region has never synchronized. + +\ **Note:** The iteration ID will wrap around to ``1`` after reaching its range limit. + +.. rst-class:: classref-item-separator + +---- + .. _class_NavigationServer3D_method_region_get_map: .. rst-class:: classref-method @@ -2143,6 +2181,18 @@ Returns the travel cost of this ``region``. ---- +.. _class_NavigationServer3D_method_region_get_use_async_iterations: + +.. rst-class:: classref-method + +:ref:`bool` **region_get_use_async_iterations**\ (\ region\: :ref:`RID`\ ) |const| :ref:`🔗` + +Returns ``true`` if the ``region`` uses an async synchronization process that runs on a background thread. + +.. rst-class:: classref-item-separator + +---- + .. _class_NavigationServer3D_method_region_get_use_edge_connections: .. rst-class:: classref-method @@ -2267,6 +2317,18 @@ Sets the ``travel_cost`` for this ``region``. ---- +.. _class_NavigationServer3D_method_region_set_use_async_iterations: + +.. rst-class:: classref-method + +|void| **region_set_use_async_iterations**\ (\ region\: :ref:`RID`, enabled\: :ref:`bool`\ ) :ref:`🔗` + +If ``enabled`` is ``true`` the ``region`` uses an async synchronization process that runs on a background thread. + +.. rst-class:: classref-item-separator + +---- + .. _class_NavigationServer3D_method_region_set_use_edge_connections: .. rst-class:: classref-method @@ -2344,6 +2406,7 @@ Sets the ``callback`` :ref:`Callable` for the specific source ge - ``node`` - The :ref:`Node` that is parsed. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_ninepatchrect.rst b/classes/class_ninepatchrect.rst index 7b12a9586..ab9f01b7f 100644 --- a/classes/class_ninepatchrect.rst +++ b/classes/class_ninepatchrect.rst @@ -141,7 +141,7 @@ Property Descriptions - |void| **set_h_axis_stretch_mode**\ (\ value\: :ref:`AxisStretchMode`\ ) - :ref:`AxisStretchMode` **get_h_axis_stretch_mode**\ (\ ) -The stretch mode to use for horizontal stretching/tiling. See :ref:`AxisStretchMode` for possible values. +The stretch mode to use for horizontal stretching/tiling. .. rst-class:: classref-item-separator @@ -158,7 +158,7 @@ The stretch mode to use for horizontal stretching/tiling. See :ref:`AxisStretchM - |void| **set_v_axis_stretch_mode**\ (\ value\: :ref:`AxisStretchMode`\ ) - :ref:`AxisStretchMode` **get_v_axis_stretch_mode**\ (\ ) -The stretch mode to use for vertical stretching/tiling. See :ref:`AxisStretchMode` for possible values. +The stretch mode to use for vertical stretching/tiling. .. rst-class:: classref-item-separator @@ -309,6 +309,7 @@ Returns the size of the margin on the specified :ref:`Side` to ``value`` pixels. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_node.rst b/classes/class_node.rst index 9c045ec43..f14b61aff 100644 --- a/classes/class_node.rst +++ b/classes/class_node.rst @@ -105,8 +105,12 @@ Methods +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`_exit_tree`\ (\ ) |virtual| | +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`PackedStringArray` | :ref:`_get_accessibility_configuration_warnings`\ (\ ) |virtual| |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`PackedStringArray` | :ref:`_get_configuration_warnings`\ (\ ) |virtual| |const| | +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`RID` | :ref:`_get_focused_accessibility_element`\ (\ ) |virtual| |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`_input`\ (\ event\: :ref:`InputEvent`\ ) |virtual| | +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`_physics_process`\ (\ delta\: :ref:`float`\ ) |virtual| | @@ -135,6 +139,8 @@ Methods +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`Variant` | :ref:`call_thread_safe`\ (\ method\: :ref:`StringName`, ...\ ) |vararg| | +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`can_auto_translate`\ (\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`can_process`\ (\ ) |const| | +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`Tween` | :ref:`create_tween`\ (\ ) | @@ -147,6 +153,8 @@ Methods +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`Node` | :ref:`find_parent`\ (\ pattern\: :ref:`String`\ ) |const| | +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`RID` | :ref:`get_accessibility_element`\ (\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`Node` | :ref:`get_child`\ (\ idx\: :ref:`int`, include_internal\: :ref:`bool` = false\ ) |const| | +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`get_child_count`\ (\ include_internal\: :ref:`bool` = false\ ) |const| | @@ -167,6 +175,10 @@ 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| | +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`NodePath` | :ref:`get_path`\ (\ ) |const| | @@ -177,8 +189,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| | @@ -249,6 +259,8 @@ Methods +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`propagate_notification`\ (\ what\: :ref:`int`\ ) | +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`queue_accessibility_update`\ (\ ) | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`queue_free`\ (\ ) | +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`remove_child`\ (\ node\: :ref:`Node`\ ) | @@ -624,7 +636,7 @@ enum **DuplicateFlags**: :ref:`🔗` :ref:`DuplicateFlags` **DUPLICATE_SIGNALS** = ``1`` -Duplicate the node's signal connections. +Duplicate the node's signal connections that are connected with the :ref:`Object.CONNECT_PERSIST` flag. .. _class_Node_constant_DUPLICATE_GROUPS: @@ -1023,6 +1035,14 @@ Notification received when the mouse cursor enters the :ref:`Viewport`'s visible area, that is not occluded behind other :ref:`Control`\ s or :ref:`Window`\ s, provided its :ref:`Viewport.gui_disable_input` is ``false`` and regardless if it's currently focused or not. +.. _class_Node_constant_NOTIFICATION_WM_POSITION_CHANGED: + +.. rst-class:: classref-constant + +**NOTIFICATION_WM_POSITION_CHANGED** = ``1012`` :ref:`🔗` + +Notification received when the window is moved. + .. _class_Node_constant_NOTIFICATION_OS_MEMORY_WARNING: .. rst-class:: classref-constant @@ -1131,6 +1151,22 @@ Implemented on desktop and mobile platforms. Notification received when the :ref:`TextServer` is changed. +.. _class_Node_constant_NOTIFICATION_ACCESSIBILITY_UPDATE: + +.. rst-class:: classref-constant + +**NOTIFICATION_ACCESSIBILITY_UPDATE** = ``3000`` :ref:`🔗` + +Notification received when an accessibility information update is required. + +.. _class_Node_constant_NOTIFICATION_ACCESSIBILITY_INVALIDATE: + +.. rst-class:: classref-constant + +**NOTIFICATION_ACCESSIBILITY_INVALIDATE** = ``3001`` :ref:`🔗` + +Notification received when accessibility elements are invalidated. All node accessibility elements are automatically deleted after receiving this message, therefore all existing references to such elements should be discarded. + .. rst-class:: classref-section-separator ---- @@ -1243,9 +1279,13 @@ The owner of this node. The owner must be an ancestor of this node. When packing - |void| **set_physics_interpolation_mode**\ (\ value\: :ref:`PhysicsInterpolationMode`\ ) - :ref:`PhysicsInterpolationMode` **get_physics_interpolation_mode**\ (\ ) -Allows enabling or disabling physics interpolation per node, offering a finer grain of control than turning physics interpolation on and off globally. See :ref:`ProjectSettings.physics/common/physics_interpolation` and :ref:`SceneTree.physics_interpolation` for the global setting. +The physics interpolation mode to use for this node. Only effective if :ref:`ProjectSettings.physics/common/physics_interpolation` or :ref:`SceneTree.physics_interpolation` is ``true``. -\ **Note:** When teleporting a node to a distant position you should temporarily disable interpolation with :ref:`reset_physics_interpolation()`. +By default, nodes inherit the physics interpolation mode from their parent. This property can enable or disable physics interpolation individually for each node, regardless of their parents' physics interpolation mode. + +\ **Note:** Some node types like :ref:`VehicleWheel3D` have physics interpolation disabled by default, as they rely on their own custom solution. + +\ **Note:** When teleporting a node to a distant position, it's recommended to temporarily disable interpolation with :ref:`reset_physics_interpolation()` *after* moving the node. This avoids creating a visual streak between the old and new positions. .. rst-class:: classref-item-separator @@ -1262,7 +1302,7 @@ Allows enabling or disabling physics interpolation per node, offering a finer gr - |void| **set_process_mode**\ (\ value\: :ref:`ProcessMode`\ ) - :ref:`ProcessMode` **get_process_mode**\ (\ ) -The node's processing behavior (see :ref:`ProcessMode`). To check if the node can process in its current mode, use :ref:`can_process()`. +The node's processing behavior. To check if the node can process in its current mode, use :ref:`can_process()`. .. rst-class:: classref-item-separator @@ -1428,6 +1468,20 @@ Corresponds to the :ref:`NOTIFICATION_EXIT_TREE` **_get_accessibility_configuration_warnings**\ (\ ) |virtual| |const| :ref:`🔗` + +The elements in the array returned from this method are displayed as warnings in the Scene dock if the script that overrides it is a ``tool`` script, and accessibility warnings are enabled in the editor settings. + +Returning an empty array produces no warnings. + +.. rst-class:: classref-item-separator + +---- + .. _class_Node_private_method__get_configuration_warnings: .. rst-class:: classref-method @@ -1446,7 +1500,7 @@ Call :ref:`update_configuration_warnings()` **_get_focused_accessibility_element**\ (\ ) |virtual| |const| :ref:`🔗` + +Called during accessibility information updates to determine the currently focused sub-element, should return a sub-element RID or the value returned by :ref:`get_accessibility_element()`. + +.. rst-class:: classref-item-separator + +---- + .. _class_Node_private_method__input: .. rst-class:: classref-method @@ -1483,9 +1549,9 @@ For gameplay input, :ref:`_unhandled_input()`\ ) |virtual| :ref:`🔗` -Called during the physics processing step of the main loop. Physics processing means that the frame rate is synced to the physics, i.e. the ``delta`` parameter will *generally* be constant (see exceptions below). ``delta`` is in seconds. +Called once on each physics tick, and allows Nodes to synchronize their logic with physics ticks. ``delta`` is the logical time between physics ticks in seconds and is equal to :ref:`Engine.time_scale` / :ref:`Engine.physics_ticks_per_second`. -It is only called if physics processing is enabled, which is done automatically if this method is overridden, and can be toggled with :ref:`set_physics_process()`. +It is only called if physics processing is enabled for this Node, which is done automatically if this method is overridden, and can be toggled with :ref:`set_physics_process()`. Processing happens in order of :ref:`process_physics_priority`, lower priority values are called first. Nodes with the same priority are processed in tree order, or top to bottom as seen in the editor (also known as pre-order traversal). @@ -1493,7 +1559,7 @@ Corresponds to the :ref:`NOTIFICATION_PHYSICS_PROCESS` / :ref:`Engine.max_physics_steps_per_frame` FPS. This is done to avoid "spiral of death" scenarios where performance would plummet due to an ever-increasing number of physics steps per frame. This behavior affects both :ref:`_process()` and :ref:`_physics_process()`. As a result, avoid using ``delta`` for time measurements in real-world seconds. Use the :ref:`Time` singleton's methods for this purpose instead, such as :ref:`Time.get_ticks_usec()`. +\ **Note:** Accumulated ``delta`` may diverge from real world seconds. .. rst-class:: classref-item-separator @@ -1505,9 +1571,9 @@ Corresponds to the :ref:`NOTIFICATION_PHYSICS_PROCESS`\ ) |virtual| :ref:`🔗` -Called during the processing step of the main loop. Processing happens at every frame and as fast as possible, so the ``delta`` time since the previous frame is not constant. ``delta`` is in seconds. +Called on each idle frame, prior to rendering, and after physics ticks have been processed. ``delta`` is the time between frames in seconds. -It is only called if processing is enabled, which is done automatically if this method is overridden, and can be toggled with :ref:`set_process()`. +It is only called if processing is enabled for this Node, which is done automatically if this method is overridden, and can be toggled with :ref:`set_process()`. Processing happens in order of :ref:`process_priority`, lower priority values are called first. Nodes with the same priority are processed in tree order, or top to bottom as seen in the editor (also known as pre-order traversal). @@ -1515,7 +1581,11 @@ Corresponds to the :ref:`NOTIFICATION_PROCESS` / :ref:`Engine.max_physics_steps_per_frame` FPS. This is done to avoid "spiral of death" scenarios where performance would plummet due to an ever-increasing number of physics steps per frame. This behavior affects both :ref:`_process()` and :ref:`_physics_process()`. As a result, avoid using ``delta`` for time measurements in real-world seconds. Use the :ref:`Time` singleton's methods for this purpose instead, such as :ref:`Time.get_ticks_usec()`. +\ **Note:** When the engine is struggling and the frame rate is lowered, ``delta`` will increase. When ``delta`` is increased, it's capped at a maximum of :ref:`Engine.time_scale` \* :ref:`Engine.max_physics_steps_per_frame` / :ref:`Engine.physics_ticks_per_second`. As a result, accumulated ``delta`` may not represent real world time. + +\ **Note:** When ``--fixed-fps`` is enabled or the engine is running in Movie Maker mode (see :ref:`MovieWriter`), process ``delta`` will always be the same for every frame, regardless of how much time the frame took to render. + +\ **Note:** Frame delta may be post-processed by :ref:`OS.delta_smoothing` if this is enabled for the project. .. rst-class:: classref-item-separator @@ -1611,7 +1681,7 @@ Adds a child ``node``. Nodes can have any number of children, but every child mu If ``force_readable_name`` is ``true``, improves the readability of the added ``node``. If not named, the ``node`` is renamed to its type, and if it shares :ref:`name` with a sibling, a number is suffixed more appropriately. This operation is very slow. As such, it is recommended leaving this to ``false``, which assigns a dummy name featuring ``@`` in both situations. -If ``internal`` is different than :ref:`INTERNAL_MODE_DISABLED`, the child will be added as internal node. These nodes are ignored by methods like :ref:`get_children()`, unless their parameter ``include_internal`` is ``true``. The intended usage is to hide the internal nodes from the user, so the user won't accidentally delete or modify them. Used by some GUI nodes, e.g. :ref:`ColorPicker`. See :ref:`InternalMode` for available modes. +If ``internal`` is different than :ref:`INTERNAL_MODE_DISABLED`, the child will be added as internal node. These nodes are ignored by methods like :ref:`get_children()`, unless their parameter ``include_internal`` is ``true``. It also prevents these nodes being duplicated with their parent. The intended usage is to hide the internal nodes from the user, so the user won't accidentally delete or modify them. Used by some GUI nodes, e.g. :ref:`ColorPicker`. \ **Note:** If ``node`` already has a parent, this method will fail. Use :ref:`remove_child()` first to remove ``node`` from its current parent. For example: @@ -1744,6 +1814,18 @@ This function ensures that the calling of this function will succeed, no matter ---- +.. _class_Node_method_can_auto_translate: + +.. rst-class:: classref-method + +:ref:`bool` **can_auto_translate**\ (\ ) |const| :ref:`🔗` + +Returns ``true`` if this node can automatically translate messages depending on the current locale. See :ref:`auto_translate_mode`, :ref:`atr()`, and :ref:`atr_n()`. + +.. rst-class:: classref-item-separator + +---- + .. _class_Node_method_can_process: .. rst-class:: classref-method @@ -1805,7 +1887,7 @@ The Tween will start automatically on the next process frame or physics frame (d :ref:`Node` **duplicate**\ (\ flags\: :ref:`int` = 15\ ) |const| :ref:`🔗` -Duplicates the node, returning a new node with all of its properties, signals, groups, and children copied from the original. The behavior can be tweaked through the ``flags`` (see :ref:`DuplicateFlags`). +Duplicates the node, returning a new node with all of its properties, signals, groups, and children copied from the original. The behavior can be tweaked through the ``flags`` (see :ref:`DuplicateFlags`). Internal nodes are not duplicated. \ **Note:** For nodes with a :ref:`Script` attached, if :ref:`Object._init()` has been defined with required parameters, the duplicated node will not have a :ref:`Script`. @@ -1869,13 +1951,27 @@ Finds the first ancestor of this node whose :ref:`name ---- +.. _class_Node_method_get_accessibility_element: + +.. rst-class:: classref-method + +:ref:`RID` **get_accessibility_element**\ (\ ) |const| :ref:`🔗` + +Returns main accessibility element RID. + +\ **Note:** This method should be called only during accessibility information updates (:ref:`NOTIFICATION_ACCESSIBILITY_UPDATE`). + +.. rst-class:: classref-item-separator + +---- + .. _class_Node_method_get_child: .. rst-class:: classref-method :ref:`Node` **get_child**\ (\ idx\: :ref:`int`, include_internal\: :ref:`bool` = false\ ) |const| :ref:`🔗` -Fetches a child node by its index. Each child node has an index relative its siblings (see :ref:`get_index()`). The first child is at index 0. Negative values can also be used to start from the end of the list. This method can be used in combination with :ref:`get_child_count()` to iterate over this node's children. If no child exists at the given index, this method returns ``null`` and an error is generated. +Fetches a child node by its index. Each child node has an index relative to its siblings (see :ref:`get_index()`). The first child is at index 0. Negative values can also be used to start from the end of the list. This method can be used in combination with :ref:`get_child_count()` to iterate over this node's children. If no child exists at the given index, this method returns ``null`` and an error is generated. If ``include_internal`` is ``false``, internal children are ignored (see :ref:`add_child()`'s ``internal`` parameter). @@ -1883,7 +1979,7 @@ If ``include_internal`` is ``false``, internal children are ignored (see :ref:`a # Assuming the following are children of this node, in order: # First, Middle, Last. - + var a = get_child(0).name # a is "First" var b = get_child(1).name # b is "Middle" var b = get_child(2).name # b is "Last" @@ -2064,7 +2160,7 @@ Fetches a node and its most nested resource as specified by the :ref:`NodePath`, referring to an existing, non-:ref:`Resource` property (see :ref:`Object.get_indexed()`). -\ **Example:** Assume that the child's :ref:`Sprite2D.texture` has been assigned a :ref:`AtlasTexture`: +\ **Example:** Assume that the child's :ref:`Sprite2D.texture` has been assigned an :ref:`AtlasTexture`: .. tabs:: @@ -2075,12 +2171,12 @@ Fetches a node and its most nested resource as specified by the :ref:`NodePath print(a[2]) # Prints ^"" - + var b = get_node_and_resource("Area2D/Sprite2D:texture:atlas") print(b[0].name) # Prints Sprite2D print(b[1].get_class()) # Prints AtlasTexture print(b[2]) # Prints ^"" - + var c = get_node_and_resource("Area2D/Sprite2D:texture:atlas:region") print(c[0].name) # Prints Sprite2D print(c[1].get_class()) # Prints AtlasTexture @@ -2092,12 +2188,12 @@ Fetches a node and its most nested resource as specified by the :ref:`NodePath GD.Print(a[2]); // Prints ^" - + var b = GetNodeAndResource(NodePath("Area2D/Sprite2D:texture:atlas")); GD.Print(b[0].name); // Prints Sprite2D GD.Print(b[1].get_class()); // Prints AtlasTexture GD.Print(b[2]); // Prints ^"" - + var c = GetNodeAndResource(NodePath("Area2D/Sprite2D:texture:atlas:region")); GD.Print(c[0].name); // Prints Sprite2D GD.Print(c[1].get_class()); // Prints AtlasTexture @@ -2121,6 +2217,34 @@ 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 + +:ref:`Array`\[:ref:`int`\] **get_orphan_node_ids**\ (\ ) |static| :ref:`🔗` + +Returns object IDs of all orphan nodes (nodes outside the :ref:`SceneTree`). Used for debugging. + +\ **Note:** :ref:`get_orphan_node_ids()` only works in debug builds. When called in a project exported in release mode, :ref:`get_orphan_node_ids()` will return an empty array. + +.. rst-class:: classref-item-separator + +---- + .. _class_Node_method_get_parent: .. rst-class:: classref-method @@ -2189,18 +2313,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 @@ -2679,6 +2791,18 @@ Calls :ref:`Object.notification()` with ``what ---- +.. _class_Node_method_queue_accessibility_update: + +.. rst-class:: classref-method + +|void| **queue_accessibility_update**\ (\ ) :ref:`🔗` + +Queues an accessibility information update for this node. + +.. rst-class:: classref-item-separator + +---- + .. _class_Node_method_queue_free: .. rst-class:: classref-method @@ -3007,7 +3131,7 @@ If set to ``true``, enables unhandled key input processing. |void| **set_scene_instance_load_placeholder**\ (\ load_placeholder\: :ref:`bool`\ ) :ref:`🔗` -If set to ``true``, the node becomes a :ref:`InstancePlaceholder` when packed and instantiated from a :ref:`PackedScene`. See also :ref:`get_scene_instance_load_placeholder()`. +If set to ``true``, the node becomes an :ref:`InstancePlaceholder` when packed and instantiated from a :ref:`PackedScene`. See also :ref:`get_scene_instance_load_placeholder()`. .. rst-class:: classref-item-separator @@ -3048,6 +3172,7 @@ This is the default behavior for all nodes. Calling :ref:`Object.set_translation Refreshes the warnings displayed for this node in the Scene dock. Use :ref:`_get_configuration_warnings()` to customize the warning messages to display. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_node2d.rst b/classes/class_node2d.rst index 8f7eed119..a6c51fc4c 100644 --- a/classes/class_node2d.rst +++ b/classes/class_node2d.rst @@ -459,6 +459,7 @@ Transforms the provided global position into a position in local coordinate spac Translates the node by the given ``offset`` in local coordinates. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_node3d.rst b/classes/class_node3d.rst index 8ba021f5f..0ff3cbf14 100644 --- a/classes/class_node3d.rst +++ b/classes/class_node3d.rst @@ -1,5 +1,8 @@ :github_url: hide +.. meta:: + :keywords: spatial + .. DO NOT EDIT THIS FILE!!! .. Generated automatically from Godot engine sources. .. Generator: https://github.com/godotengine/godot/tree/master/doc/tools/make_rst.py. @@ -12,22 +15,22 @@ Node3D **Inherits:** :ref:`Node` **<** :ref:`Object` -**Inherited By:** :ref:`AudioListener3D`, :ref:`AudioStreamPlayer3D`, :ref:`BoneAttachment3D`, :ref:`Camera3D`, :ref:`CollisionObject3D`, :ref:`CollisionPolygon3D`, :ref:`CollisionShape3D`, :ref:`GridMap`, :ref:`ImporterMeshInstance3D`, :ref:`Joint3D`, :ref:`LightmapProbe`, :ref:`Marker3D`, :ref:`NavigationLink3D`, :ref:`NavigationObstacle3D`, :ref:`NavigationRegion3D`, :ref:`OpenXRCompositionLayer`, :ref:`OpenXRHand`, :ref:`Path3D`, :ref:`PathFollow3D`, :ref:`RayCast3D`, :ref:`RemoteTransform3D`, :ref:`ShapeCast3D`, :ref:`Skeleton3D`, :ref:`SkeletonModifier3D`, :ref:`SpringArm3D`, :ref:`SpringBoneCollision3D`, :ref:`VehicleWheel3D`, :ref:`VisualInstance3D`, :ref:`XRFaceModifier3D`, :ref:`XRNode3D`, :ref:`XROrigin3D` +**Inherited By:** :ref:`AudioListener3D`, :ref:`AudioStreamPlayer3D`, :ref:`BoneAttachment3D`, :ref:`Camera3D`, :ref:`CollisionObject3D`, :ref:`CollisionPolygon3D`, :ref:`CollisionShape3D`, :ref:`GridMap`, :ref:`ImporterMeshInstance3D`, :ref:`Joint3D`, :ref:`LightmapProbe`, :ref:`Marker3D`, :ref:`NavigationLink3D`, :ref:`NavigationObstacle3D`, :ref:`NavigationRegion3D`, :ref:`OpenXRCompositionLayer`, :ref:`OpenXRHand`, :ref:`OpenXRRenderModel`, :ref:`OpenXRRenderModelManager`, :ref:`Path3D`, :ref:`PathFollow3D`, :ref:`RayCast3D`, :ref:`RemoteTransform3D`, :ref:`ShapeCast3D`, :ref:`Skeleton3D`, :ref:`SkeletonModifier3D`, :ref:`SpringArm3D`, :ref:`SpringBoneCollision3D`, :ref:`VehicleWheel3D`, :ref:`VisualInstance3D`, :ref:`XRFaceModifier3D`, :ref:`XRNode3D`, :ref:`XROrigin3D` -Most basic 3D game object, parent of all 3D-related nodes. +Base object in 3D space, inherited by all 3D nodes. .. rst-class:: classref-introduction-group Description ----------- -Most basic 3D game object, with a :ref:`Transform3D` and visibility settings. All other 3D game objects inherit from **Node3D**. Use **Node3D** as a parent node to move, scale, rotate and show/hide children in a 3D project. +The **Node3D** node is the base representation of a node in 3D space. All other 3D nodes inherit from this class. -Affine operations (rotate, scale, translate) happen in parent's local coordinate system, unless the **Node3D** object is set as top-level. Affine operations in this coordinate system correspond to direct affine operations on the **Node3D**'s transform. The word local below refers to this coordinate system. The coordinate system that is attached to the **Node3D** object itself is referred to as object-local coordinate system. +Affine operations (translation, rotation, scale) are calculated in the coordinate system relative to the parent, unless the **Node3D**'s :ref:`top_level` is ``true``. In this coordinate system, affine operations correspond to direct affine operations on the **Node3D**'s :ref:`transform`. The term *parent space* refers to this coordinate system. The coordinate system that is attached to the **Node3D** itself is referred to as object-local coordinate system, or *local space*. -\ **Note:** Unless otherwise specified, all methods that have angle parameters must have angles specified as *radians*. To convert degrees to radians, use :ref:`@GlobalScope.deg_to_rad()`. +\ **Note:** Unless otherwise specified, all methods that need angle parameters must receive angles in *radians*. To convert degrees to radians, use :ref:`@GlobalScope.deg_to_rad()`. -\ **Note:** Be aware that "Spatial" nodes are now called "Node3D" starting with Godot 4. Any Godot 3.x references to "Spatial" nodes refer to "Node3D" in Godot 4. +\ **Note:** In Godot 3 and older, **Node3D** was named *Spatial*. .. rst-class:: classref-introduction-group @@ -181,7 +184,9 @@ Signals **visibility_changed**\ (\ ) :ref:`🔗` -Emitted when node visibility changes. +Emitted when this node's visibility changes (see :ref:`visible` and :ref:`is_visible_in_tree()`). + +This signal is emitted *after* the related :ref:`NOTIFICATION_VISIBILITY_CHANGED` notification. .. rst-class:: classref-section-separator @@ -204,7 +209,7 @@ enum **RotationEditMode**: :ref:`🔗` :ref:`RotationEditMode` **ROTATION_EDIT_MODE_EULER** = ``0`` -The rotation is edited using :ref:`Vector3` Euler angles. +The rotation is edited using a :ref:`Vector3` in `Euler angles `__. .. _class_Node3D_constant_ROTATION_EDIT_MODE_QUATERNION: @@ -220,7 +225,7 @@ The rotation is edited using a :ref:`Quaternion`. :ref:`RotationEditMode` **ROTATION_EDIT_MODE_BASIS** = ``2`` -The rotation is edited using a :ref:`Basis`. In this mode, :ref:`scale` can't be edited separately. +The rotation is edited using a :ref:`Basis`. In this mode, the raw :ref:`basis`'s axes can be freely modified, but the :ref:`scale` property is not available. .. rst-class:: classref-section-separator @@ -237,9 +242,11 @@ Constants **NOTIFICATION_TRANSFORM_CHANGED** = ``2000`` :ref:`🔗` -**Node3D** nodes receive this notification when their global transform changes. This means that either the current or a parent node changed its transform. +Notification received when this node's :ref:`global_transform` changes, if :ref:`is_transform_notification_enabled()` is ``true``. See also :ref:`set_notify_transform()`. -In order for :ref:`NOTIFICATION_TRANSFORM_CHANGED` to work, users first need to ask for it, with :ref:`set_notify_transform()`. The notification is also sent if the node is in the editor context and it has at least one valid gizmo. +\ **Note:** Most 3D nodes such as :ref:`VisualInstance3D` or :ref:`CollisionObject3D` automatically enable this to function correctly. + +\ **Note:** In the editor, nodes will propagate this notification to their children if a gizmo is attached (see :ref:`add_gizmo()`). .. _class_Node3D_constant_NOTIFICATION_ENTER_WORLD: @@ -247,7 +254,7 @@ In order for :ref:`NOTIFICATION_TRANSFORM_CHANGED` -**Node3D** nodes receive this notification when they are registered to new :ref:`World3D` resource. +Notification received when this node is registered to a new :ref:`World3D` (see :ref:`get_world_3d()`). .. _class_Node3D_constant_NOTIFICATION_EXIT_WORLD: @@ -255,7 +262,7 @@ In order for :ref:`NOTIFICATION_TRANSFORM_CHANGED` -**Node3D** nodes receive this notification when they are unregistered from current :ref:`World3D` resource. +Notification received when this node is unregistered from the current :ref:`World3D` (see :ref:`get_world_3d()`). .. _class_Node3D_constant_NOTIFICATION_VISIBILITY_CHANGED: @@ -263,7 +270,9 @@ In order for :ref:`NOTIFICATION_TRANSFORM_CHANGED` -**Node3D** nodes receive this notification when their visibility changes. +Notification received when this node's visibility changes (see :ref:`visible` and :ref:`is_visible_in_tree()`). + +This notification is received *before* the related :ref:`visibility_changed` signal. .. _class_Node3D_constant_NOTIFICATION_LOCAL_TRANSFORM_CHANGED: @@ -271,9 +280,9 @@ In order for :ref:`NOTIFICATION_TRANSFORM_CHANGED` -**Node3D** nodes receive this notification when their local transform changes. This is not received when the transform of a parent node is changed. +Notification received when this node's :ref:`transform` changes, if :ref:`is_local_transform_notification_enabled()` is ``true``. This is not received when a parent **Node3D**'s :ref:`transform` changes. See also :ref:`set_notify_local_transform()`. -In order for :ref:`NOTIFICATION_LOCAL_TRANSFORM_CHANGED` to work, users first need to ask for it, with :ref:`set_notify_local_transform()`. +\ **Note:** Some 3D nodes such as :ref:`CSGShape3D` or :ref:`CollisionShape3D` automatically enable this to function correctly. .. rst-class:: classref-section-separator @@ -295,7 +304,7 @@ Property Descriptions - |void| **set_basis**\ (\ value\: :ref:`Basis`\ ) - :ref:`Basis` **get_basis**\ (\ ) -Basis of the :ref:`transform` property. Represents the rotation, scale, and shear of this node. +Basis of the :ref:`transform` property. Represents the rotation, scale, and shear of this node in parent space (relative to the parent node). .. rst-class:: classref-item-separator @@ -312,7 +321,9 @@ Basis of the :ref:`transform` property. Represe - |void| **set_global_basis**\ (\ value\: :ref:`Basis`\ ) - :ref:`Basis` **get_global_basis**\ (\ ) -Global basis of this node. This is equivalent to ``global_transform.basis``. +Basis of the :ref:`global_transform` property. Represents the rotation, scale, and shear of this node in global space (relative to the world). + +\ **Note:** If the node is not inside the tree, getting this property fails and returns :ref:`Basis.IDENTITY`. .. rst-class:: classref-item-separator @@ -329,7 +340,9 @@ Global basis of this node. This is equivalent to ``global_transform.basis``. - |void| **set_global_position**\ (\ value\: :ref:`Vector3`\ ) - :ref:`Vector3` **get_global_position**\ (\ ) -Global position of this node. This is equivalent to ``global_transform.origin``. +Global position (translation) of this node in global space (relative to the world). This is equivalent to the :ref:`global_transform`'s :ref:`Transform3D.origin`. + +\ **Note:** If the node is not inside the tree, getting this property fails and returns :ref:`Vector3.ZERO`. .. rst-class:: classref-item-separator @@ -346,9 +359,17 @@ Global position of this node. This is equivalent to ``global_transform.origin``. - |void| **set_global_rotation**\ (\ value\: :ref:`Vector3`\ ) - :ref:`Vector3` **get_global_rotation**\ (\ ) -Rotation part of the global transformation in radians, specified in terms of YXZ-Euler angles in the format (X angle, Y angle, Z angle). +Global rotation of this node as `Euler angles `__, in radians and in global space (relative to the world). This value is obtained from :ref:`global_basis`'s rotation. -\ **Note:** In the mathematical sense, rotation is a matrix and not a vector. The three Euler angles, which are the three independent parameters of the Euler-angle parametrization of the rotation matrix, are stored in a :ref:`Vector3` data structure not because the rotation is a vector, but only because :ref:`Vector3` exists as a convenient data-structure to store 3 floating-point numbers. Therefore, applying affine operations on the rotation "vector" is not meaningful. +- The :ref:`Vector3.x` is the angle around the global X axis (pitch); + +- The :ref:`Vector3.y` is the angle around the global Y axis (yaw); + +- The :ref:`Vector3.z` is the angle around the global Z axis (roll). + +\ **Note:** Unlike :ref:`rotation`, this property always follows the YXZ convention (:ref:`@GlobalScope.EULER_ORDER_YXZ`). + +\ **Note:** If the node is not inside the tree, getting this property fails and returns :ref:`Vector3.ZERO`. .. rst-class:: classref-item-separator @@ -365,7 +386,9 @@ Rotation part of the global transformation in radians, specified in terms of YXZ - |void| **set_global_rotation_degrees**\ (\ value\: :ref:`Vector3`\ ) - :ref:`Vector3` **get_global_rotation_degrees**\ (\ ) -Helper property to access :ref:`global_rotation` in degrees instead of radians. +The :ref:`global_rotation` of this node, in degrees instead of radians. + +\ **Note:** If the node is not inside the tree, getting this property fails and returns :ref:`Vector3.ZERO`. .. rst-class:: classref-item-separator @@ -382,7 +405,9 @@ Helper property to access :ref:`global_rotation`\ ) - :ref:`Transform3D` **get_global_transform**\ (\ ) -World3D space (global) :ref:`Transform3D` of this node. +The transformation of this node, in global space (relative to the world). Contains and represents this node's :ref:`global_position`, :ref:`global_rotation`, and global scale. + +\ **Note:** If the node is not inside the tree, getting this property fails and returns :ref:`Transform3D.IDENTITY`. .. rst-class:: classref-item-separator @@ -399,7 +424,7 @@ World3D space (global) :ref:`Transform3D` of this node. - |void| **set_position**\ (\ value\: :ref:`Vector3`\ ) - :ref:`Vector3` **get_position**\ (\ ) -Local position or translation of this node relative to the parent. This is equivalent to ``transform.origin``. +Position (translation) of this node in parent space (relative to the parent node). This is equivalent to the :ref:`transform`'s :ref:`Transform3D.origin`. .. rst-class:: classref-item-separator @@ -416,7 +441,9 @@ Local position or translation of this node relative to the parent. This is equiv - |void| **set_quaternion**\ (\ value\: :ref:`Quaternion`\ ) - :ref:`Quaternion` **get_quaternion**\ (\ ) -Access to the node rotation as a :ref:`Quaternion`. This property is ideal for tweening complex rotations. +Rotation of this node represented as a :ref:`Quaternion` in parent space (relative to the parent node). This value is obtained from :ref:`basis`'s rotation. + +\ **Note:** Quaternions are much more suitable for 3D math but are less intuitive. Setting this property can be useful for interpolation (see :ref:`Quaternion.slerp()`). .. rst-class:: classref-item-separator @@ -433,11 +460,17 @@ Access to the node rotation as a :ref:`Quaternion`. This prope - |void| **set_rotation**\ (\ value\: :ref:`Vector3`\ ) - :ref:`Vector3` **get_rotation**\ (\ ) -Rotation part of the local transformation in radians, specified in terms of Euler angles. The angles construct a rotation in the order specified by the :ref:`rotation_order` property. +Rotation of this node as `Euler angles `__, in radians and in parent space (relative to the parent node). This value is obtained from :ref:`basis`'s rotation. -\ **Note:** In the mathematical sense, rotation is a matrix and not a vector. The three Euler angles, which are the three independent parameters of the Euler-angle parametrization of the rotation matrix, are stored in a :ref:`Vector3` data structure not because the rotation is a vector, but only because :ref:`Vector3` exists as a convenient data-structure to store 3 floating-point numbers. Therefore, applying affine operations on the rotation "vector" is not meaningful. +- The :ref:`Vector3.x` is the angle around the local X axis (pitch); -\ **Note:** This property is edited in the inspector in degrees. If you want to use degrees in a script, use :ref:`rotation_degrees`. +- The :ref:`Vector3.y` is the angle around the local Y axis (yaw); + +- The :ref:`Vector3.z` is the angle around the local Z axis (roll). + +The order of each consecutive rotation can be changed with :ref:`rotation_order` (see :ref:`EulerOrder` constants). By default, the YXZ convention is used (:ref:`@GlobalScope.EULER_ORDER_YXZ`). + +\ **Note:** This property is edited in degrees in the inspector. If you want to use degrees in a script, use :ref:`rotation_degrees`. .. rst-class:: classref-item-separator @@ -454,7 +487,9 @@ Rotation part of the local transformation in radians, specified in terms of Eule - |void| **set_rotation_degrees**\ (\ value\: :ref:`Vector3`\ ) - :ref:`Vector3` **get_rotation_degrees**\ (\ ) -Helper property to access :ref:`rotation` in degrees instead of radians. +The :ref:`rotation` of this node, in degrees instead of radians. + +\ **Note:** This is **not** the property available in the Inspector dock. .. rst-class:: classref-item-separator @@ -471,7 +506,7 @@ Helper property to access :ref:`rotation` in deg - |void| **set_rotation_edit_mode**\ (\ value\: :ref:`RotationEditMode`\ ) - :ref:`RotationEditMode` **get_rotation_edit_mode**\ (\ ) -Specify how rotation (and scale) will be presented in the editor. +How this node's rotation and scale are displayed in the Inspector dock. .. rst-class:: classref-item-separator @@ -488,7 +523,7 @@ Specify how rotation (and scale) will be presented in the editor. - |void| **set_rotation_order**\ (\ value\: :ref:`EulerOrder`\ ) - :ref:`EulerOrder` **get_rotation_order**\ (\ ) -Specify the axis rotation order of the :ref:`rotation` property. The final orientation is constructed by rotating the Euler angles in the order specified by this property. +The axis rotation order of the :ref:`rotation` property. The final orientation is calculated by rotating around the local X, Y, and Z axis in this order. .. rst-class:: classref-item-separator @@ -505,11 +540,11 @@ Specify the axis rotation order of the :ref:`rotation`\ ) - :ref:`Vector3` **get_scale**\ (\ ) -Scale part of the local transformation. +Scale of this node in local space (relative to this node). This value is obtained from :ref:`basis`'s scale. -\ **Note:** Mixed negative scales in 3D are not decomposable from the transformation matrix. Due to the way scale is represented with transformation matrices in Godot, the scale values will either be all positive or all negative. +\ **Note:** The behavior of some 3D node types is not affected by this property. These include :ref:`Light3D`, :ref:`Camera3D`, :ref:`AudioStreamPlayer3D`, and more. -\ **Note:** Not all nodes are visually scaled by the :ref:`scale` property. For example, :ref:`Light3D`\ s are not visually affected by :ref:`scale`. +\ **Warning:** The scale's components must either be all positive or all negative, and **not** exactly ``0.0``. Otherwise, it won't be possible to obtain the scale from the :ref:`basis`. This may cause the intended scale to be lost when reloaded from disk, and potentially other unstable behavior. .. rst-class:: classref-item-separator @@ -526,7 +561,7 @@ Scale part of the local transformation. - |void| **set_as_top_level**\ (\ value\: :ref:`bool`\ ) - :ref:`bool` **is_set_as_top_level**\ (\ ) -If ``true``, the node will not inherit its transformations from its parent. Node transformations are only in global space. +If ``true``, the node does not inherit its transformations from its parent. As such, node transformations will only be in global space, which also means that :ref:`global_transform` and :ref:`transform` will be identical. .. rst-class:: classref-item-separator @@ -543,7 +578,7 @@ If ``true``, the node will not inherit its transformations from its parent. Node - |void| **set_transform**\ (\ value\: :ref:`Transform3D`\ ) - :ref:`Transform3D` **get_transform**\ (\ ) -Local space :ref:`Transform3D` of this node, with respect to the parent node. +The local transformation of this node, in parent space (relative to the parent node). Contains and represents this node's :ref:`position`, :ref:`rotation`, and :ref:`scale`. .. rst-class:: classref-item-separator @@ -560,7 +595,9 @@ Local space :ref:`Transform3D` of this node, with respect to - |void| **set_visibility_parent**\ (\ value\: :ref:`NodePath`\ ) - :ref:`NodePath` **get_visibility_parent**\ (\ ) -Defines the visibility range parent for this node and its subtree. The visibility parent must be a GeometryInstance3D. Any visual instance will only be visible if the visibility parent (and all of its visibility ancestors) is hidden by being closer to the camera than its own :ref:`GeometryInstance3D.visibility_range_begin`. Nodes hidden via the :ref:`visible` property are essentially removed from the visibility dependency tree, so dependent instances will not take the hidden node or its ancestors into account. +Path to the visibility range parent for this node and its descendants. The visibility parent must be a :ref:`GeometryInstance3D`. + +Any visual instance will only be visible if the visibility parent (and all of its visibility ancestors) is hidden by being closer to the camera than its own :ref:`GeometryInstance3D.visibility_range_begin`. Nodes hidden via the :ref:`visible` property are essentially removed from the visibility dependency tree, so dependent instances will not take the hidden node or its descendants into account. .. rst-class:: classref-item-separator @@ -577,7 +614,7 @@ Defines the visibility range parent for this node and its subtree. The visibilit - |void| **set_visible**\ (\ value\: :ref:`bool`\ ) - :ref:`bool` **is_visible**\ (\ ) -If ``true``, this node is drawn. The node is only visible if all of its ancestors are visible as well (in other words, :ref:`is_visible_in_tree()` must return ``true``). +If ``true``, this node can be visible. The node is only rendered when all of its ancestors are visible, as well. That means :ref:`is_visible_in_tree()` must return ``true``. .. rst-class:: classref-section-separator @@ -594,9 +631,9 @@ Method Descriptions |void| **add_gizmo**\ (\ gizmo\: :ref:`Node3DGizmo`\ ) :ref:`🔗` -Attach an editor gizmo to this **Node3D**. +Attaches the given ``gizmo`` to this node. Only works in the editor. -\ **Note:** The gizmo object would typically be an instance of :ref:`EditorNode3DGizmo`, but the argument type is kept generic to avoid creating a dependency on editor classes in **Node3D**. +\ **Note:** ``gizmo`` should be an :ref:`EditorNode3DGizmo`. The argument type is :ref:`Node3DGizmo` to avoid depending on editor classes in **Node3D**. .. rst-class:: classref-item-separator @@ -608,7 +645,7 @@ Attach an editor gizmo to this **Node3D**. |void| **clear_gizmos**\ (\ ) :ref:`🔗` -Clear all gizmos attached to this **Node3D**. +Clears all :ref:`EditorNode3DGizmo` objects attached to this node. Only works in the editor. .. rst-class:: classref-item-separator @@ -620,7 +657,7 @@ Clear all gizmos attached to this **Node3D**. |void| **clear_subgizmo_selection**\ (\ ) :ref:`🔗` -Clears subgizmo selection for this node in the editor. Useful when subgizmo IDs become invalid after a property change. +Deselects all subgizmos for this node. Useful to call when the selected subgizmo may no longer exist after a property change. Only works in the editor. .. rst-class:: classref-item-separator @@ -632,7 +669,9 @@ Clears subgizmo selection for this node in the editor. Useful when subgizmo IDs |void| **force_update_transform**\ (\ ) :ref:`🔗` -Forces the transform to update. Transform changes in physics are not instant for performance reasons. Transforms are accumulated and then set. Use this if you need an up-to-date transform when doing physics operations. +Forces the node's :ref:`global_transform` to update, by sending :ref:`NOTIFICATION_TRANSFORM_CHANGED`. Fails if the node is not inside the tree. + +\ **Note:** For performance reasons, transform changes are usually accumulated and applied *once* at the end of the frame. The update propagates through **Node3D** children, as well. Therefore, use this method only when you need an up-to-date transform (such as during physics operations). .. rst-class:: classref-item-separator @@ -644,7 +683,7 @@ Forces the transform to update. Transform changes in physics are not instant for :ref:`Array`\[:ref:`Node3DGizmo`\] **get_gizmos**\ (\ ) |const| :ref:`🔗` -Returns all the gizmos attached to this **Node3D**. +Returns all the :ref:`EditorNode3DGizmo` objects attached to this node. Only works in the editor. .. rst-class:: classref-item-separator @@ -672,9 +711,9 @@ This is particularly important for frame-based operations that take place in :re :ref:`Node3D` **get_parent_node_3d**\ (\ ) |const| :ref:`🔗` -Returns the parent **Node3D**, or ``null`` if no parent exists, the parent is not of type **Node3D**, or :ref:`top_level` is ``true``. +Returns the parent **Node3D** that directly affects this node's :ref:`global_transform`. Returns ``null`` if no parent exists, the parent is not a **Node3D**, or :ref:`top_level` is ``true``. -\ **Note:** Calling this method is not equivalent to ``get_parent() as Node3D``, which does not take :ref:`top_level` into account. +\ **Note:** This method is not always equivalent to :ref:`Node.get_parent()`, which does not take :ref:`top_level` into account. .. rst-class:: classref-item-separator @@ -686,7 +725,9 @@ Returns the parent **Node3D**, or ``null`` if no parent exists, the parent is no :ref:`World3D` **get_world_3d**\ (\ ) |const| :ref:`🔗` -Returns the current :ref:`World3D` resource this **Node3D** node is registered to. +Returns the :ref:`World3D` this node is registered to. + +Usually, this is the same as the world used by this node's viewport (see :ref:`Node.get_viewport()` and :ref:`Viewport.find_world_3d()`). .. rst-class:: classref-item-separator @@ -698,7 +739,7 @@ Returns the current :ref:`World3D` resource this **Node3D** node |void| **global_rotate**\ (\ axis\: :ref:`Vector3`, angle\: :ref:`float`\ ) :ref:`🔗` -Rotates the global (world) transformation around axis, a unit :ref:`Vector3`, by specified angle in radians. The rotation axis is in global coordinate system. +Rotates this node's :ref:`global_basis` around the global ``axis`` by the given ``angle``, in radians. This operation is calculated in global space (relative to the world) and preserves the :ref:`global_position`. .. rst-class:: classref-item-separator @@ -710,7 +751,9 @@ Rotates the global (world) transformation around axis, a unit :ref:`Vector3`\ ) :ref:`🔗` -Scales the global (world) transformation by the given :ref:`Vector3` scale factors. +Scales this node's :ref:`global_basis` by the given ``scale`` factor. This operation is calculated in global space (relative to the world) and preserves the :ref:`global_position`. + +\ **Note:** This method is not to be confused with the :ref:`scale` property. .. rst-class:: classref-item-separator @@ -722,7 +765,7 @@ Scales the global (world) transformation by the given :ref:`Vector3`\ ) :ref:`🔗` -Moves the global (world) transformation by :ref:`Vector3` offset. The offset is in global coordinate system. +Adds the given translation ``offset`` to the node's :ref:`global_position` in global space (relative to the world). .. rst-class:: classref-item-separator @@ -734,7 +777,7 @@ Moves the global (world) transformation by :ref:`Vector3` offset. |void| **hide**\ (\ ) :ref:`🔗` -Disables rendering of this node. Changes :ref:`visible` to ``false``. +Prevents this node from being rendered. Equivalent to setting :ref:`visible` to ``false``. This is the opposite of :ref:`show()`. .. rst-class:: classref-item-separator @@ -746,7 +789,7 @@ Disables rendering of this node. Changes :ref:`visible` **is_local_transform_notification_enabled**\ (\ ) |const| :ref:`🔗` -Returns whether node notifies about its local transformation changes. **Node3D** will not propagate this by default. +Returns ``true`` if the node receives :ref:`NOTIFICATION_LOCAL_TRANSFORM_CHANGED` whenever :ref:`transform` changes. This is enabled with :ref:`set_notify_local_transform()`. .. rst-class:: classref-item-separator @@ -758,7 +801,9 @@ Returns whether node notifies about its local transformation changes. **Node3D** :ref:`bool` **is_scale_disabled**\ (\ ) |const| :ref:`🔗` -Returns whether this node uses a scale of ``(1, 1, 1)`` or its local transformation scale. +Returns ``true`` if this node's :ref:`global_transform` is automatically orthonormalized. This results in this node not appearing distorted, as if its global scale were set to :ref:`Vector3.ONE` (or its negative counterpart). See also :ref:`set_disable_scale()` and :ref:`orthonormalize()`. + +\ **Note:** :ref:`transform` is not affected by this setting. .. rst-class:: classref-item-separator @@ -770,7 +815,7 @@ Returns whether this node uses a scale of ``(1, 1, 1)`` or its local transformat :ref:`bool` **is_transform_notification_enabled**\ (\ ) |const| :ref:`🔗` -Returns whether the node notifies about its global and local transformation changes. **Node3D** will not propagate this by default. +Returns ``true`` if the node receives :ref:`NOTIFICATION_TRANSFORM_CHANGED` whenever :ref:`global_transform` changes. This is enabled with :ref:`set_notify_transform()`. .. rst-class:: classref-item-separator @@ -782,11 +827,9 @@ Returns whether the node notifies about its global and local transformation chan :ref:`bool` **is_visible_in_tree**\ (\ ) |const| :ref:`🔗` -Returns ``true`` if the node is present in the :ref:`SceneTree`, its :ref:`visible` property is ``true`` and all its ancestors are also visible. If any ancestor is hidden, this node will not be visible in the scene tree. +Returns ``true`` if this node is inside the scene tree and the :ref:`visible` property is ``true`` for this node and all of its **Node3D** ancestors *in sequence*. An ancestor of any other type (such as :ref:`Node` or :ref:`Node2D`) breaks the sequence. See also :ref:`Node.get_parent()`. -Visibility is checked only in parent nodes that inherit from **Node3D**. If the parent is of any other type (such as :ref:`Node`, :ref:`AnimationPlayer`, or :ref:`Node2D`), it is assumed to be visible. - -\ **Note:** This method does not take :ref:`VisualInstance3D.layers` into account, so even if this method returns ``true``, the node might end up not being rendered. +\ **Note:** This method cannot take :ref:`VisualInstance3D.layers` into account, so even if this method returns ``true``, the node may not be rendered. .. rst-class:: classref-item-separator @@ -798,18 +841,16 @@ Visibility is checked only in parent nodes that inherit from **Node3D**. If the |void| **look_at**\ (\ target\: :ref:`Vector3`, up\: :ref:`Vector3` = Vector3(0, 1, 0), use_model_front\: :ref:`bool` = false\ ) :ref:`🔗` -Rotates the node so that the local forward axis (-Z, :ref:`Vector3.FORWARD`) points toward the ``target`` position. +Rotates the node so that the local forward axis (-Z, :ref:`Vector3.FORWARD`) points toward the ``target`` position. This operation is calculated in global space (relative to the world). The local up axis (+Y) points as close to the ``up`` vector as possible while staying perpendicular to the local forward axis. The resulting transform is orthogonal, and the scale is preserved. Non-uniform scaling may not work correctly. -The ``target`` position cannot be the same as the node's position, the ``up`` vector cannot be zero. - -The ``target`` and the ``up`` cannot be :ref:`Vector3.ZERO`, and shouldn't be colinear to avoid unintended rotation around local Z axis. - -Operations take place in global space, which means that the node must be in the scene tree. +The ``target`` position cannot be the same as the node's position, the ``up`` vector cannot be :ref:`Vector3.ZERO`. Furthermore, the direction from the node's position to the ``target`` position cannot be parallel to the ``up`` vector, to avoid an unintended rotation around the local Z axis. If ``use_model_front`` is ``true``, the +Z axis (asset front) is treated as forward (implies +X is left) and points toward the ``target`` position. By default, the -Z axis (camera forward) is treated as forward (implies +X is right). +\ **Note:** This method fails if the node is not in the scene tree. If necessary, use :ref:`look_at_from_position()` instead. + .. rst-class:: classref-item-separator ---- @@ -820,7 +861,7 @@ If ``use_model_front`` is ``true``, the +Z axis (asset front) is treated as forw |void| **look_at_from_position**\ (\ position\: :ref:`Vector3`, target\: :ref:`Vector3`, up\: :ref:`Vector3` = Vector3(0, 1, 0), use_model_front\: :ref:`bool` = false\ ) :ref:`🔗` -Moves the node to the specified ``position``, and then rotates the node to point toward the ``target`` as per :ref:`look_at()`. Operations take place in global space. +Moves the node to the specified ``position``, then rotates the node to point toward the ``target`` position, similar to :ref:`look_at()`. This operation is calculated in global space (relative to the world). .. rst-class:: classref-item-separator @@ -832,7 +873,7 @@ Moves the node to the specified ``position``, and then rotates the node to point |void| **orthonormalize**\ (\ ) :ref:`🔗` -Resets this node's transformations (like scale, skew and taper) preserving its rotation and translation by performing Gram-Schmidt orthonormalization on this node's :ref:`Transform3D`. +Orthonormalizes this node's :ref:`basis`. This method sets this node's :ref:`scale` to :ref:`Vector3.ONE` (or its negative counterpart), but preserves the :ref:`position` and :ref:`rotation`. See also :ref:`Transform3D.orthonormalized()`. .. rst-class:: classref-item-separator @@ -844,7 +885,7 @@ Resets this node's transformations (like scale, skew and taper) preserving its r |void| **rotate**\ (\ axis\: :ref:`Vector3`, angle\: :ref:`float`\ ) :ref:`🔗` -Rotates the local transformation around axis, a unit :ref:`Vector3`, by specified angle in radians. +Rotates this node's :ref:`basis` around the ``axis`` by the given ``angle``, in radians. This operation is calculated in parent space (relative to the parent) and preserves the :ref:`position`. .. rst-class:: classref-item-separator @@ -856,7 +897,7 @@ Rotates the local transformation around axis, a unit :ref:`Vector3`, angle\: :ref:`float`\ ) :ref:`🔗` -Rotates the local transformation around axis, a unit :ref:`Vector3`, by specified angle in radians. The rotation axis is in object-local coordinate system. +Rotates this node's :ref:`basis` around the ``axis`` by the given ``angle``, in radians. This operation is calculated in local space (relative to this node) and preserves the :ref:`position`. .. rst-class:: classref-item-separator @@ -868,7 +909,7 @@ Rotates the local transformation around axis, a unit :ref:`Vector3`\ ) :ref:`🔗` -Rotates the local transformation around the X axis by angle in radians. +Rotates this node's :ref:`basis` around the X axis by the given ``angle``, in radians. This operation is calculated in parent space (relative to the parent) and preserves the :ref:`position`. .. rst-class:: classref-item-separator @@ -880,7 +921,7 @@ Rotates the local transformation around the X axis by angle in radians. |void| **rotate_y**\ (\ angle\: :ref:`float`\ ) :ref:`🔗` -Rotates the local transformation around the Y axis by angle in radians. +Rotates this node's :ref:`basis` around the Y axis by the given ``angle``, in radians. This operation is calculated in parent space (relative to the parent) and preserves the :ref:`position`. .. rst-class:: classref-item-separator @@ -892,7 +933,7 @@ Rotates the local transformation around the Y axis by angle in radians. |void| **rotate_z**\ (\ angle\: :ref:`float`\ ) :ref:`🔗` -Rotates the local transformation around the Z axis by angle in radians. +Rotates this node's :ref:`basis` around the Z axis by the given ``angle``, in radians. This operation is calculated in parent space (relative to the parent) and preserves the :ref:`position`. .. rst-class:: classref-item-separator @@ -904,7 +945,7 @@ Rotates the local transformation around the Z axis by angle in radians. |void| **scale_object_local**\ (\ scale\: :ref:`Vector3`\ ) :ref:`🔗` -Scales the local transformation by given 3D scale factors in object-local coordinate system. +Scales this node's :ref:`basis` by the given ``scale`` factor. This operation is calculated in local space (relative to this node) and preserves the :ref:`position`. .. rst-class:: classref-item-separator @@ -916,7 +957,9 @@ Scales the local transformation by given 3D scale factors in object-local coordi |void| **set_disable_scale**\ (\ disable\: :ref:`bool`\ ) :ref:`🔗` -Sets whether the node uses a scale of ``(1, 1, 1)`` or its local transformation scale. Changes to the local transformation scale are preserved. +If ``true``, this node's :ref:`global_transform` is automatically orthonormalized. This results in this node not appearing distorted, as if its global scale were set to :ref:`Vector3.ONE` (or its negative counterpart). See also :ref:`is_scale_disabled()` and :ref:`orthonormalize()`. + +\ **Note:** :ref:`transform` is not affected by this setting. .. rst-class:: classref-item-separator @@ -928,7 +971,7 @@ Sets whether the node uses a scale of ``(1, 1, 1)`` or its local transformation |void| **set_identity**\ (\ ) :ref:`🔗` -Reset all transformations for this node (sets its :ref:`Transform3D` to the identity matrix). +Sets this node's :ref:`transform` to :ref:`Transform3D.IDENTITY`, which resets all transformations in parent space (:ref:`position`, :ref:`rotation`, and :ref:`scale`). .. rst-class:: classref-item-separator @@ -940,7 +983,9 @@ Reset all transformations for this node (sets its :ref:`Transform3D`\ ) :ref:`🔗` -Sets whether the node ignores notification that its transformation (global or local) changed. +If ``true``, the node will not receive :ref:`NOTIFICATION_TRANSFORM_CHANGED` or :ref:`NOTIFICATION_LOCAL_TRANSFORM_CHANGED`. + +It may useful to call this method when handling these notifications to prevent infinite recursion. .. rst-class:: classref-item-separator @@ -952,7 +997,9 @@ Sets whether the node ignores notification that its transformation (global or lo |void| **set_notify_local_transform**\ (\ enable\: :ref:`bool`\ ) :ref:`🔗` -Sets whether the node notifies about its local transformation changes. **Node3D** will not propagate this by default. +If ``true``, the node will receive :ref:`NOTIFICATION_LOCAL_TRANSFORM_CHANGED` whenever :ref:`transform` changes. + +\ **Note:** Some 3D nodes such as :ref:`CSGShape3D` or :ref:`CollisionShape3D` automatically enable this to function correctly. .. rst-class:: classref-item-separator @@ -964,7 +1011,11 @@ Sets whether the node notifies about its local transformation changes. **Node3D* |void| **set_notify_transform**\ (\ enable\: :ref:`bool`\ ) :ref:`🔗` -Sets whether the node notifies about its global and local transformation changes. **Node3D** will not propagate this by default, unless it is in the editor context and it has a valid gizmo. +If ``true``, the node will receive :ref:`NOTIFICATION_TRANSFORM_CHANGED` whenever :ref:`global_transform` changes. + +\ **Note:** Most 3D nodes such as :ref:`VisualInstance3D` or :ref:`CollisionObject3D` automatically enable this to function correctly. + +\ **Note:** In the editor, nodes will propagate this notification to their children if a gizmo is attached (see :ref:`add_gizmo()`). .. rst-class:: classref-item-separator @@ -976,7 +1027,7 @@ Sets whether the node notifies about its global and local transformation changes |void| **set_subgizmo_selection**\ (\ gizmo\: :ref:`Node3DGizmo`, id\: :ref:`int`, transform\: :ref:`Transform3D`\ ) :ref:`🔗` -Set subgizmo selection for this node in the editor. +Selects the ``gizmo``'s subgizmo with the given ``id`` and sets its transform. Only works in the editor. \ **Note:** The gizmo object would typically be an instance of :ref:`EditorNode3DGizmo`, but the argument type is kept generic to avoid creating a dependency on editor classes in **Node3D**. @@ -990,7 +1041,7 @@ Set subgizmo selection for this node in the editor. |void| **show**\ (\ ) :ref:`🔗` -Enables rendering of this node. Changes :ref:`visible` to ``true``. +Allows this node to be rendered. Equivalent to setting :ref:`visible` to ``true``. This is the opposite of :ref:`hide()`. .. rst-class:: classref-item-separator @@ -1002,7 +1053,7 @@ Enables rendering of this node. Changes :ref:`visible` **to_global**\ (\ local_point\: :ref:`Vector3`\ ) |const| :ref:`🔗` -Transforms ``local_point`` from this node's local space to world space. +Returns the ``local_point`` converted from this node's local space to global space. This is the opposite of :ref:`to_local()`. .. rst-class:: classref-item-separator @@ -1014,7 +1065,7 @@ Transforms ``local_point`` from this node's local space to world space. :ref:`Vector3` **to_local**\ (\ global_point\: :ref:`Vector3`\ ) |const| :ref:`🔗` -Transforms ``global_point`` from world space to this node's local space. +Returns the ``global_point`` converted from global space to this node's local space. This is the opposite of :ref:`to_global()`. .. rst-class:: classref-item-separator @@ -1026,9 +1077,11 @@ Transforms ``global_point`` from world space to this node's local space. |void| **translate**\ (\ offset\: :ref:`Vector3`\ ) :ref:`🔗` -Changes the node's position by the given offset :ref:`Vector3`. +Adds the given translation ``offset`` to the node's position, in local space (relative to this node). -Note that the translation ``offset`` is affected by the node's scale, so if scaled by e.g. ``(10, 1, 1)``, a translation by an offset of ``(2, 0, 0)`` would actually add 20 (``2 * 10``) to the X coordinate. +\ **Note:** Prefer using :ref:`translate_object_local()`, instead, as this method may be changed in a future release. + +\ **Note:** Despite the naming convention, this operation is **not** calculated in parent space for compatibility reasons. To translate in parent space, add ``offset`` to the :ref:`position` (``node_3d.position += offset``). .. rst-class:: classref-item-separator @@ -1040,7 +1093,7 @@ Note that the translation ``offset`` is affected by the node's scale, so if scal |void| **translate_object_local**\ (\ offset\: :ref:`Vector3`\ ) :ref:`🔗` -Changes the node's position by the given offset :ref:`Vector3` in local space. +Adds the given translation ``offset`` to the node's position, in local space (relative to this node). .. rst-class:: classref-item-separator @@ -1052,9 +1105,10 @@ Changes the node's position by the given offset :ref:`Vector3` in |void| **update_gizmos**\ (\ ) :ref:`🔗` -Updates all the **Node3D** gizmos attached to this node. +Updates all the :ref:`EditorNode3DGizmo` objects attached to this node. Only works in the editor. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_node3dgizmo.rst b/classes/class_node3dgizmo.rst index fbbf5c0b4..2fc682527 100644 --- a/classes/class_node3dgizmo.rst +++ b/classes/class_node3dgizmo.rst @@ -26,6 +26,7 @@ This abstract class helps connect the :ref:`Node3D` scene with the \ **Node3DGizmo** by itself has no exposed API, refer to :ref:`Node3D.add_gizmo()` and pass it an :ref:`EditorNode3DGizmo` instance. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_nodepath.rst b/classes/class_nodepath.rst index 67e436196..0267c773f 100644 --- a/classes/class_nodepath.rst +++ b/classes/class_nodepath.rst @@ -177,18 +177,18 @@ The following strings can be valid node paths: # Points to the Sprite2D node. "Level/RigidBody2D/Sprite2D" - + # Points to the Sprite2D node and its "texture" resource. # get_node() would retrieve the Sprite2D, while get_node_and_resource() # would retrieve both the Sprite2D node and the "texture" resource. "Level/RigidBody2D/Sprite2D:texture" - + # Points to the Sprite2D node and its "position" property. "Level/RigidBody2D/Sprite2D:position" - + # Points to the Sprite2D node and the "x" component of its "position" property. "Level/RigidBody2D/Sprite2D:position:x" - + # Points to the RigidBody2D node as an absolute path beginning from the SceneTree. "/root/Level/RigidBody2D" @@ -218,7 +218,7 @@ Returns a copy of this node path with a colon character (``:``) prefixed, transf # node_path points to the "x" property of the child node named "position". var node_path = ^"position:x" - + # property_path points to the "position" in the "x" axis of this node. var property_path = node_path.get_as_property_path() print(property_path) # Prints ":position:x" @@ -227,7 +227,7 @@ Returns a copy of this node path with a colon character (``:``) prefixed, transf // nodePath points to the "x" property of the child node named "position". var nodePath = new NodePath("position:x"); - + // propertyPath points to the "position" in the "x" axis of this node. NodePath propertyPath = nodePath.GetAsPropertyPath(); GD.Print(propertyPath); // Prints ":position:x" @@ -445,6 +445,7 @@ Returns ``true`` if two node paths are not equal. Returns ``true`` if two node paths are equal, that is, they are composed of the same node names and subnames in the same order. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_noise.rst b/classes/class_noise.rst index b91e4e25e..37d471ecd 100644 --- a/classes/class_noise.rst +++ b/classes/class_noise.rst @@ -177,6 +177,7 @@ Returns an :ref:`Array` of :ref:`Image`\ s containing \ **Note:** With ``normalize`` set to ``false``, the default implementation expects the noise generator to return values in the range ``-1.0`` to ``1.0``. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_noisetexture2d.rst b/classes/class_noisetexture2d.rst index dee13cea2..95b08c129 100644 --- a/classes/class_noisetexture2d.rst +++ b/classes/class_noisetexture2d.rst @@ -287,6 +287,7 @@ Used for the default/fallback implementation of the seamless texture generation. Width of the generated texture (in pixels). .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_noisetexture3d.rst b/classes/class_noisetexture3d.rst index 9679dcbe0..a29176fb5 100644 --- a/classes/class_noisetexture3d.rst +++ b/classes/class_noisetexture3d.rst @@ -225,6 +225,7 @@ Used for the default/fallback implementation of the seamless texture generation. Width of the generated texture (in pixels). .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_object.rst b/classes/class_object.rst index 3e5daeab0..f76ba7ab7 100644 --- a/classes/class_object.rst +++ b/classes/class_object.rst @@ -10,7 +10,7 @@ Object ====== -**Inherited By:** :ref:`AudioServer`, :ref:`CameraServer`, :ref:`ClassDB`, :ref:`DisplayServer`, :ref:`EditorFileSystemDirectory`, :ref:`EditorInterface`, :ref:`EditorPaths`, :ref:`EditorSelection`, :ref:`EditorUndoRedoManager`, :ref:`EditorVCSInterface`, :ref:`Engine`, :ref:`EngineDebugger`, :ref:`FramebufferCacheRD`, :ref:`GDExtensionManager`, :ref:`Geometry2D`, :ref:`Geometry3D`, :ref:`Input`, :ref:`InputMap`, :ref:`IP`, :ref:`JavaClassWrapper`, :ref:`JavaScriptBridge`, :ref:`JNISingleton`, :ref:`JSONRPC`, :ref:`MainLoop`, :ref:`Marshalls`, :ref:`MovieWriter`, :ref:`NativeMenu`, :ref:`NavigationMeshGenerator`, :ref:`NavigationServer2D`, :ref:`NavigationServer3D`, :ref:`Node`, :ref:`OpenXRExtensionWrapperExtension`, :ref:`OpenXRInteractionProfileMetadata`, :ref:`OS`, :ref:`Performance`, :ref:`PhysicsDirectBodyState2D`, :ref:`PhysicsDirectBodyState3D`, :ref:`PhysicsDirectSpaceState2D`, :ref:`PhysicsDirectSpaceState3D`, :ref:`PhysicsServer2D`, :ref:`PhysicsServer2DManager`, :ref:`PhysicsServer3D`, :ref:`PhysicsServer3DManager`, :ref:`PhysicsServer3DRenderingServerHandler`, :ref:`ProjectSettings`, :ref:`RefCounted`, :ref:`RenderData`, :ref:`RenderingDevice`, :ref:`RenderingServer`, :ref:`RenderSceneData`, :ref:`ResourceLoader`, :ref:`ResourceSaver`, :ref:`ResourceUID`, :ref:`ScriptLanguage`, :ref:`ShaderIncludeDB`, :ref:`TextServerManager`, :ref:`ThemeDB`, :ref:`TileData`, :ref:`Time`, :ref:`TranslationServer`, :ref:`TreeItem`, :ref:`UndoRedo`, :ref:`UniformSetCacheRD`, :ref:`WorkerThreadPool`, :ref:`XRServer`, :ref:`XRVRS` +**Inherited By:** :ref:`AudioServer`, :ref:`CameraServer`, :ref:`ClassDB`, :ref:`DisplayServer`, :ref:`EditorFileSystemDirectory`, :ref:`EditorInterface`, :ref:`EditorPaths`, :ref:`EditorSelection`, :ref:`EditorUndoRedoManager`, :ref:`EditorVCSInterface`, :ref:`Engine`, :ref:`EngineDebugger`, :ref:`FramebufferCacheRD`, :ref:`GDExtensionManager`, :ref:`Geometry2D`, :ref:`Geometry3D`, :ref:`Input`, :ref:`InputMap`, :ref:`IP`, :ref:`JavaClassWrapper`, :ref:`JavaScriptBridge`, :ref:`JNISingleton`, :ref:`JSONRPC`, :ref:`MainLoop`, :ref:`Marshalls`, :ref:`MovieWriter`, :ref:`NativeMenu`, :ref:`NavigationMeshGenerator`, :ref:`NavigationServer2D`, :ref:`NavigationServer3D`, :ref:`Node`, :ref:`OpenXRExtensionWrapper`, :ref:`OpenXRInteractionProfileMetadata`, :ref:`OS`, :ref:`Performance`, :ref:`PhysicsDirectBodyState2D`, :ref:`PhysicsDirectBodyState3D`, :ref:`PhysicsDirectSpaceState2D`, :ref:`PhysicsDirectSpaceState3D`, :ref:`PhysicsServer2D`, :ref:`PhysicsServer2DManager`, :ref:`PhysicsServer3D`, :ref:`PhysicsServer3DManager`, :ref:`PhysicsServer3DRenderingServerHandler`, :ref:`ProjectSettings`, :ref:`RefCounted`, :ref:`RenderData`, :ref:`RenderingDevice`, :ref:`RenderingServer`, :ref:`RenderSceneData`, :ref:`ResourceLoader`, :ref:`ResourceSaver`, :ref:`ResourceUID`, :ref:`ScriptLanguage`, :ref:`ShaderIncludeDB`, :ref:`TextServerManager`, :ref:`ThemeDB`, :ref:`TileData`, :ref:`Time`, :ref:`TranslationServer`, :ref:`TreeItem`, :ref:`UndoRedo`, :ref:`UniformSetCacheRD`, :ref:`WorkerThreadPool`, :ref:`XRServer`, :ref:`XRVRS` Base class for all other classes in the engine. @@ -56,7 +56,7 @@ Lastly, every object can also contain metadata (data about data). :ref:`set_meta Tutorials --------- -- :doc:`Object class introduction <../contributing/development/core_and_modules/object_class>` +- :doc:`Object class introduction <../engine_details/architecture/object_class>` - :doc:`When and how to avoid using nodes for everything <../tutorials/best_practices/node_alternatives>` @@ -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 ---- @@ -324,7 +332,9 @@ Method Descriptions Override this method to customize the behavior of :ref:`get()`. Should return the given ``property``'s value, or ``null`` if the ``property`` should be handled normally. -Combined with :ref:`_set()` and :ref:`_get_property_list()`, this method allows defining custom properties, which is particularly useful for editor plugins. Note that a property must be present in :ref:`get_property_list()`, otherwise this method will not be called. +Combined with :ref:`_set()` and :ref:`_get_property_list()`, this method allows defining custom properties, which is particularly useful for editor plugins. + +\ **Note:** This method is not called when getting built-in properties of an object, including properties defined with :ref:`@GDScript.@export`. .. tabs:: @@ -335,7 +345,7 @@ Combined with :ref:`_set()` and :ref:`_get_pro if property == "fake_property": print("Getting my property!") return 4 - + func _get_property_list(): return [ { "name": "fake_property", "type": TYPE_INT } @@ -352,7 +362,7 @@ Combined with :ref:`_set()` and :ref:`_get_pro } return default; } - + public override Godot.Collections.Array _GetPropertyList() { return @@ -392,18 +402,18 @@ The example below displays a list of numbers shown as words going from ``ZERO`` @tool extends Node - + @export var number_count = 3: set(nc): number_count = nc numbers.resize(number_count) notify_property_list_changed() - + var numbers = PackedInt32Array([0, 0, 0]) - + func _get_property_list(): var properties = [] - + for i in range(number_count): properties.append({ "name": "number_%d" % i, @@ -411,14 +421,14 @@ The example below displays a list of numbers shown as words going from ``ZERO`` "hint": PROPERTY_HINT_ENUM, "hint_string": "ZERO,ONE,TWO,THREE,FOUR,FIVE", }) - + return properties - + func _get(property): if property.begins_with("number_"): var index = property.get_slice("_", 1).to_int() return numbers[index] - + func _set(property, value): if property.begins_with("number_"): var index = property.get_slice("_", 1).to_int() @@ -432,7 +442,7 @@ The example below displays a list of numbers shown as words going from ``ZERO`` public partial class MyNode : Node { private int _numberCount; - + [Export] public int NumberCount { @@ -444,13 +454,13 @@ The example below displays a list of numbers shown as words going from ``ZERO`` NotifyPropertyListChanged(); } } - + private Godot.Collections.Array _numbers = []; - + public override Godot.Collections.Array _GetPropertyList() { Godot.Collections.Array properties = []; - + for (int i = 0; i < _numberCount; i++) { properties.Add(new Godot.Collections.Dictionary() @@ -461,10 +471,10 @@ The example below displays a list of numbers shown as words going from ``ZERO`` { "hint_string", "Zero,One,Two,Three,Four,Five" }, }); } - + return properties; } - + public override Variant _Get(StringName property) { string propertyName = property.ToString(); @@ -475,7 +485,7 @@ The example below displays a list of numbers shown as words going from ``ZERO`` } return default; } - + public override bool _Set(StringName property, Variant value) { string propertyName = property.ToString(); @@ -521,6 +531,8 @@ Called when the object's script is instantiated, oftentimes after the object is Returns the current iterable value. ``iter`` stores the iteration state, but unlike :ref:`_iter_init()` and :ref:`_iter_next()` the state is supposed to be read-only, so there is no :ref:`Array` wrapper. +\ **Tip:** In GDScript, you can use a subtype of :ref:`Variant` as the return type for :ref:`_iter_get()`. The specified type will be used to set the type of the iterator variable in ``for`` loops, enhancing type safety. + .. rst-class:: classref-item-separator ---- @@ -533,30 +545,28 @@ Returns the current iterable value. ``iter`` stores the iteration state, but unl Initializes the iterator. ``iter`` stores the iteration state. Since GDScript does not support passing arguments by reference, a single-element array is used as a wrapper. Returns ``true`` so long as the iterator has not reached the end. -Example: - :: class MyRange: var _from var _to - + func _init(from, to): assert(from <= to) _from = from _to = to - + func _iter_init(iter): iter[0] = _from return iter[0] < _to - + func _iter_next(iter): iter[0] += 1 return iter[0] < _to - + func _iter_get(iter): return iter - + func _ready(): var my_range = MyRange.new(2, 5) for x in my_range: @@ -611,6 +621,8 @@ Called when the object receives a notification, which can be identified in ``wha \ **Note:** The base **Object** defines a few notifications (:ref:`NOTIFICATION_POSTINITIALIZE` and :ref:`NOTIFICATION_PREDELETE`). Inheriting classes such as :ref:`Node` define a lot more notifications, which are also received by this method. +\ **Note:** Unlike other virtual methods, this method is called automatically for every script that overrides it. This means that the base implementation should not be called via ``super`` in GDScript or its equivalents in other languages. + .. rst-class:: classref-item-separator ---- @@ -651,7 +663,9 @@ Override this method to customize the given ``property``'s revert behavior. Shou Override this method to customize the behavior of :ref:`set()`. Should set the ``property`` to ``value`` and return ``true``, or ``false`` if the ``property`` should be handled normally. The *exact* way to set the ``property`` is up to this method's implementation. -Combined with :ref:`_get()` and :ref:`_get_property_list()`, this method allows defining custom properties, which is particularly useful for editor plugins. Note that a property *must* be present in :ref:`get_property_list()`, otherwise this method will not be called. +Combined with :ref:`_get()` and :ref:`_get_property_list()`, this method allows defining custom properties, which is particularly useful for editor plugins. + +\ **Note:** This method is not called when setting built-in properties of an object, including properties defined with :ref:`@GDScript.@export`. .. tabs:: @@ -659,14 +673,14 @@ Combined with :ref:`_get()` and :ref:`_get_pro .. code-tab:: gdscript var internal_data = {} - + func _set(property, value): if property == "fake_property": # Storing the value in the fake property. internal_data["fake_property"] = value return true return false - + func _get_property_list(): return [ { "name": "fake_property", "type": TYPE_INT } @@ -675,7 +689,7 @@ Combined with :ref:`_get()` and :ref:`_get_pro .. code-tab:: csharp private Godot.Collections.Dictionary _internalData = new Godot.Collections.Dictionary(); - + public override bool _Set(StringName property, Variant value) { if (property == "FakeProperty") @@ -684,10 +698,10 @@ Combined with :ref:`_get()` and :ref:`_get_pro _internalData["FakeProperty"] = value; return true; } - + return false; } - + public override Godot.Collections.Array _GetPropertyList() { return @@ -718,7 +732,7 @@ Override this method to customize the return value of :ref:`to_string()` constants). -A signal can only be connected once to the same :ref:`Callable`. If the signal is already connected, this method returns :ref:`@GlobalScope.ERR_INVALID_PARAMETER` and pushes an error message, unless the signal is connected with :ref:`CONNECT_REFERENCE_COUNTED`. To prevent this, use :ref:`is_connected()` first to check for existing connections. +A signal can only be connected once to the same :ref:`Callable`. If the signal is already connected, this method returns :ref:`@GlobalScope.ERR_INVALID_PARAMETER` and generates an error, unless the signal is connected with :ref:`CONNECT_REFERENCE_COUNTED`. To prevent this, use :ref:`is_connected()` first to check for existing connections. -If the ``callable``'s object is freed, the connection will be lost. - -\ **Examples with recommended syntax:**\ - -Connecting signals is one of the most common operations in Godot and the API gives many options to do so, which are described further down. The code block below shows the recommended approach. - - -.. tabs:: - - .. code-tab:: gdscript - - func _ready(): - var button = Button.new() - # `button_down` here is a Signal variant type, and we thus call the Signal.connect() method, not Object.connect(). - # See discussion below for a more in-depth overview of the API. - button.button_down.connect(_on_button_down) - - # This assumes that a `Player` class exists, which defines a `hit` signal. - var player = Player.new() - # We use Signal.connect() again, and we also use the Callable.bind() method, - # which returns a new Callable with the parameter binds. - player.hit.connect(_on_player_hit.bind("sword", 100)) - - func _on_button_down(): - print("Button down!") - - func _on_player_hit(weapon_type, damage): - print("Hit with weapon %s for %d damage." % [weapon_type, damage]) - - .. code-tab:: csharp - - public override void _Ready() - { - var button = new Button(); - // C# supports passing signals as events, so we can use this idiomatic construct: - button.ButtonDown += OnButtonDown; - - // This assumes that a `Player` class exists, which defines a `Hit` signal. - var player = new Player(); - // We can use lambdas when we need to bind additional parameters. - player.Hit += () => OnPlayerHit("sword", 100); - } - - private void OnButtonDown() - { - GD.Print("Button down!"); - } - - private void OnPlayerHit(string weaponType, int damage) - { - GD.Print($"Hit with weapon {weaponType} for {damage} damage."); - } - - - -\ **\ ``Object.connect()`` or ``Signal.connect()``?**\ - -As seen above, the recommended method to connect signals is not :ref:`connect()`. The code block below shows the four options for connecting signals, using either this legacy method or the recommended :ref:`Signal.connect()`, and using either an implicit :ref:`Callable` or a manually defined one. - - -.. tabs:: - - .. code-tab:: gdscript - - func _ready(): - var button = Button.new() - # Option 1: Object.connect() with an implicit Callable for the defined function. - button.connect("button_down", _on_button_down) - # Option 2: Object.connect() with a constructed Callable using a target object and method name. - button.connect("button_down", Callable(self, "_on_button_down")) - # Option 3: Signal.connect() with an implicit Callable for the defined function. - button.button_down.connect(_on_button_down) - # Option 4: Signal.connect() with a constructed Callable using a target object and method name. - button.button_down.connect(Callable(self, "_on_button_down")) - - func _on_button_down(): - print("Button down!") - - .. code-tab:: csharp - - public override void _Ready() - { - var button = new Button(); - // Option 1: In C#, we can use signals as events and connect with this idiomatic syntax: - button.ButtonDown += OnButtonDown; - // Option 2: GodotObject.Connect() with a constructed Callable from a method group. - button.Connect(Button.SignalName.ButtonDown, Callable.From(OnButtonDown)); - // Option 3: GodotObject.Connect() with a constructed Callable using a target object and method name. - button.Connect(Button.SignalName.ButtonDown, new Callable(this, MethodName.OnButtonDown)); - } - - private void OnButtonDown() - { - GD.Print("Button down!"); - } - - - -While all options have the same outcome (``button``'s :ref:`BaseButton.button_down` signal will be connected to ``_on_button_down``), **option 3** offers the best validation: it will print a compile-time error if either the ``button_down`` :ref:`Signal` or the ``_on_button_down`` :ref:`Callable` are not defined. On the other hand, **option 2** only relies on string names and will only be able to validate either names at runtime: it will print a runtime error if ``"button_down"`` doesn't correspond to a signal, or if ``"_on_button_down"`` is not a registered method in the object ``self``. The main reason for using options 1, 2, or 4 would be if you actually need to use strings (e.g. to connect signals programmatically based on strings read from a configuration file). Otherwise, option 3 is the recommended (and fastest) method. - -\ **Binding and passing parameters:**\ - -The syntax to bind parameters is through :ref:`Callable.bind()`, which returns a copy of the :ref:`Callable` with its parameters bound. - -When calling :ref:`emit_signal()` or :ref:`Signal.emit()`, the signal parameters can be also passed. The examples below show the relationship between these signal parameters and bound parameters. - - -.. tabs:: - - .. code-tab:: gdscript - - func _ready(): - # This assumes that a `Player` class exists, which defines a `hit` signal. - var player = Player.new() - # Using Callable.bind(). - player.hit.connect(_on_player_hit.bind("sword", 100)) - - # Parameters added when emitting the signal are passed first. - player.hit.emit("Dark lord", 5) - - # We pass two arguments when emitting (`hit_by`, `level`), - # and bind two more arguments when connecting (`weapon_type`, `damage`). - func _on_player_hit(hit_by, level, weapon_type, damage): - print("Hit by %s (level %d) with weapon %s for %d damage." % [hit_by, level, weapon_type, damage]) - - .. code-tab:: csharp - - public override void _Ready() - { - // This assumes that a `Player` class exists, which defines a `Hit` signal. - var player = new Player(); - // Using lambda expressions that create a closure that captures the additional parameters. - // The lambda only receives the parameters defined by the signal's delegate. - player.Hit += (hitBy, level) => OnPlayerHit(hitBy, level, "sword", 100); - - // Parameters added when emitting the signal are passed first. - player.EmitSignal(SignalName.Hit, "Dark lord", 5); - } - - // We pass two arguments when emitting (`hit_by`, `level`), - // and bind two more arguments when connecting (`weapon_type`, `damage`). - private void OnPlayerHit(string hitBy, int level, string weaponType, int damage) - { - GD.Print($"Hit by {hitBy} (level {level}) with weapon {weaponType} for {damage} damage."); - } +\ **Note:** If the ``callable``'s object is freed, the connection will be lost. +\ **Note:** In GDScript, it is generally recommended to connect signals with :ref:`Signal.connect()` instead. +\ **Note:** This operation (and all other signal related operations) is thread-safe. .. rst-class:: classref-item-separator @@ -1169,7 +1041,7 @@ Returns :ref:`@GlobalScope.ERR_UNAVAILABLE` -Deletes the object from memory. Pre-existing references to the object become invalid, and any attempt to access them will result in a run-time error. Checking the references with :ref:`@GlobalScope.is_instance_valid()` will return ``false``. +Deletes the object from memory. Pre-existing references to the object become invalid, and any attempt to access them will result in a runtime error. Checking the references with :ref:`@GlobalScope.is_instance_valid()` will return ``false``. This is equivalent to the ``memdelete`` function in GDExtension C++. .. rst-class:: classref-item-separator @@ -1597,10 +1469,10 @@ If ``reversed`` is ``true``, the call order is reversed. var player = Node2D.new() player.set_script(load("res://player.gd")) - + player.notification(NOTIFICATION_ENTER_TREE) # The call order is Object -> Node -> Node2D -> player.gd. - + player.notification(NOTIFICATION_ENTER_TREE, true) # The call order is player.gd -> Node2D -> Node -> Object. @@ -1608,10 +1480,10 @@ If ``reversed`` is ``true``, the call order is reversed. var player = new Node2D(); player.SetScript(GD.Load("res://player.gd")); - + player.Notification(NotificationEnterTree); // The call order is GodotObject -> Node -> Node2D -> player.gd. - + player.Notification(NotificationEnterTree, true); // The call order is player.gd -> Node2D -> Node -> GodotObject. @@ -1747,11 +1619,11 @@ Assigns ``value`` to the given ``property``, at the end of the current frame. Th var node = Node2D.new() add_child(node) - + node.rotation = 1.5 node.set_deferred("rotation", 3.0) print(node.rotation) # Prints 1.5 - + await get_tree().process_frame print(node.rotation) # Prints 3.0 @@ -1761,7 +1633,7 @@ Assigns ``value`` to the given ``property``, at the end of the current frame. Th node.Rotation = 1.5f; node.SetDeferred(Node2D.PropertyName.Rotation, 3f); GD.Print(node.Rotation); // Prints 1.5 - + await ToSignal(GetTree(), SceneTree.SignalName.ProcessFrame); GD.Print(node.Rotation); // Prints 3.0 @@ -1911,6 +1783,7 @@ For detailed examples, see :doc:`Localization using gettext <../tutorials/i18n/l \ **Note:** This method can't be used without an **Object** instance, as it requires the :ref:`can_translate_messages()` method. To translate strings in a static context, use :ref:`TranslationServer.translate_plural()`. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_occluder3d.rst b/classes/class_occluder3d.rst index 3adc96f72..cde8817c9 100644 --- a/classes/class_occluder3d.rst +++ b/classes/class_occluder3d.rst @@ -76,6 +76,7 @@ Returns the occluder shape's vertex indices. Returns the occluder shape's vertex positions. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_occluderinstance3d.rst b/classes/class_occluderinstance3d.rst index e124300c2..4ac2af4f0 100644 --- a/classes/class_occluderinstance3d.rst +++ b/classes/class_occluderinstance3d.rst @@ -166,6 +166,7 @@ Returns whether or not the specified layer of the :ref:`bake_mask`, given a ``layer_number`` between 1 and 32. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_occluderpolygon2d.rst b/classes/class_occluderpolygon2d.rst index 896ac20c7..e20526b4c 100644 --- a/classes/class_occluderpolygon2d.rst +++ b/classes/class_occluderpolygon2d.rst @@ -135,6 +135,7 @@ A :ref:`Vector2` array with the index for polygon's vertices posi **Note:** The returned array is *copied* and any changes to it will not update the original property value. See :ref:`PackedVector2Array` for more details. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_offlinemultiplayerpeer.rst b/classes/class_offlinemultiplayerpeer.rst index 48cc89ee2..9cbc63568 100644 --- a/classes/class_offlinemultiplayerpeer.rst +++ b/classes/class_offlinemultiplayerpeer.rst @@ -24,6 +24,7 @@ This is the default :ref:`MultiplayerAPI.multiplayer_peer` will act as the multiplayer authority by default. Calls to :ref:`MultiplayerAPI.is_server()` will return ``true``, and calls to :ref:`MultiplayerAPI.get_unique_id()` will return :ref:`MultiplayerPeer.TARGET_PEER_SERVER`. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_oggpacketsequence.rst b/classes/class_oggpacketsequence.rst index e4b192843..c3dee7972 100644 --- a/classes/class_oggpacketsequence.rst +++ b/classes/class_oggpacketsequence.rst @@ -125,6 +125,7 @@ Method Descriptions The length of this stream, in seconds. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_oggpacketsequenceplayback.rst b/classes/class_oggpacketsequenceplayback.rst index d974f7256..9b7180453 100644 --- a/classes/class_oggpacketsequenceplayback.rst +++ b/classes/class_oggpacketsequenceplayback.rst @@ -14,9 +14,10 @@ OggPacketSequencePlayback .. container:: contribute - There is currently no description for this class. Please help us by :ref:`contributing one `! + There is currently no description for this class. Please help us by `contributing one `__! .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_omnilight3d.rst b/classes/class_omnilight3d.rst index 1c49f4e87..e7ce8bc23 100644 --- a/classes/class_omnilight3d.rst +++ b/classes/class_omnilight3d.rst @@ -150,9 +150,12 @@ The light's radius. Note that the effectively lit area may appear to be smaller - |void| **set_shadow_mode**\ (\ value\: :ref:`ShadowMode`\ ) - :ref:`ShadowMode` **get_shadow_mode**\ (\ ) -See :ref:`ShadowMode`. +.. container:: contribute + + There is currently no description for this property. Please help us by `contributing one `__! .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_openxraction.rst b/classes/class_openxraction.rst index bf367a741..8c2803807 100644 --- a/classes/class_openxraction.rst +++ b/classes/class_openxraction.rst @@ -90,7 +90,7 @@ This action provides a :ref:`Vector2` value and can be bound to e .. container:: contribute - There is currently no description for this enum. Please help us by :ref:`contributing one `! + There is currently no description for this enum. Please help us by `contributing one `__! @@ -153,6 +153,7 @@ A collections of toplevel paths to which this action can be bound. **Note:** The returned array is *copied* and any changes to it will not update the original property value. See :ref:`PackedStringArray` for more details. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_openxractionbindingmodifier.rst b/classes/class_openxractionbindingmodifier.rst index 1e174b06d..8c793d6dc 100644 --- a/classes/class_openxractionbindingmodifier.rst +++ b/classes/class_openxractionbindingmodifier.rst @@ -24,6 +24,7 @@ Description Binding modifier that applies on individual actions related to an interaction profile. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_openxractionmap.rst b/classes/class_openxractionmap.rst index 7265681d3..2b8e31afd 100644 --- a/classes/class_openxractionmap.rst +++ b/classes/class_openxractionmap.rst @@ -248,6 +248,7 @@ Remove an action set. Remove an interaction profile. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_openxractionset.rst b/classes/class_openxractionset.rst index 7647dd15c..39c00d9fa 100644 --- a/classes/class_openxractionset.rst +++ b/classes/class_openxractionset.rst @@ -153,6 +153,7 @@ Retrieve the number of actions in our action set. Remove an action from this action set. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_openxranalogthresholdmodifier.rst b/classes/class_openxranalogthresholdmodifier.rst index ad5abb504..ce22a9c5c 100644 --- a/classes/class_openxranalogthresholdmodifier.rst +++ b/classes/class_openxranalogthresholdmodifier.rst @@ -78,7 +78,7 @@ Haptic pulse to emit when the user releases the input. - |void| **set_off_threshold**\ (\ value\: :ref:`float`\ ) - :ref:`float` **get_off_threshold**\ (\ ) -When our input value falls below this, our output becomes false. +When our input value falls below this, our output becomes ``false``. .. rst-class:: classref-item-separator @@ -112,9 +112,10 @@ Haptic pulse to emit when the user presses the input. - |void| **set_on_threshold**\ (\ value\: :ref:`float`\ ) - :ref:`float` **get_on_threshold**\ (\ ) -When our input value is equal or larger than this value, our output becomes true. It stays true until it falls under the :ref:`off_threshold` value. +When our input value is equal or larger than this value, our output becomes ``true``. It stays ``true`` until it falls under the :ref:`off_threshold` value. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_openxrapiextension.rst b/classes/class_openxrapiextension.rst index bba2401bd..fdf917db2 100644 --- a/classes/class_openxrapiextension.rst +++ b/classes/class_openxrapiextension.rst @@ -111,9 +111,13 @@ Methods +-----------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`openxr_swapchain_release`\ (\ swapchain\: :ref:`int`\ ) | +-----------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`register_composition_layer_provider`\ (\ extension\: :ref:`OpenXRExtensionWrapperExtension`\ ) | + | |void| | :ref:`register_composition_layer_provider`\ (\ extension\: :ref:`OpenXRExtensionWrapper`\ ) | +-----------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`register_projection_views_extension`\ (\ extension\: :ref:`OpenXRExtensionWrapperExtension`\ ) | + | |void| | :ref:`register_frame_info_extension`\ (\ extension\: :ref:`OpenXRExtensionWrapper`\ ) | + +-----------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`register_projection_views_extension`\ (\ extension\: :ref:`OpenXRExtensionWrapper`\ ) | + +-----------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_custom_play_space`\ (\ space\: ``const void*``\ ) | +-----------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`set_emulate_environment_blend_mode_alpha_blend`\ (\ enabled\: :ref:`bool`\ ) | +-----------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ @@ -129,9 +133,11 @@ Methods +-----------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`Transform3D` | :ref:`transform_from_pose`\ (\ pose\: ``const void*``\ ) | +-----------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`unregister_composition_layer_provider`\ (\ extension\: :ref:`OpenXRExtensionWrapperExtension`\ ) | + | |void| | :ref:`unregister_composition_layer_provider`\ (\ extension\: :ref:`OpenXRExtensionWrapper`\ ) | +-----------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`unregister_projection_views_extension`\ (\ extension\: :ref:`OpenXRExtensionWrapperExtension`\ ) | + | |void| | :ref:`unregister_frame_info_extension`\ (\ extension\: :ref:`OpenXRExtensionWrapper`\ ) | + +-----------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`unregister_projection_views_extension`\ (\ extension\: :ref:`OpenXRExtensionWrapper`\ ) | +-----------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`xr_result`\ (\ result\: :ref:`int`, format\: :ref:`String`, args\: :ref:`Array`\ ) | +-----------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ @@ -414,7 +420,7 @@ Returns the name of the specified swapchain format. :ref:`int` **get_system_id**\ (\ ) :ref:`🔗` -Returns the id of the system, which is a `XrSystemId `__ cast to an integer. +Returns the id of the system, which is an `XrSystemId `__ cast to an integer. .. rst-class:: classref-item-separator @@ -556,7 +562,7 @@ Releases the image of the provided swapchain. .. rst-class:: classref-method -|void| **register_composition_layer_provider**\ (\ extension\: :ref:`OpenXRExtensionWrapperExtension`\ ) :ref:`🔗` +|void| **register_composition_layer_provider**\ (\ extension\: :ref:`OpenXRExtensionWrapper`\ ) :ref:`🔗` Registers the given extension as a composition layer provider. @@ -564,11 +570,23 @@ Registers the given extension as a composition layer provider. ---- +.. _class_OpenXRAPIExtension_method_register_frame_info_extension: + +.. rst-class:: classref-method + +|void| **register_frame_info_extension**\ (\ extension\: :ref:`OpenXRExtensionWrapper`\ ) :ref:`🔗` + +Registers the given extension as modifying frame info via the :ref:`OpenXRExtensionWrapper._set_frame_wait_info_and_get_next_pointer()`, :ref:`OpenXRExtensionWrapper._set_view_locate_info_and_get_next_pointer()`, or :ref:`OpenXRExtensionWrapper._set_frame_end_info_and_get_next_pointer()` virtual methods. + +.. rst-class:: classref-item-separator + +---- + .. _class_OpenXRAPIExtension_method_register_projection_views_extension: .. rst-class:: classref-method -|void| **register_projection_views_extension**\ (\ extension\: :ref:`OpenXRExtensionWrapperExtension`\ ) :ref:`🔗` +|void| **register_projection_views_extension**\ (\ extension\: :ref:`OpenXRExtensionWrapper`\ ) :ref:`🔗` Registers the given extension as a provider of additional data structures to projections views. @@ -576,6 +594,18 @@ Registers the given extension as a provider of additional data structures to pro ---- +.. _class_OpenXRAPIExtension_method_set_custom_play_space: + +.. rst-class:: classref-method + +|void| **set_custom_play_space**\ (\ space\: ``const void*``\ ) :ref:`🔗` + +Sets the reference space used by OpenXR to the given `XrSpace `__ (cast to a ``void *``). + +.. rst-class:: classref-item-separator + +---- + .. _class_OpenXRAPIExtension_method_set_emulate_environment_blend_mode_alpha_blend: .. rst-class:: classref-method @@ -664,7 +694,7 @@ Creates a :ref:`Transform3D` from an `XrPosef `\ ) :ref:`🔗` +|void| **unregister_composition_layer_provider**\ (\ extension\: :ref:`OpenXRExtensionWrapper`\ ) :ref:`🔗` Unregisters the given extension as a composition layer provider. @@ -672,11 +702,23 @@ Unregisters the given extension as a composition layer provider. ---- +.. _class_OpenXRAPIExtension_method_unregister_frame_info_extension: + +.. rst-class:: classref-method + +|void| **unregister_frame_info_extension**\ (\ extension\: :ref:`OpenXRExtensionWrapper`\ ) :ref:`🔗` + +Unregisters the given extension as modifying frame info. + +.. rst-class:: classref-item-separator + +---- + .. _class_OpenXRAPIExtension_method_unregister_projection_views_extension: .. rst-class:: classref-method -|void| **unregister_projection_views_extension**\ (\ extension\: :ref:`OpenXRExtensionWrapperExtension`\ ) :ref:`🔗` +|void| **unregister_projection_views_extension**\ (\ extension\: :ref:`OpenXRExtensionWrapper`\ ) :ref:`🔗` Unregisters the given extension as a provider of additional data structures to projections views. @@ -693,6 +735,7 @@ Unregisters the given extension as a provider of additional data structures to p Returns ``true`` if the provided `XrResult `__ (cast to an integer) is successful. Otherwise returns ``false`` and prints the `XrResult `__ converted to a string, with the specified additional information. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_openxrbindingmodifier.rst b/classes/class_openxrbindingmodifier.rst index f0eca223e..da18219fa 100644 --- a/classes/class_openxrbindingmodifier.rst +++ b/classes/class_openxrbindingmodifier.rst @@ -31,11 +31,11 @@ Methods .. table:: :widths: auto - +-----------------------------------------------+--------------------------------------------------------------------------------------------------------------+ - | :ref:`String` | :ref:`_get_description`\ (\ ) |virtual| |const| | - +-----------------------------------------------+--------------------------------------------------------------------------------------------------------------+ - | :ref:`PackedByteArray` | :ref:`_get_ip_modification`\ (\ ) |virtual| | - +-----------------------------------------------+--------------------------------------------------------------------------------------------------------------+ + +-----------------------------------------------+-------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`_get_description`\ (\ ) |virtual| |required| |const| | + +-----------------------------------------------+-------------------------------------------------------------------------------------------------------------------------+ + | :ref:`PackedByteArray` | :ref:`_get_ip_modification`\ (\ ) |virtual| |required| | + +-----------------------------------------------+-------------------------------------------------------------------------------------------------------------------------+ .. rst-class:: classref-section-separator @@ -50,7 +50,7 @@ Method Descriptions .. rst-class:: classref-method -:ref:`String` **_get_description**\ (\ ) |virtual| |const| :ref:`🔗` +:ref:`String` **_get_description**\ (\ ) |virtual| |required| |const| :ref:`🔗` Return the description of this class that is used for the title bar of the binding modifier editor. @@ -62,13 +62,14 @@ Return the description of this class that is used for the title bar of the bindi .. rst-class:: classref-method -:ref:`PackedByteArray` **_get_ip_modification**\ (\ ) |virtual| :ref:`🔗` +:ref:`PackedByteArray` **_get_ip_modification**\ (\ ) |virtual| |required| :ref:`🔗` Returns the data that is sent to OpenXR when submitting the suggested interacting bindings this modifier is a part of. -\ **Note:** This must be data compatible with a ``XrBindingModificationBaseHeaderKHR`` structure. +\ **Note:** This must be data compatible with an ``XrBindingModificationBaseHeaderKHR`` structure. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |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.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_openxrbindingmodifiereditor.rst b/classes/class_openxrbindingmodifiereditor.rst index 782cd8dce..8ee575f82 100644 --- a/classes/class_openxrbindingmodifiereditor.rst +++ b/classes/class_openxrbindingmodifiereditor.rst @@ -94,6 +94,7 @@ Returns the :ref:`OpenXRBindingModifier` currently Setup this editor for the provided ``action_map`` and ``binding_modifier``. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_openxrcompositionlayer.rst b/classes/class_openxrcompositionlayer.rst index 2dc780167..22791142f 100644 --- a/classes/class_openxrcompositionlayer.rst +++ b/classes/class_openxrcompositionlayer.rst @@ -35,19 +35,41 @@ Properties .. table:: :widths: auto - +---------------------------------------+-----------------------------------------------------------------------------------------+--------------------------+ - | :ref:`bool` | :ref:`alpha_blend` | ``false`` | - +---------------------------------------+-----------------------------------------------------------------------------------------+--------------------------+ - | :ref:`Vector2i` | :ref:`android_surface_size` | ``Vector2i(1024, 1024)`` | - +---------------------------------------+-----------------------------------------------------------------------------------------+--------------------------+ - | :ref:`bool` | :ref:`enable_hole_punch` | ``false`` | - +---------------------------------------+-----------------------------------------------------------------------------------------+--------------------------+ - | :ref:`SubViewport` | :ref:`layer_viewport` | | - +---------------------------------------+-----------------------------------------------------------------------------------------+--------------------------+ - | :ref:`int` | :ref:`sort_order` | ``1`` | - +---------------------------------------+-----------------------------------------------------------------------------------------+--------------------------+ - | :ref:`bool` | :ref:`use_android_surface` | ``false`` | - +---------------------------------------+-----------------------------------------------------------------------------------------+--------------------------+ + +-----------------------------------------------------------+---------------------------------------------------------------------------------------------------------------+--------------------------+ + | :ref:`bool` | :ref:`alpha_blend` | ``false`` | + +-----------------------------------------------------------+---------------------------------------------------------------------------------------------------------------+--------------------------+ + | :ref:`Vector2i` | :ref:`android_surface_size` | ``Vector2i(1024, 1024)`` | + +-----------------------------------------------------------+---------------------------------------------------------------------------------------------------------------+--------------------------+ + | :ref:`bool` | :ref:`enable_hole_punch` | ``false`` | + +-----------------------------------------------------------+---------------------------------------------------------------------------------------------------------------+--------------------------+ + | :ref:`SubViewport` | :ref:`layer_viewport` | | + +-----------------------------------------------------------+---------------------------------------------------------------------------------------------------------------+--------------------------+ + | :ref:`int` | :ref:`sort_order` | ``1`` | + +-----------------------------------------------------------+---------------------------------------------------------------------------------------------------------------+--------------------------+ + | :ref:`Swizzle` | :ref:`swapchain_state_alpha_swizzle` | ``3`` | + +-----------------------------------------------------------+---------------------------------------------------------------------------------------------------------------+--------------------------+ + | :ref:`Swizzle` | :ref:`swapchain_state_blue_swizzle` | ``2`` | + +-----------------------------------------------------------+---------------------------------------------------------------------------------------------------------------+--------------------------+ + | :ref:`Color` | :ref:`swapchain_state_border_color` | ``Color(0, 0, 0, 0)`` | + +-----------------------------------------------------------+---------------------------------------------------------------------------------------------------------------+--------------------------+ + | :ref:`Swizzle` | :ref:`swapchain_state_green_swizzle` | ``1`` | + +-----------------------------------------------------------+---------------------------------------------------------------------------------------------------------------+--------------------------+ + | :ref:`Wrap` | :ref:`swapchain_state_horizontal_wrap` | ``0`` | + +-----------------------------------------------------------+---------------------------------------------------------------------------------------------------------------+--------------------------+ + | :ref:`Filter` | :ref:`swapchain_state_mag_filter` | ``1`` | + +-----------------------------------------------------------+---------------------------------------------------------------------------------------------------------------+--------------------------+ + | :ref:`float` | :ref:`swapchain_state_max_anisotropy` | ``1.0`` | + +-----------------------------------------------------------+---------------------------------------------------------------------------------------------------------------+--------------------------+ + | :ref:`Filter` | :ref:`swapchain_state_min_filter` | ``1`` | + +-----------------------------------------------------------+---------------------------------------------------------------------------------------------------------------+--------------------------+ + | :ref:`MipmapMode` | :ref:`swapchain_state_mipmap_mode` | ``2`` | + +-----------------------------------------------------------+---------------------------------------------------------------------------------------------------------------+--------------------------+ + | :ref:`Swizzle` | :ref:`swapchain_state_red_swizzle` | ``0`` | + +-----------------------------------------------------------+---------------------------------------------------------------------------------------------------------------+--------------------------+ + | :ref:`Wrap` | :ref:`swapchain_state_vertical_wrap` | ``0`` | + +-----------------------------------------------------------+---------------------------------------------------------------------------------------------------------------+--------------------------+ + | :ref:`bool` | :ref:`use_android_surface` | ``false`` | + +-----------------------------------------------------------+---------------------------------------------------------------------------------------------------------------+--------------------------+ .. rst-class:: classref-reftable-group @@ -71,6 +93,191 @@ Methods .. rst-class:: classref-descriptions-group +Enumerations +------------ + +.. _enum_OpenXRCompositionLayer_Filter: + +.. rst-class:: classref-enumeration + +enum **Filter**: :ref:`🔗` + +.. _class_OpenXRCompositionLayer_constant_FILTER_NEAREST: + +.. rst-class:: classref-enumeration-constant + +:ref:`Filter` **FILTER_NEAREST** = ``0`` + +Perform nearest-neighbor filtering when sampling the texture. + +.. _class_OpenXRCompositionLayer_constant_FILTER_LINEAR: + +.. rst-class:: classref-enumeration-constant + +:ref:`Filter` **FILTER_LINEAR** = ``1`` + +Perform linear filtering when sampling the texture. + +.. _class_OpenXRCompositionLayer_constant_FILTER_CUBIC: + +.. rst-class:: classref-enumeration-constant + +:ref:`Filter` **FILTER_CUBIC** = ``2`` + +Perform cubic filtering when sampling the texture. + +.. rst-class:: classref-item-separator + +---- + +.. _enum_OpenXRCompositionLayer_MipmapMode: + +.. rst-class:: classref-enumeration + +enum **MipmapMode**: :ref:`🔗` + +.. _class_OpenXRCompositionLayer_constant_MIPMAP_MODE_DISABLED: + +.. rst-class:: classref-enumeration-constant + +:ref:`MipmapMode` **MIPMAP_MODE_DISABLED** = ``0`` + +Disable mipmapping. + +\ **Note:** Mipmapping can only be disabled in the Compatibility renderer. + +.. _class_OpenXRCompositionLayer_constant_MIPMAP_MODE_NEAREST: + +.. rst-class:: classref-enumeration-constant + +:ref:`MipmapMode` **MIPMAP_MODE_NEAREST** = ``1`` + +Use the mipmap of the nearest resolution. + +.. _class_OpenXRCompositionLayer_constant_MIPMAP_MODE_LINEAR: + +.. rst-class:: classref-enumeration-constant + +:ref:`MipmapMode` **MIPMAP_MODE_LINEAR** = ``2`` + +Use linear interpolation of the two mipmaps of the nearest resolution. + +.. rst-class:: classref-item-separator + +---- + +.. _enum_OpenXRCompositionLayer_Wrap: + +.. rst-class:: classref-enumeration + +enum **Wrap**: :ref:`🔗` + +.. _class_OpenXRCompositionLayer_constant_WRAP_CLAMP_TO_BORDER: + +.. rst-class:: classref-enumeration-constant + +:ref:`Wrap` **WRAP_CLAMP_TO_BORDER** = ``0`` + +Clamp the texture to its specified border color. + +.. _class_OpenXRCompositionLayer_constant_WRAP_CLAMP_TO_EDGE: + +.. rst-class:: classref-enumeration-constant + +:ref:`Wrap` **WRAP_CLAMP_TO_EDGE** = ``1`` + +Clamp the texture to its edge color. + +.. _class_OpenXRCompositionLayer_constant_WRAP_REPEAT: + +.. rst-class:: classref-enumeration-constant + +:ref:`Wrap` **WRAP_REPEAT** = ``2`` + +Repeat the texture infinitely. + +.. _class_OpenXRCompositionLayer_constant_WRAP_MIRRORED_REPEAT: + +.. rst-class:: classref-enumeration-constant + +:ref:`Wrap` **WRAP_MIRRORED_REPEAT** = ``3`` + +Repeat the texture infinitely, mirroring it on each repeat. + +.. _class_OpenXRCompositionLayer_constant_WRAP_MIRROR_CLAMP_TO_EDGE: + +.. rst-class:: classref-enumeration-constant + +:ref:`Wrap` **WRAP_MIRROR_CLAMP_TO_EDGE** = ``4`` + +Mirror the texture once and then clamp the texture to its edge color. + +\ **Note:** This wrap mode is not available in the Compatibility renderer. + +.. rst-class:: classref-item-separator + +---- + +.. _enum_OpenXRCompositionLayer_Swizzle: + +.. rst-class:: classref-enumeration + +enum **Swizzle**: :ref:`🔗` + +.. _class_OpenXRCompositionLayer_constant_SWIZZLE_RED: + +.. rst-class:: classref-enumeration-constant + +:ref:`Swizzle` **SWIZZLE_RED** = ``0`` + +Maps a color channel to the value of the red channel. + +.. _class_OpenXRCompositionLayer_constant_SWIZZLE_GREEN: + +.. rst-class:: classref-enumeration-constant + +:ref:`Swizzle` **SWIZZLE_GREEN** = ``1`` + +Maps a color channel to the value of the green channel. + +.. _class_OpenXRCompositionLayer_constant_SWIZZLE_BLUE: + +.. rst-class:: classref-enumeration-constant + +:ref:`Swizzle` **SWIZZLE_BLUE** = ``2`` + +Maps a color channel to the value of the blue channel. + +.. _class_OpenXRCompositionLayer_constant_SWIZZLE_ALPHA: + +.. rst-class:: classref-enumeration-constant + +:ref:`Swizzle` **SWIZZLE_ALPHA** = ``3`` + +Maps a color channel to the value of the alpha channel. + +.. _class_OpenXRCompositionLayer_constant_SWIZZLE_ZERO: + +.. rst-class:: classref-enumeration-constant + +:ref:`Swizzle` **SWIZZLE_ZERO** = ``4`` + +Maps a color channel to the value of zero. + +.. _class_OpenXRCompositionLayer_constant_SWIZZLE_ONE: + +.. rst-class:: classref-enumeration-constant + +:ref:`Swizzle` **SWIZZLE_ONE** = ``5`` + +Maps a color channel to the value of one. + +.. rst-class:: classref-section-separator + +---- + +.. rst-class:: classref-descriptions-group + Property Descriptions --------------------- @@ -165,6 +372,215 @@ The sort order for this composition layer. Higher numbers will be shown in front ---- +.. _class_OpenXRCompositionLayer_property_swapchain_state_alpha_swizzle: + +.. rst-class:: classref-property + +:ref:`Swizzle` **swapchain_state_alpha_swizzle** = ``3`` :ref:`🔗` + +.. rst-class:: classref-property-setget + +- |void| **set_alpha_swizzle**\ (\ value\: :ref:`Swizzle`\ ) +- :ref:`Swizzle` **get_alpha_swizzle**\ (\ ) + +The swizzle value for the alpha channel of the swapchain state. + +\ **Note:** This property only has an effect on devices that support the OpenXR XR_FB_swapchain_update_state OpenGLES/Vulkan extensions. + +.. rst-class:: classref-item-separator + +---- + +.. _class_OpenXRCompositionLayer_property_swapchain_state_blue_swizzle: + +.. rst-class:: classref-property + +:ref:`Swizzle` **swapchain_state_blue_swizzle** = ``2`` :ref:`🔗` + +.. rst-class:: classref-property-setget + +- |void| **set_blue_swizzle**\ (\ value\: :ref:`Swizzle`\ ) +- :ref:`Swizzle` **get_blue_swizzle**\ (\ ) + +The swizzle value for the blue channel of the swapchain state. + +\ **Note:** This property only has an effect on devices that support the OpenXR XR_FB_swapchain_update_state OpenGLES/Vulkan extensions. + +.. rst-class:: classref-item-separator + +---- + +.. _class_OpenXRCompositionLayer_property_swapchain_state_border_color: + +.. rst-class:: classref-property + +:ref:`Color` **swapchain_state_border_color** = ``Color(0, 0, 0, 0)`` :ref:`🔗` + +.. rst-class:: classref-property-setget + +- |void| **set_border_color**\ (\ value\: :ref:`Color`\ ) +- :ref:`Color` **get_border_color**\ (\ ) + +The border color of the swapchain state that is used when the wrap mode clamps to the border. + +\ **Note:** This property only has an effect on devices that support the OpenXR XR_FB_swapchain_update_state OpenGLES/Vulkan extensions. + +.. rst-class:: classref-item-separator + +---- + +.. _class_OpenXRCompositionLayer_property_swapchain_state_green_swizzle: + +.. rst-class:: classref-property + +:ref:`Swizzle` **swapchain_state_green_swizzle** = ``1`` :ref:`🔗` + +.. rst-class:: classref-property-setget + +- |void| **set_green_swizzle**\ (\ value\: :ref:`Swizzle`\ ) +- :ref:`Swizzle` **get_green_swizzle**\ (\ ) + +The swizzle value for the green channel of the swapchain state. + +\ **Note:** This property only has an effect on devices that support the OpenXR XR_FB_swapchain_update_state OpenGLES/Vulkan extensions. + +.. rst-class:: classref-item-separator + +---- + +.. _class_OpenXRCompositionLayer_property_swapchain_state_horizontal_wrap: + +.. rst-class:: classref-property + +:ref:`Wrap` **swapchain_state_horizontal_wrap** = ``0`` :ref:`🔗` + +.. rst-class:: classref-property-setget + +- |void| **set_horizontal_wrap**\ (\ value\: :ref:`Wrap`\ ) +- :ref:`Wrap` **get_horizontal_wrap**\ (\ ) + +The horizontal wrap mode of the swapchain state. + +\ **Note:** This property only has an effect on devices that support the OpenXR XR_FB_swapchain_update_state OpenGLES/Vulkan extensions. + +.. rst-class:: classref-item-separator + +---- + +.. _class_OpenXRCompositionLayer_property_swapchain_state_mag_filter: + +.. rst-class:: classref-property + +:ref:`Filter` **swapchain_state_mag_filter** = ``1`` :ref:`🔗` + +.. rst-class:: classref-property-setget + +- |void| **set_mag_filter**\ (\ value\: :ref:`Filter`\ ) +- :ref:`Filter` **get_mag_filter**\ (\ ) + +The magnification filter of the swapchain state. + +\ **Note:** This property only has an effect on devices that support the OpenXR XR_FB_swapchain_update_state OpenGLES/Vulkan extensions. + +.. rst-class:: classref-item-separator + +---- + +.. _class_OpenXRCompositionLayer_property_swapchain_state_max_anisotropy: + +.. rst-class:: classref-property + +:ref:`float` **swapchain_state_max_anisotropy** = ``1.0`` :ref:`🔗` + +.. rst-class:: classref-property-setget + +- |void| **set_max_anisotropy**\ (\ value\: :ref:`float`\ ) +- :ref:`float` **get_max_anisotropy**\ (\ ) + +The max anisotropy of the swapchain state. + +\ **Note:** This property only has an effect on devices that support the OpenXR XR_FB_swapchain_update_state OpenGLES/Vulkan extensions. + +.. rst-class:: classref-item-separator + +---- + +.. _class_OpenXRCompositionLayer_property_swapchain_state_min_filter: + +.. rst-class:: classref-property + +:ref:`Filter` **swapchain_state_min_filter** = ``1`` :ref:`🔗` + +.. rst-class:: classref-property-setget + +- |void| **set_min_filter**\ (\ value\: :ref:`Filter`\ ) +- :ref:`Filter` **get_min_filter**\ (\ ) + +The minification filter of the swapchain state. + +\ **Note:** This property only has an effect on devices that support the OpenXR XR_FB_swapchain_update_state OpenGLES/Vulkan extensions. + +.. rst-class:: classref-item-separator + +---- + +.. _class_OpenXRCompositionLayer_property_swapchain_state_mipmap_mode: + +.. rst-class:: classref-property + +:ref:`MipmapMode` **swapchain_state_mipmap_mode** = ``2`` :ref:`🔗` + +.. rst-class:: classref-property-setget + +- |void| **set_mipmap_mode**\ (\ value\: :ref:`MipmapMode`\ ) +- :ref:`MipmapMode` **get_mipmap_mode**\ (\ ) + +The mipmap mode of the swapchain state. + +\ **Note:** This property only has an effect on devices that support the OpenXR XR_FB_swapchain_update_state OpenGLES/Vulkan extensions. + +.. rst-class:: classref-item-separator + +---- + +.. _class_OpenXRCompositionLayer_property_swapchain_state_red_swizzle: + +.. rst-class:: classref-property + +:ref:`Swizzle` **swapchain_state_red_swizzle** = ``0`` :ref:`🔗` + +.. rst-class:: classref-property-setget + +- |void| **set_red_swizzle**\ (\ value\: :ref:`Swizzle`\ ) +- :ref:`Swizzle` **get_red_swizzle**\ (\ ) + +The swizzle value for the red channel of the swapchain state. + +\ **Note:** This property only has an effect on devices that support the OpenXR XR_FB_swapchain_update_state OpenGLES/Vulkan extensions. + +.. rst-class:: classref-item-separator + +---- + +.. _class_OpenXRCompositionLayer_property_swapchain_state_vertical_wrap: + +.. rst-class:: classref-property + +:ref:`Wrap` **swapchain_state_vertical_wrap** = ``0`` :ref:`🔗` + +.. rst-class:: classref-property-setget + +- |void| **set_vertical_wrap**\ (\ value\: :ref:`Wrap`\ ) +- :ref:`Wrap` **get_vertical_wrap**\ (\ ) + +The vertical wrap mode of the swapchain state. + +\ **Note:** This property only has an effect on devices that support the OpenXR XR_FB_swapchain_update_state OpenGLES/Vulkan extensions. + +.. rst-class:: classref-item-separator + +---- + .. _class_OpenXRCompositionLayer_property_use_android_surface: .. rst-class:: classref-property @@ -230,6 +646,7 @@ Returns ``true`` if the OpenXR runtime natively supports this composition layer \ **Note:** This will only return an accurate result after the OpenXR session has started. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_openxrcompositionlayercylinder.rst b/classes/class_openxrcompositionlayercylinder.rst index 05e44866d..aac076bce 100644 --- a/classes/class_openxrcompositionlayercylinder.rst +++ b/classes/class_openxrcompositionlayercylinder.rst @@ -31,15 +31,15 @@ Properties .. table:: :widths: auto - +---------------------------+-------------------------------------------------------------------------------------------+------------+ - | :ref:`float` | :ref:`aspect_ratio` | ``1.0`` | - +---------------------------+-------------------------------------------------------------------------------------------+------------+ - | :ref:`float` | :ref:`central_angle` | ``1.5708`` | - +---------------------------+-------------------------------------------------------------------------------------------+------------+ - | :ref:`int` | :ref:`fallback_segments` | ``10`` | - +---------------------------+-------------------------------------------------------------------------------------------+------------+ - | :ref:`float` | :ref:`radius` | ``1.0`` | - +---------------------------+-------------------------------------------------------------------------------------------+------------+ + +---------------------------+-------------------------------------------------------------------------------------------+---------------+ + | :ref:`float` | :ref:`aspect_ratio` | ``1.0`` | + +---------------------------+-------------------------------------------------------------------------------------------+---------------+ + | :ref:`float` | :ref:`central_angle` | ``1.5707964`` | + +---------------------------+-------------------------------------------------------------------------------------------+---------------+ + | :ref:`int` | :ref:`fallback_segments` | ``10`` | + +---------------------------+-------------------------------------------------------------------------------------------+---------------+ + | :ref:`float` | :ref:`radius` | ``1.0`` | + +---------------------------+-------------------------------------------------------------------------------------------+---------------+ .. rst-class:: classref-section-separator @@ -71,7 +71,7 @@ The aspect ratio of the slice. Used to set the height relative to the width. .. rst-class:: classref-property -:ref:`float` **central_angle** = ``1.5708`` :ref:`🔗` +:ref:`float` **central_angle** = ``1.5707964`` :ref:`🔗` .. rst-class:: classref-property-setget @@ -115,6 +115,7 @@ The number of segments to use in the fallback mesh. The radius of the cylinder. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_openxrcompositionlayerequirect.rst b/classes/class_openxrcompositionlayerequirect.rst index 2992d3e13..b1e476ff2 100644 --- a/classes/class_openxrcompositionlayerequirect.rst +++ b/classes/class_openxrcompositionlayerequirect.rst @@ -31,17 +31,17 @@ Properties .. table:: :widths: auto - +---------------------------+---------------------------------------------------------------------------------------------------------+--------------+ - | :ref:`float` | :ref:`central_horizontal_angle` | ``1.5708`` | - +---------------------------+---------------------------------------------------------------------------------------------------------+--------------+ - | :ref:`int` | :ref:`fallback_segments` | ``10`` | - +---------------------------+---------------------------------------------------------------------------------------------------------+--------------+ - | :ref:`float` | :ref:`lower_vertical_angle` | ``0.785398`` | - +---------------------------+---------------------------------------------------------------------------------------------------------+--------------+ - | :ref:`float` | :ref:`radius` | ``1.0`` | - +---------------------------+---------------------------------------------------------------------------------------------------------+--------------+ - | :ref:`float` | :ref:`upper_vertical_angle` | ``0.785398`` | - +---------------------------+---------------------------------------------------------------------------------------------------------+--------------+ + +---------------------------+---------------------------------------------------------------------------------------------------------+---------------+ + | :ref:`float` | :ref:`central_horizontal_angle` | ``1.5707964`` | + +---------------------------+---------------------------------------------------------------------------------------------------------+---------------+ + | :ref:`int` | :ref:`fallback_segments` | ``10`` | + +---------------------------+---------------------------------------------------------------------------------------------------------+---------------+ + | :ref:`float` | :ref:`lower_vertical_angle` | ``0.7853982`` | + +---------------------------+---------------------------------------------------------------------------------------------------------+---------------+ + | :ref:`float` | :ref:`radius` | ``1.0`` | + +---------------------------+---------------------------------------------------------------------------------------------------------+---------------+ + | :ref:`float` | :ref:`upper_vertical_angle` | ``0.7853982`` | + +---------------------------+---------------------------------------------------------------------------------------------------------+---------------+ .. rst-class:: classref-section-separator @@ -56,7 +56,7 @@ Property Descriptions .. rst-class:: classref-property -:ref:`float` **central_horizontal_angle** = ``1.5708`` :ref:`🔗` +:ref:`float` **central_horizontal_angle** = ``1.5707964`` :ref:`🔗` .. rst-class:: classref-property-setget @@ -90,7 +90,7 @@ The number of segments to use in the fallback mesh. .. rst-class:: classref-property -:ref:`float` **lower_vertical_angle** = ``0.785398`` :ref:`🔗` +:ref:`float` **lower_vertical_angle** = ``0.7853982`` :ref:`🔗` .. rst-class:: classref-property-setget @@ -124,7 +124,7 @@ The radius of the sphere. .. rst-class:: classref-property -:ref:`float` **upper_vertical_angle** = ``0.785398`` :ref:`🔗` +:ref:`float` **upper_vertical_angle** = ``0.7853982`` :ref:`🔗` .. rst-class:: classref-property-setget @@ -134,6 +134,7 @@ The radius of the sphere. The upper vertical angle of the sphere. Used (together with :ref:`lower_vertical_angle`) to set the height. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_openxrcompositionlayerquad.rst b/classes/class_openxrcompositionlayerquad.rst index 42a5dac10..f7a693816 100644 --- a/classes/class_openxrcompositionlayerquad.rst +++ b/classes/class_openxrcompositionlayerquad.rst @@ -58,6 +58,7 @@ Property Descriptions The dimensions of the quad. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_openxrdpadbindingmodifier.rst b/classes/class_openxrdpadbindingmodifier.rst index d2b4872f9..0fe8c1dee 100644 --- a/classes/class_openxrdpadbindingmodifier.rst +++ b/classes/class_openxrdpadbindingmodifier.rst @@ -33,25 +33,25 @@ Properties .. table:: :widths: auto - +-------------------------------------------------+----------------------------------------------------------------------------------------+------------+ - | :ref:`OpenXRActionSet` | :ref:`action_set` | | - +-------------------------------------------------+----------------------------------------------------------------------------------------+------------+ - | :ref:`float` | :ref:`center_region` | ``0.1`` | - +-------------------------------------------------+----------------------------------------------------------------------------------------+------------+ - | :ref:`String` | :ref:`input_path` | ``""`` | - +-------------------------------------------------+----------------------------------------------------------------------------------------+------------+ - | :ref:`bool` | :ref:`is_sticky` | ``false`` | - +-------------------------------------------------+----------------------------------------------------------------------------------------+------------+ - | :ref:`OpenXRHapticBase` | :ref:`off_haptic` | | - +-------------------------------------------------+----------------------------------------------------------------------------------------+------------+ - | :ref:`OpenXRHapticBase` | :ref:`on_haptic` | | - +-------------------------------------------------+----------------------------------------------------------------------------------------+------------+ - | :ref:`float` | :ref:`threshold` | ``0.6`` | - +-------------------------------------------------+----------------------------------------------------------------------------------------+------------+ - | :ref:`float` | :ref:`threshold_released` | ``0.4`` | - +-------------------------------------------------+----------------------------------------------------------------------------------------+------------+ - | :ref:`float` | :ref:`wedge_angle` | ``1.5708`` | - +-------------------------------------------------+----------------------------------------------------------------------------------------+------------+ + +-------------------------------------------------+----------------------------------------------------------------------------------------+---------------+ + | :ref:`OpenXRActionSet` | :ref:`action_set` | | + +-------------------------------------------------+----------------------------------------------------------------------------------------+---------------+ + | :ref:`float` | :ref:`center_region` | ``0.1`` | + +-------------------------------------------------+----------------------------------------------------------------------------------------+---------------+ + | :ref:`String` | :ref:`input_path` | ``""`` | + +-------------------------------------------------+----------------------------------------------------------------------------------------+---------------+ + | :ref:`bool` | :ref:`is_sticky` | ``false`` | + +-------------------------------------------------+----------------------------------------------------------------------------------------+---------------+ + | :ref:`OpenXRHapticBase` | :ref:`off_haptic` | | + +-------------------------------------------------+----------------------------------------------------------------------------------------+---------------+ + | :ref:`OpenXRHapticBase` | :ref:`on_haptic` | | + +-------------------------------------------------+----------------------------------------------------------------------------------------+---------------+ + | :ref:`float` | :ref:`threshold` | ``0.6`` | + +-------------------------------------------------+----------------------------------------------------------------------------------------+---------------+ + | :ref:`float` | :ref:`threshold_released` | ``0.4`` | + +-------------------------------------------------+----------------------------------------------------------------------------------------+---------------+ + | :ref:`float` | :ref:`wedge_angle` | ``1.5707964`` | + +-------------------------------------------------+----------------------------------------------------------------------------------------+---------------+ .. rst-class:: classref-section-separator @@ -124,9 +124,9 @@ Input path for this dpad binding modifier. - |void| **set_is_sticky**\ (\ value\: :ref:`bool`\ ) - :ref:`bool` **get_is_sticky**\ (\ ) -If ``false``, when the joystick enters a new dpad zone this becomes true. +If ``false``, when the joystick enters a new dpad zone this becomes ``true``. -If ``true``, when the joystick remains in active dpad zone, this remains true even if we overlap with another zone. +If ``true``, when the joystick remains in active dpad zone, this remains ``true`` even if we overlap with another zone. .. rst-class:: classref-item-separator @@ -177,7 +177,7 @@ Haptic pulse to emit when the user presses the input. - |void| **set_threshold**\ (\ value\: :ref:`float`\ ) - :ref:`float` **get_threshold**\ (\ ) -When our input value is equal or larger than this value, our dpad in that direction becomes true. It stays true until it falls under the :ref:`threshold_released` value. +When our input value is equal or larger than this value, our dpad in that direction becomes ``true``. It stays ``true`` until it falls under the :ref:`threshold_released` value. .. rst-class:: classref-item-separator @@ -194,7 +194,7 @@ When our input value is equal or larger than this value, our dpad in that direct - |void| **set_threshold_released**\ (\ value\: :ref:`float`\ ) - :ref:`float` **get_threshold_released**\ (\ ) -When our input value falls below this, our output becomes false. +When our input value falls below this, our output becomes ``false``. .. rst-class:: classref-item-separator @@ -204,7 +204,7 @@ When our input value falls below this, our output becomes false. .. rst-class:: classref-property -:ref:`float` **wedge_angle** = ``1.5708`` :ref:`🔗` +:ref:`float` **wedge_angle** = ``1.5707964`` :ref:`🔗` .. rst-class:: classref-property-setget @@ -214,6 +214,7 @@ When our input value falls below this, our output becomes false. The angle of each wedge that identifies the 4 directions of the emulated dpad. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_openxrextensionwrapper.rst b/classes/class_openxrextensionwrapper.rst new file mode 100644 index 000000000..0c4456e56 --- /dev/null +++ b/classes/class_openxrextensionwrapper.rst @@ -0,0 +1,679 @@ +:github_url: hide + +.. DO NOT EDIT THIS FILE!!! +.. Generated automatically from Godot engine sources. +.. Generator: https://github.com/godotengine/godot/tree/master/doc/tools/make_rst.py. +.. XML source: https://github.com/godotengine/godot/tree/master/modules/openxr/doc_classes/OpenXRExtensionWrapper.xml. + +.. _class_OpenXRExtensionWrapper: + +OpenXRExtensionWrapper +====================== + +**Inherits:** :ref:`Object` + +**Inherited By:** :ref:`OpenXRExtensionWrapperExtension`, :ref:`OpenXRFutureExtension`, :ref:`OpenXRRenderModelExtension` + +Allows implementing OpenXR extensions with GDExtension. + +.. rst-class:: classref-introduction-group + +Description +----------- + +**OpenXRExtensionWrapper** allows implementing OpenXR extensions with GDExtension. The extension should be registered with :ref:`register_extension_wrapper()`. + +.. rst-class:: classref-reftable-group + +Methods +------- + +.. table:: + :widths: auto + + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`_get_composition_layer`\ (\ index\: :ref:`int`\ ) |virtual| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`_get_composition_layer_count`\ (\ ) |virtual| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`_get_composition_layer_order`\ (\ index\: :ref:`int`\ ) |virtual| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Dictionary` | :ref:`_get_requested_extensions`\ (\ ) |virtual| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`PackedStringArray` | :ref:`_get_suggested_tracker_names`\ (\ ) |virtual| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Array`\[:ref:`Dictionary`\] | :ref:`_get_viewport_composition_layer_extension_properties`\ (\ ) |virtual| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Dictionary` | :ref:`_get_viewport_composition_layer_extension_property_defaults`\ (\ ) |virtual| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_on_before_instance_created`\ (\ ) |virtual| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`_on_event_polled`\ (\ event\: ``const void*``\ ) |virtual| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_on_instance_created`\ (\ instance\: :ref:`int`\ ) |virtual| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_on_instance_destroyed`\ (\ ) |virtual| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_on_main_swapchains_created`\ (\ ) |virtual| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_on_post_draw_viewport`\ (\ viewport\: :ref:`RID`\ ) |virtual| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_on_pre_draw_viewport`\ (\ viewport\: :ref:`RID`\ ) |virtual| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_on_pre_render`\ (\ ) |virtual| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_on_process`\ (\ ) |virtual| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_on_register_metadata`\ (\ ) |virtual| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_on_session_created`\ (\ session\: :ref:`int`\ ) |virtual| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_on_session_destroyed`\ (\ ) |virtual| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_on_state_exiting`\ (\ ) |virtual| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_on_state_focused`\ (\ ) |virtual| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_on_state_idle`\ (\ ) |virtual| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_on_state_loss_pending`\ (\ ) |virtual| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_on_state_ready`\ (\ ) |virtual| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_on_state_stopping`\ (\ ) |virtual| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_on_state_synchronized`\ (\ ) |virtual| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_on_state_visible`\ (\ ) |virtual| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_on_sync_actions`\ (\ ) |virtual| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_on_viewport_composition_layer_destroyed`\ (\ layer\: ``const void*``\ ) |virtual| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`_set_android_surface_swapchain_create_info_and_get_next_pointer`\ (\ property_values\: :ref:`Dictionary`, next_pointer\: ``void*``\ ) |virtual| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`_set_frame_end_info_and_get_next_pointer`\ (\ next_pointer\: ``void*``\ ) |virtual| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`_set_frame_wait_info_and_get_next_pointer`\ (\ next_pointer\: ``void*``\ ) |virtual| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`_set_hand_joint_locations_and_get_next_pointer`\ (\ hand_index\: :ref:`int`, next_pointer\: ``void*``\ ) |virtual| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`_set_instance_create_info_and_get_next_pointer`\ (\ next_pointer\: ``void*``\ ) |virtual| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`_set_projection_views_and_get_next_pointer`\ (\ view_index\: :ref:`int`, next_pointer\: ``void*``\ ) |virtual| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`_set_reference_space_create_info_and_get_next_pointer`\ (\ reference_space_type\: :ref:`int`, next_pointer\: ``void*``\ ) |virtual| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`_set_session_create_and_get_next_pointer`\ (\ next_pointer\: ``void*``\ ) |virtual| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`_set_swapchain_create_info_and_get_next_pointer`\ (\ next_pointer\: ``void*``\ ) |virtual| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`_set_system_properties_and_get_next_pointer`\ (\ next_pointer\: ``void*``\ ) |virtual| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`_set_view_locate_info_and_get_next_pointer`\ (\ next_pointer\: ``void*``\ ) |virtual| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`_set_viewport_composition_layer_and_get_next_pointer`\ (\ layer\: ``const void*``, property_values\: :ref:`Dictionary`, next_pointer\: ``void*``\ ) |virtual| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`OpenXRAPIExtension` | :ref:`get_openxr_api`\ (\ ) | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`register_extension_wrapper`\ (\ ) | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + +.. rst-class:: classref-section-separator + +---- + +.. rst-class:: classref-descriptions-group + +Method Descriptions +------------------- + +.. _class_OpenXRExtensionWrapper_private_method__get_composition_layer: + +.. rst-class:: classref-method + +:ref:`int` **_get_composition_layer**\ (\ index\: :ref:`int`\ ) |virtual| :ref:`🔗` + +Returns a pointer to an ``XrCompositionLayerBaseHeader`` struct to provide the given composition layer. + +This will only be called if the extension previously registered itself with :ref:`OpenXRAPIExtension.register_composition_layer_provider()`. + +.. rst-class:: classref-item-separator + +---- + +.. _class_OpenXRExtensionWrapper_private_method__get_composition_layer_count: + +.. rst-class:: classref-method + +:ref:`int` **_get_composition_layer_count**\ (\ ) |virtual| :ref:`🔗` + +Returns the number of composition layers this extension wrapper provides via :ref:`_get_composition_layer()`. + +This will only be called if the extension previously registered itself with :ref:`OpenXRAPIExtension.register_composition_layer_provider()`. + +.. rst-class:: classref-item-separator + +---- + +.. _class_OpenXRExtensionWrapper_private_method__get_composition_layer_order: + +.. rst-class:: classref-method + +:ref:`int` **_get_composition_layer_order**\ (\ index\: :ref:`int`\ ) |virtual| :ref:`🔗` + +Returns an integer that will be used to sort the given composition layer provided via :ref:`_get_composition_layer()`. Lower numbers will move the layer to the front of the list, and higher numbers to the end. The default projection layer has an order of ``0``, so layers provided by this method should probably be above or below (but not exactly) ``0``. + +This will only be called if the extension previously registered itself with :ref:`OpenXRAPIExtension.register_composition_layer_provider()`. + +.. rst-class:: classref-item-separator + +---- + +.. _class_OpenXRExtensionWrapper_private_method__get_requested_extensions: + +.. rst-class:: classref-method + +:ref:`Dictionary` **_get_requested_extensions**\ (\ ) |virtual| :ref:`🔗` + +Returns a :ref:`Dictionary` of OpenXR extensions related to this extension. The :ref:`Dictionary` should contain the name of the extension, mapped to a ``bool *`` cast to an integer: + +- If the ``bool *`` is a ``nullptr`` this extension is mandatory. + +- If the ``bool *`` points to a boolean, the boolean will be updated to ``true`` if the extension is enabled. + +.. rst-class:: classref-item-separator + +---- + +.. _class_OpenXRExtensionWrapper_private_method__get_suggested_tracker_names: + +.. rst-class:: classref-method + +:ref:`PackedStringArray` **_get_suggested_tracker_names**\ (\ ) |virtual| :ref:`🔗` + +Returns a :ref:`PackedStringArray` of positional tracker names that are used within the extension wrapper. + +.. rst-class:: classref-item-separator + +---- + +.. _class_OpenXRExtensionWrapper_private_method__get_viewport_composition_layer_extension_properties: + +.. rst-class:: classref-method + +:ref:`Array`\[:ref:`Dictionary`\] **_get_viewport_composition_layer_extension_properties**\ (\ ) |virtual| :ref:`🔗` + +Gets an array of :ref:`Dictionary`\ s that represent properties, just like :ref:`Object._get_property_list()`, that will be added to :ref:`OpenXRCompositionLayer` nodes. + +.. rst-class:: classref-item-separator + +---- + +.. _class_OpenXRExtensionWrapper_private_method__get_viewport_composition_layer_extension_property_defaults: + +.. rst-class:: classref-method + +:ref:`Dictionary` **_get_viewport_composition_layer_extension_property_defaults**\ (\ ) |virtual| :ref:`🔗` + +Gets a :ref:`Dictionary` containing the default values for the properties returned by :ref:`_get_viewport_composition_layer_extension_properties()`. + +.. rst-class:: classref-item-separator + +---- + +.. _class_OpenXRExtensionWrapper_private_method__on_before_instance_created: + +.. rst-class:: classref-method + +|void| **_on_before_instance_created**\ (\ ) |virtual| :ref:`🔗` + +Called before the OpenXR instance is created. + +.. rst-class:: classref-item-separator + +---- + +.. _class_OpenXRExtensionWrapper_private_method__on_event_polled: + +.. rst-class:: classref-method + +:ref:`bool` **_on_event_polled**\ (\ event\: ``const void*``\ ) |virtual| :ref:`🔗` + +Called when there is an OpenXR event to process. When implementing, return ``true`` if the event was handled, return ``false`` otherwise. + +.. rst-class:: classref-item-separator + +---- + +.. _class_OpenXRExtensionWrapper_private_method__on_instance_created: + +.. rst-class:: classref-method + +|void| **_on_instance_created**\ (\ instance\: :ref:`int`\ ) |virtual| :ref:`🔗` + +Called right after the OpenXR instance is created. + +.. rst-class:: classref-item-separator + +---- + +.. _class_OpenXRExtensionWrapper_private_method__on_instance_destroyed: + +.. rst-class:: classref-method + +|void| **_on_instance_destroyed**\ (\ ) |virtual| :ref:`🔗` + +Called right before the OpenXR instance is destroyed. + +.. rst-class:: classref-item-separator + +---- + +.. _class_OpenXRExtensionWrapper_private_method__on_main_swapchains_created: + +.. rst-class:: classref-method + +|void| **_on_main_swapchains_created**\ (\ ) |virtual| :ref:`🔗` + +Called right after the main swapchains are (re)created. + +.. rst-class:: classref-item-separator + +---- + +.. _class_OpenXRExtensionWrapper_private_method__on_post_draw_viewport: + +.. rst-class:: classref-method + +|void| **_on_post_draw_viewport**\ (\ viewport\: :ref:`RID`\ ) |virtual| :ref:`🔗` + +Called right after the given viewport is rendered. + +\ **Note:** The draw commands might only be queued at this point, not executed. + +.. rst-class:: classref-item-separator + +---- + +.. _class_OpenXRExtensionWrapper_private_method__on_pre_draw_viewport: + +.. rst-class:: classref-method + +|void| **_on_pre_draw_viewport**\ (\ viewport\: :ref:`RID`\ ) |virtual| :ref:`🔗` + +Called right before the given viewport is rendered. + +.. rst-class:: classref-item-separator + +---- + +.. _class_OpenXRExtensionWrapper_private_method__on_pre_render: + +.. rst-class:: classref-method + +|void| **_on_pre_render**\ (\ ) |virtual| :ref:`🔗` + +Called right before the XR viewports begin their rendering step. + +.. rst-class:: classref-item-separator + +---- + +.. _class_OpenXRExtensionWrapper_private_method__on_process: + +.. rst-class:: classref-method + +|void| **_on_process**\ (\ ) |virtual| :ref:`🔗` + +Called as part of the OpenXR process handling. This happens right before general and physics processing steps of the main loop. During this step controller data is queried and made available to game logic. + +.. rst-class:: classref-item-separator + +---- + +.. _class_OpenXRExtensionWrapper_private_method__on_register_metadata: + +.. rst-class:: classref-method + +|void| **_on_register_metadata**\ (\ ) |virtual| :ref:`🔗` + +Allows extensions to register additional controller metadata. This function is called even when the OpenXR API is not constructed as the metadata needs to be available to the editor. + +Extensions should also provide metadata regardless of whether they are supported on the host system. The controller data is used to setup action maps for users who may have access to the relevant hardware. + +.. rst-class:: classref-item-separator + +---- + +.. _class_OpenXRExtensionWrapper_private_method__on_session_created: + +.. rst-class:: classref-method + +|void| **_on_session_created**\ (\ session\: :ref:`int`\ ) |virtual| :ref:`🔗` + +Called right after the OpenXR session is created. + +.. rst-class:: classref-item-separator + +---- + +.. _class_OpenXRExtensionWrapper_private_method__on_session_destroyed: + +.. rst-class:: classref-method + +|void| **_on_session_destroyed**\ (\ ) |virtual| :ref:`🔗` + +Called right before the OpenXR session is destroyed. + +.. rst-class:: classref-item-separator + +---- + +.. _class_OpenXRExtensionWrapper_private_method__on_state_exiting: + +.. rst-class:: classref-method + +|void| **_on_state_exiting**\ (\ ) |virtual| :ref:`🔗` + +Called when the OpenXR session state is changed to exiting. + +.. rst-class:: classref-item-separator + +---- + +.. _class_OpenXRExtensionWrapper_private_method__on_state_focused: + +.. rst-class:: classref-method + +|void| **_on_state_focused**\ (\ ) |virtual| :ref:`🔗` + +Called when the OpenXR session state is changed to focused. This state is the active state when the game runs. + +.. rst-class:: classref-item-separator + +---- + +.. _class_OpenXRExtensionWrapper_private_method__on_state_idle: + +.. rst-class:: classref-method + +|void| **_on_state_idle**\ (\ ) |virtual| :ref:`🔗` + +Called when the OpenXR session state is changed to idle. + +.. rst-class:: classref-item-separator + +---- + +.. _class_OpenXRExtensionWrapper_private_method__on_state_loss_pending: + +.. rst-class:: classref-method + +|void| **_on_state_loss_pending**\ (\ ) |virtual| :ref:`🔗` + +Called when the OpenXR session state is changed to loss pending. + +.. rst-class:: classref-item-separator + +---- + +.. _class_OpenXRExtensionWrapper_private_method__on_state_ready: + +.. rst-class:: classref-method + +|void| **_on_state_ready**\ (\ ) |virtual| :ref:`🔗` + +Called when the OpenXR session state is changed to ready. This means OpenXR is ready to set up the session. + +.. rst-class:: classref-item-separator + +---- + +.. _class_OpenXRExtensionWrapper_private_method__on_state_stopping: + +.. rst-class:: classref-method + +|void| **_on_state_stopping**\ (\ ) |virtual| :ref:`🔗` + +Called when the OpenXR session state is changed to stopping. + +.. rst-class:: classref-item-separator + +---- + +.. _class_OpenXRExtensionWrapper_private_method__on_state_synchronized: + +.. rst-class:: classref-method + +|void| **_on_state_synchronized**\ (\ ) |virtual| :ref:`🔗` + +Called when the OpenXR session state is changed to synchronized. OpenXR also returns to this state when the application loses focus. + +.. rst-class:: classref-item-separator + +---- + +.. _class_OpenXRExtensionWrapper_private_method__on_state_visible: + +.. rst-class:: classref-method + +|void| **_on_state_visible**\ (\ ) |virtual| :ref:`🔗` + +Called when the OpenXR session state is changed to visible. This means OpenXR is now ready to receive frames. + +.. rst-class:: classref-item-separator + +---- + +.. _class_OpenXRExtensionWrapper_private_method__on_sync_actions: + +.. rst-class:: classref-method + +|void| **_on_sync_actions**\ (\ ) |virtual| :ref:`🔗` + +Called when OpenXR has performed its action sync. + +.. rst-class:: classref-item-separator + +---- + +.. _class_OpenXRExtensionWrapper_private_method__on_viewport_composition_layer_destroyed: + +.. rst-class:: classref-method + +|void| **_on_viewport_composition_layer_destroyed**\ (\ layer\: ``const void*``\ ) |virtual| :ref:`🔗` + +Called when a composition layer created via :ref:`OpenXRCompositionLayer` is destroyed. + +\ ``layer`` is a pointer to an ``XrCompositionLayerBaseHeader`` struct. + +.. rst-class:: classref-item-separator + +---- + +.. _class_OpenXRExtensionWrapper_private_method__set_android_surface_swapchain_create_info_and_get_next_pointer: + +.. rst-class:: classref-method + +:ref:`int` **_set_android_surface_swapchain_create_info_and_get_next_pointer**\ (\ property_values\: :ref:`Dictionary`, next_pointer\: ``void*``\ ) |virtual| :ref:`🔗` + +Adds additional data structures to Android surface swapchains created by :ref:`OpenXRCompositionLayer`. + +\ ``property_values`` contains the values of the properties returned by :ref:`_get_viewport_composition_layer_extension_properties()`. + +.. rst-class:: classref-item-separator + +---- + +.. _class_OpenXRExtensionWrapper_private_method__set_frame_end_info_and_get_next_pointer: + +.. rst-class:: classref-method + +:ref:`int` **_set_frame_end_info_and_get_next_pointer**\ (\ next_pointer\: ``void*``\ ) |virtual| :ref:`🔗` + +Adds additional data structures to ``XrFrameEndInfo``. + +This will only be called if the extension previously registered itself with :ref:`OpenXRAPIExtension.register_frame_info_extension()`. + +.. rst-class:: classref-item-separator + +---- + +.. _class_OpenXRExtensionWrapper_private_method__set_frame_wait_info_and_get_next_pointer: + +.. rst-class:: classref-method + +:ref:`int` **_set_frame_wait_info_and_get_next_pointer**\ (\ next_pointer\: ``void*``\ ) |virtual| :ref:`🔗` + +Adds additional data structures to ``XrFrameWaitInfo``. + +This will only be called if the extension previously registered itself with :ref:`OpenXRAPIExtension.register_frame_info_extension()`. + +.. rst-class:: classref-item-separator + +---- + +.. _class_OpenXRExtensionWrapper_private_method__set_hand_joint_locations_and_get_next_pointer: + +.. rst-class:: classref-method + +:ref:`int` **_set_hand_joint_locations_and_get_next_pointer**\ (\ hand_index\: :ref:`int`, next_pointer\: ``void*``\ ) |virtual| :ref:`🔗` + +Adds additional data structures when each hand tracker is created. + +.. rst-class:: classref-item-separator + +---- + +.. _class_OpenXRExtensionWrapper_private_method__set_instance_create_info_and_get_next_pointer: + +.. rst-class:: classref-method + +:ref:`int` **_set_instance_create_info_and_get_next_pointer**\ (\ next_pointer\: ``void*``\ ) |virtual| :ref:`🔗` + +Adds additional data structures when the OpenXR instance is created. + +.. rst-class:: classref-item-separator + +---- + +.. _class_OpenXRExtensionWrapper_private_method__set_projection_views_and_get_next_pointer: + +.. rst-class:: classref-method + +:ref:`int` **_set_projection_views_and_get_next_pointer**\ (\ view_index\: :ref:`int`, next_pointer\: ``void*``\ ) |virtual| :ref:`🔗` + +Adds additional data structures to the projection view of the given ``view_index``. + +.. rst-class:: classref-item-separator + +---- + +.. _class_OpenXRExtensionWrapper_private_method__set_reference_space_create_info_and_get_next_pointer: + +.. rst-class:: classref-method + +:ref:`int` **_set_reference_space_create_info_and_get_next_pointer**\ (\ reference_space_type\: :ref:`int`, next_pointer\: ``void*``\ ) |virtual| :ref:`🔗` + +Adds additional data structures to ``XrReferenceSpaceCreateInfo``. + +.. rst-class:: classref-item-separator + +---- + +.. _class_OpenXRExtensionWrapper_private_method__set_session_create_and_get_next_pointer: + +.. rst-class:: classref-method + +:ref:`int` **_set_session_create_and_get_next_pointer**\ (\ next_pointer\: ``void*``\ ) |virtual| :ref:`🔗` + +Adds additional data structures when the OpenXR session is created. + +.. rst-class:: classref-item-separator + +---- + +.. _class_OpenXRExtensionWrapper_private_method__set_swapchain_create_info_and_get_next_pointer: + +.. rst-class:: classref-method + +:ref:`int` **_set_swapchain_create_info_and_get_next_pointer**\ (\ next_pointer\: ``void*``\ ) |virtual| :ref:`🔗` + +Adds additional data structures when creating OpenXR swapchains. + +.. rst-class:: classref-item-separator + +---- + +.. _class_OpenXRExtensionWrapper_private_method__set_system_properties_and_get_next_pointer: + +.. rst-class:: classref-method + +:ref:`int` **_set_system_properties_and_get_next_pointer**\ (\ next_pointer\: ``void*``\ ) |virtual| :ref:`🔗` + +Adds additional data structures when querying OpenXR system abilities. + +.. rst-class:: classref-item-separator + +---- + +.. _class_OpenXRExtensionWrapper_private_method__set_view_locate_info_and_get_next_pointer: + +.. rst-class:: classref-method + +:ref:`int` **_set_view_locate_info_and_get_next_pointer**\ (\ next_pointer\: ``void*``\ ) |virtual| :ref:`🔗` + +Adds additional data structures to ``XrViewLocateInfo``. + +This will only be called if the extension previously registered itself with :ref:`OpenXRAPIExtension.register_frame_info_extension()`. + +.. rst-class:: classref-item-separator + +---- + +.. _class_OpenXRExtensionWrapper_private_method__set_viewport_composition_layer_and_get_next_pointer: + +.. rst-class:: classref-method + +:ref:`int` **_set_viewport_composition_layer_and_get_next_pointer**\ (\ layer\: ``const void*``, property_values\: :ref:`Dictionary`, next_pointer\: ``void*``\ ) |virtual| :ref:`🔗` + +Adds additional data structures to composition layers created by :ref:`OpenXRCompositionLayer`. + +\ ``property_values`` contains the values of the properties returned by :ref:`_get_viewport_composition_layer_extension_properties()`. + +\ ``layer`` is a pointer to an ``XrCompositionLayerBaseHeader`` struct. + +.. rst-class:: classref-item-separator + +---- + +.. _class_OpenXRExtensionWrapper_method_get_openxr_api: + +.. rst-class:: classref-method + +:ref:`OpenXRAPIExtension` **get_openxr_api**\ (\ ) :ref:`🔗` + +Returns the created :ref:`OpenXRAPIExtension`, which can be used to access the OpenXR API. + +.. rst-class:: classref-item-separator + +---- + +.. _class_OpenXRExtensionWrapper_method_register_extension_wrapper: + +.. rst-class:: classref-method + +|void| **register_extension_wrapper**\ (\ ) :ref:`🔗` + +Registers the extension. This should happen at core module initialization level. + +.. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` +.. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` +.. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` +.. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` +.. |static| replace:: :abbr:`static (This method doesn't need an instance to be called, so it can be called directly using the class name.)` +.. |operator| replace:: :abbr:`operator (This method describes a valid operator to use with this type as left-hand operand.)` +.. |bitfield| replace:: :abbr:`BitField (This value is an integer composed as a bitmask of the following flags.)` +.. |void| replace:: :abbr:`void (No return value.)` diff --git a/classes/class_openxrextensionwrapperextension.rst b/classes/class_openxrextensionwrapperextension.rst index 626e323ef..69b0e97b4 100644 --- a/classes/class_openxrextensionwrapperextension.rst +++ b/classes/class_openxrextensionwrapperextension.rst @@ -10,587 +10,21 @@ OpenXRExtensionWrapperExtension =============================== -**Inherits:** :ref:`Object` +**Deprecated:** Use :ref:`OpenXRExtensionWrapper` instead. -Allows clients to implement OpenXR extensions with GDExtension. +**Inherits:** :ref:`OpenXRExtensionWrapper` **<** :ref:`Object` + +Allows implementing OpenXR extensions with GDExtension. .. rst-class:: classref-introduction-group Description ----------- -**OpenXRExtensionWrapperExtension** allows clients to implement OpenXR extensions with GDExtension. The extension should be registered with :ref:`register_extension_wrapper()`. - -.. rst-class:: classref-reftable-group - -Methods -------- - -.. table:: - :widths: auto - - +------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`_get_composition_layer`\ (\ index\: :ref:`int`\ ) |virtual| | - +------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`_get_composition_layer_count`\ (\ ) |virtual| | - +------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`_get_composition_layer_order`\ (\ index\: :ref:`int`\ ) |virtual| | - +------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Dictionary` | :ref:`_get_requested_extensions`\ (\ ) |virtual| | - +------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`PackedStringArray` | :ref:`_get_suggested_tracker_names`\ (\ ) |virtual| | - +------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Array`\[:ref:`Dictionary`\] | :ref:`_get_viewport_composition_layer_extension_properties`\ (\ ) |virtual| | - +------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Dictionary` | :ref:`_get_viewport_composition_layer_extension_property_defaults`\ (\ ) |virtual| | - +------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_on_before_instance_created`\ (\ ) |virtual| | - +------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`_on_event_polled`\ (\ event\: ``const void*``\ ) |virtual| | - +------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_on_instance_created`\ (\ instance\: :ref:`int`\ ) |virtual| | - +------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_on_instance_destroyed`\ (\ ) |virtual| | - +------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_on_main_swapchains_created`\ (\ ) |virtual| | - +------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_on_post_draw_viewport`\ (\ viewport\: :ref:`RID`\ ) |virtual| | - +------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_on_pre_draw_viewport`\ (\ viewport\: :ref:`RID`\ ) |virtual| | - +------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_on_pre_render`\ (\ ) |virtual| | - +------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_on_process`\ (\ ) |virtual| | - +------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_on_register_metadata`\ (\ ) |virtual| | - +------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_on_session_created`\ (\ session\: :ref:`int`\ ) |virtual| | - +------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_on_session_destroyed`\ (\ ) |virtual| | - +------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_on_state_exiting`\ (\ ) |virtual| | - +------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_on_state_focused`\ (\ ) |virtual| | - +------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_on_state_idle`\ (\ ) |virtual| | - +------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_on_state_loss_pending`\ (\ ) |virtual| | - +------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_on_state_ready`\ (\ ) |virtual| | - +------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_on_state_stopping`\ (\ ) |virtual| | - +------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_on_state_synchronized`\ (\ ) |virtual| | - +------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_on_state_visible`\ (\ ) |virtual| | - +------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_on_viewport_composition_layer_destroyed`\ (\ layer\: ``const void*``\ ) |virtual| | - +------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`_set_android_surface_swapchain_create_info_and_get_next_pointer`\ (\ property_values\: :ref:`Dictionary`, next_pointer\: ``void*``\ ) |virtual| | - +------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`_set_hand_joint_locations_and_get_next_pointer`\ (\ hand_index\: :ref:`int`, next_pointer\: ``void*``\ ) |virtual| | - +------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`_set_instance_create_info_and_get_next_pointer`\ (\ next_pointer\: ``void*``\ ) |virtual| | - +------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`_set_projection_views_and_get_next_pointer`\ (\ view_index\: :ref:`int`, next_pointer\: ``void*``\ ) |virtual| | - +------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`_set_session_create_and_get_next_pointer`\ (\ next_pointer\: ``void*``\ ) |virtual| | - +------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`_set_swapchain_create_info_and_get_next_pointer`\ (\ next_pointer\: ``void*``\ ) |virtual| | - +------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`_set_system_properties_and_get_next_pointer`\ (\ next_pointer\: ``void*``\ ) |virtual| | - +------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`_set_viewport_composition_layer_and_get_next_pointer`\ (\ layer\: ``const void*``, property_values\: :ref:`Dictionary`, next_pointer\: ``void*``\ ) |virtual| | - +------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`OpenXRAPIExtension` | :ref:`get_openxr_api`\ (\ ) | - +------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`register_extension_wrapper`\ (\ ) | - +------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - -.. rst-class:: classref-section-separator - ----- - -.. rst-class:: classref-descriptions-group - -Method Descriptions -------------------- - -.. _class_OpenXRExtensionWrapperExtension_private_method__get_composition_layer: - -.. rst-class:: classref-method - -:ref:`int` **_get_composition_layer**\ (\ index\: :ref:`int`\ ) |virtual| :ref:`🔗` - -Returns a pointer to an ``XrCompositionLayerBaseHeader`` struct to provide the given composition layer. - -This will only be called if the extension previously registered itself with :ref:`OpenXRAPIExtension.register_composition_layer_provider()`. - -.. rst-class:: classref-item-separator - ----- - -.. _class_OpenXRExtensionWrapperExtension_private_method__get_composition_layer_count: - -.. rst-class:: classref-method - -:ref:`int` **_get_composition_layer_count**\ (\ ) |virtual| :ref:`🔗` - -Returns the number of composition layers this extension wrapper provides via :ref:`_get_composition_layer()`. - -This will only be called if the extension previously registered itself with :ref:`OpenXRAPIExtension.register_composition_layer_provider()`. - -.. rst-class:: classref-item-separator - ----- - -.. _class_OpenXRExtensionWrapperExtension_private_method__get_composition_layer_order: - -.. rst-class:: classref-method - -:ref:`int` **_get_composition_layer_order**\ (\ index\: :ref:`int`\ ) |virtual| :ref:`🔗` - -Returns an integer that will be used to sort the given composition layer provided via :ref:`_get_composition_layer()`. Lower numbers will move the layer to the front of the list, and higher numbers to the end. The default projection layer has an order of ``0``, so layers provided by this method should probably be above or below (but not exactly) ``0``. - -This will only be called if the extension previously registered itself with :ref:`OpenXRAPIExtension.register_composition_layer_provider()`. - -.. rst-class:: classref-item-separator - ----- - -.. _class_OpenXRExtensionWrapperExtension_private_method__get_requested_extensions: - -.. rst-class:: classref-method - -:ref:`Dictionary` **_get_requested_extensions**\ (\ ) |virtual| :ref:`🔗` - -Returns a :ref:`Dictionary` of OpenXR extensions related to this extension. The :ref:`Dictionary` should contain the name of the extension, mapped to a ``bool *`` cast to an integer: - -- If the ``bool *`` is a ``nullptr`` this extension is mandatory. - -- If the ``bool *`` points to a boolean, the boolean will be updated to ``true`` if the extension is enabled. - -.. rst-class:: classref-item-separator - ----- - -.. _class_OpenXRExtensionWrapperExtension_private_method__get_suggested_tracker_names: - -.. rst-class:: classref-method - -:ref:`PackedStringArray` **_get_suggested_tracker_names**\ (\ ) |virtual| :ref:`🔗` - -Returns a :ref:`PackedStringArray` of positional tracker names that are used within the extension wrapper. - -.. rst-class:: classref-item-separator - ----- - -.. _class_OpenXRExtensionWrapperExtension_private_method__get_viewport_composition_layer_extension_properties: - -.. rst-class:: classref-method - -:ref:`Array`\[:ref:`Dictionary`\] **_get_viewport_composition_layer_extension_properties**\ (\ ) |virtual| :ref:`🔗` - -Gets an array of :ref:`Dictionary`\ s that represent properties, just like :ref:`Object._get_property_list()`, that will be added to :ref:`OpenXRCompositionLayer` nodes. - -.. rst-class:: classref-item-separator - ----- - -.. _class_OpenXRExtensionWrapperExtension_private_method__get_viewport_composition_layer_extension_property_defaults: - -.. rst-class:: classref-method - -:ref:`Dictionary` **_get_viewport_composition_layer_extension_property_defaults**\ (\ ) |virtual| :ref:`🔗` - -Gets a :ref:`Dictionary` containing the default values for the properties returned by :ref:`_get_viewport_composition_layer_extension_properties()`. - -.. rst-class:: classref-item-separator - ----- - -.. _class_OpenXRExtensionWrapperExtension_private_method__on_before_instance_created: - -.. rst-class:: classref-method - -|void| **_on_before_instance_created**\ (\ ) |virtual| :ref:`🔗` - -Called before the OpenXR instance is created. - -.. rst-class:: classref-item-separator - ----- - -.. _class_OpenXRExtensionWrapperExtension_private_method__on_event_polled: - -.. rst-class:: classref-method - -:ref:`bool` **_on_event_polled**\ (\ event\: ``const void*``\ ) |virtual| :ref:`🔗` - -Called when there is an OpenXR event to process. When implementing, return ``true`` if the event was handled, return ``false`` otherwise. - -.. rst-class:: classref-item-separator - ----- - -.. _class_OpenXRExtensionWrapperExtension_private_method__on_instance_created: - -.. rst-class:: classref-method - -|void| **_on_instance_created**\ (\ instance\: :ref:`int`\ ) |virtual| :ref:`🔗` - -Called right after the OpenXR instance is created. - -.. rst-class:: classref-item-separator - ----- - -.. _class_OpenXRExtensionWrapperExtension_private_method__on_instance_destroyed: - -.. rst-class:: classref-method - -|void| **_on_instance_destroyed**\ (\ ) |virtual| :ref:`🔗` - -Called right before the OpenXR instance is destroyed. - -.. rst-class:: classref-item-separator - ----- - -.. _class_OpenXRExtensionWrapperExtension_private_method__on_main_swapchains_created: - -.. rst-class:: classref-method - -|void| **_on_main_swapchains_created**\ (\ ) |virtual| :ref:`🔗` - -Called right after the main swapchains are (re)created. - -.. rst-class:: classref-item-separator - ----- - -.. _class_OpenXRExtensionWrapperExtension_private_method__on_post_draw_viewport: - -.. rst-class:: classref-method - -|void| **_on_post_draw_viewport**\ (\ viewport\: :ref:`RID`\ ) |virtual| :ref:`🔗` - -Called right after the given viewport is rendered. - -\ **Note:** The draw commands might only be queued at this point, not executed. - -.. rst-class:: classref-item-separator - ----- - -.. _class_OpenXRExtensionWrapperExtension_private_method__on_pre_draw_viewport: - -.. rst-class:: classref-method - -|void| **_on_pre_draw_viewport**\ (\ viewport\: :ref:`RID`\ ) |virtual| :ref:`🔗` - -Called right before the given viewport is rendered. - -.. rst-class:: classref-item-separator - ----- - -.. _class_OpenXRExtensionWrapperExtension_private_method__on_pre_render: - -.. rst-class:: classref-method - -|void| **_on_pre_render**\ (\ ) |virtual| :ref:`🔗` - -Called right before the XR viewports begin their rendering step. - -.. rst-class:: classref-item-separator - ----- - -.. _class_OpenXRExtensionWrapperExtension_private_method__on_process: - -.. rst-class:: classref-method - -|void| **_on_process**\ (\ ) |virtual| :ref:`🔗` - -Called as part of the OpenXR process handling. This happens right before general and physics processing steps of the main loop. During this step controller data is queried and made available to game logic. - -.. rst-class:: classref-item-separator - ----- - -.. _class_OpenXRExtensionWrapperExtension_private_method__on_register_metadata: - -.. rst-class:: classref-method - -|void| **_on_register_metadata**\ (\ ) |virtual| :ref:`🔗` - -Allows extensions to register additional controller metadata. This function is called even when the OpenXR API is not constructed as the metadata needs to be available to the editor. - -Extensions should also provide metadata regardless of whether they are supported on the host system. The controller data is used to setup action maps for users who may have access to the relevant hardware. - -.. rst-class:: classref-item-separator - ----- - -.. _class_OpenXRExtensionWrapperExtension_private_method__on_session_created: - -.. rst-class:: classref-method - -|void| **_on_session_created**\ (\ session\: :ref:`int`\ ) |virtual| :ref:`🔗` - -Called right after the OpenXR session is created. - -.. rst-class:: classref-item-separator - ----- - -.. _class_OpenXRExtensionWrapperExtension_private_method__on_session_destroyed: - -.. rst-class:: classref-method - -|void| **_on_session_destroyed**\ (\ ) |virtual| :ref:`🔗` - -Called right before the OpenXR session is destroyed. - -.. rst-class:: classref-item-separator - ----- - -.. _class_OpenXRExtensionWrapperExtension_private_method__on_state_exiting: - -.. rst-class:: classref-method - -|void| **_on_state_exiting**\ (\ ) |virtual| :ref:`🔗` - -Called when the OpenXR session state is changed to exiting. - -.. rst-class:: classref-item-separator - ----- - -.. _class_OpenXRExtensionWrapperExtension_private_method__on_state_focused: - -.. rst-class:: classref-method - -|void| **_on_state_focused**\ (\ ) |virtual| :ref:`🔗` - -Called when the OpenXR session state is changed to focused. This state is the active state when the game runs. - -.. rst-class:: classref-item-separator - ----- - -.. _class_OpenXRExtensionWrapperExtension_private_method__on_state_idle: - -.. rst-class:: classref-method - -|void| **_on_state_idle**\ (\ ) |virtual| :ref:`🔗` - -Called when the OpenXR session state is changed to idle. - -.. rst-class:: classref-item-separator - ----- - -.. _class_OpenXRExtensionWrapperExtension_private_method__on_state_loss_pending: - -.. rst-class:: classref-method - -|void| **_on_state_loss_pending**\ (\ ) |virtual| :ref:`🔗` - -Called when the OpenXR session state is changed to loss pending. - -.. rst-class:: classref-item-separator - ----- - -.. _class_OpenXRExtensionWrapperExtension_private_method__on_state_ready: - -.. rst-class:: classref-method - -|void| **_on_state_ready**\ (\ ) |virtual| :ref:`🔗` - -Called when the OpenXR session state is changed to ready. This means OpenXR is ready to set up the session. - -.. rst-class:: classref-item-separator - ----- - -.. _class_OpenXRExtensionWrapperExtension_private_method__on_state_stopping: - -.. rst-class:: classref-method - -|void| **_on_state_stopping**\ (\ ) |virtual| :ref:`🔗` - -Called when the OpenXR session state is changed to stopping. - -.. rst-class:: classref-item-separator - ----- - -.. _class_OpenXRExtensionWrapperExtension_private_method__on_state_synchronized: - -.. rst-class:: classref-method - -|void| **_on_state_synchronized**\ (\ ) |virtual| :ref:`🔗` - -Called when the OpenXR session state is changed to synchronized. OpenXR also returns to this state when the application loses focus. - -.. rst-class:: classref-item-separator - ----- - -.. _class_OpenXRExtensionWrapperExtension_private_method__on_state_visible: - -.. rst-class:: classref-method - -|void| **_on_state_visible**\ (\ ) |virtual| :ref:`🔗` - -Called when the OpenXR session state is changed to visible. This means OpenXR is now ready to receive frames. - -.. rst-class:: classref-item-separator - ----- - -.. _class_OpenXRExtensionWrapperExtension_private_method__on_viewport_composition_layer_destroyed: - -.. rst-class:: classref-method - -|void| **_on_viewport_composition_layer_destroyed**\ (\ layer\: ``const void*``\ ) |virtual| :ref:`🔗` - -Called when a composition layer created via :ref:`OpenXRCompositionLayer` is destroyed. - -\ ``layer`` is a pointer to an ``XrCompositionLayerBaseHeader`` struct. - -.. rst-class:: classref-item-separator - ----- - -.. _class_OpenXRExtensionWrapperExtension_private_method__set_android_surface_swapchain_create_info_and_get_next_pointer: - -.. rst-class:: classref-method - -:ref:`int` **_set_android_surface_swapchain_create_info_and_get_next_pointer**\ (\ property_values\: :ref:`Dictionary`, next_pointer\: ``void*``\ ) |virtual| :ref:`🔗` - -Adds additional data structures to Android surface swapchains created by :ref:`OpenXRCompositionLayer`. - -\ ``property_values`` contains the values of the properties returned by :ref:`_get_viewport_composition_layer_extension_properties()`. - -.. rst-class:: classref-item-separator - ----- - -.. _class_OpenXRExtensionWrapperExtension_private_method__set_hand_joint_locations_and_get_next_pointer: - -.. rst-class:: classref-method - -:ref:`int` **_set_hand_joint_locations_and_get_next_pointer**\ (\ hand_index\: :ref:`int`, next_pointer\: ``void*``\ ) |virtual| :ref:`🔗` - -Adds additional data structures when each hand tracker is created. - -.. rst-class:: classref-item-separator - ----- - -.. _class_OpenXRExtensionWrapperExtension_private_method__set_instance_create_info_and_get_next_pointer: - -.. rst-class:: classref-method - -:ref:`int` **_set_instance_create_info_and_get_next_pointer**\ (\ next_pointer\: ``void*``\ ) |virtual| :ref:`🔗` - -Adds additional data structures when the OpenXR instance is created. - -.. rst-class:: classref-item-separator - ----- - -.. _class_OpenXRExtensionWrapperExtension_private_method__set_projection_views_and_get_next_pointer: - -.. rst-class:: classref-method - -:ref:`int` **_set_projection_views_and_get_next_pointer**\ (\ view_index\: :ref:`int`, next_pointer\: ``void*``\ ) |virtual| :ref:`🔗` - -Adds additional data structures to the projection view of the given ``view_index``. - -.. rst-class:: classref-item-separator - ----- - -.. _class_OpenXRExtensionWrapperExtension_private_method__set_session_create_and_get_next_pointer: - -.. rst-class:: classref-method - -:ref:`int` **_set_session_create_and_get_next_pointer**\ (\ next_pointer\: ``void*``\ ) |virtual| :ref:`🔗` - -Adds additional data structures when the OpenXR session is created. - -.. rst-class:: classref-item-separator - ----- - -.. _class_OpenXRExtensionWrapperExtension_private_method__set_swapchain_create_info_and_get_next_pointer: - -.. rst-class:: classref-method - -:ref:`int` **_set_swapchain_create_info_and_get_next_pointer**\ (\ next_pointer\: ``void*``\ ) |virtual| :ref:`🔗` - -Adds additional data structures when creating OpenXR swapchains. - -.. rst-class:: classref-item-separator - ----- - -.. _class_OpenXRExtensionWrapperExtension_private_method__set_system_properties_and_get_next_pointer: - -.. rst-class:: classref-method - -:ref:`int` **_set_system_properties_and_get_next_pointer**\ (\ next_pointer\: ``void*``\ ) |virtual| :ref:`🔗` - -Adds additional data structures when querying OpenXR system abilities. - -.. rst-class:: classref-item-separator - ----- - -.. _class_OpenXRExtensionWrapperExtension_private_method__set_viewport_composition_layer_and_get_next_pointer: - -.. rst-class:: classref-method - -:ref:`int` **_set_viewport_composition_layer_and_get_next_pointer**\ (\ layer\: ``const void*``, property_values\: :ref:`Dictionary`, next_pointer\: ``void*``\ ) |virtual| :ref:`🔗` - -Adds additional data structures to composition layers created by :ref:`OpenXRCompositionLayer`. - -\ ``property_values`` contains the values of the properties returned by :ref:`_get_viewport_composition_layer_extension_properties()`. - -\ ``layer`` is a pointer to an ``XrCompositionLayerBaseHeader`` struct. - -.. rst-class:: classref-item-separator - ----- - -.. _class_OpenXRExtensionWrapperExtension_method_get_openxr_api: - -.. rst-class:: classref-method - -:ref:`OpenXRAPIExtension` **get_openxr_api**\ (\ ) :ref:`🔗` - -Returns the created :ref:`OpenXRAPIExtension`, which can be used to access the OpenXR API. - -.. rst-class:: classref-item-separator - ----- - -.. _class_OpenXRExtensionWrapperExtension_method_register_extension_wrapper: - -.. rst-class:: classref-method - -|void| **register_extension_wrapper**\ (\ ) :ref:`🔗` - -Registers the extension. This should happen at core module initialization level. +**OpenXRExtensionWrapperExtension** allows implementing OpenXR extensions with GDExtension. The extension should be registered with :ref:`OpenXRExtensionWrapper.register_extension_wrapper()`. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_openxrfutureextension.rst b/classes/class_openxrfutureextension.rst new file mode 100644 index 000000000..17ddd3abc --- /dev/null +++ b/classes/class_openxrfutureextension.rst @@ -0,0 +1,101 @@ +:github_url: hide + +.. DO NOT EDIT THIS FILE!!! +.. Generated automatically from Godot engine sources. +.. Generator: https://github.com/godotengine/godot/tree/master/doc/tools/make_rst.py. +.. XML source: https://github.com/godotengine/godot/tree/master/modules/openxr/doc_classes/OpenXRFutureExtension.xml. + +.. _class_OpenXRFutureExtension: + +OpenXRFutureExtension +===================== + +**Inherits:** :ref:`OpenXRExtensionWrapper` **<** :ref:`Object` + +The OpenXR Future extension allows for asynchronous APIs to be used. + +.. rst-class:: classref-introduction-group + +Description +----------- + +This is a support extension in OpenXR that allows other OpenXR extensions to start asynchronous functions and get a callback after this function finishes. It is not intended for consumption within GDScript but can be accessed from GDExtension. + +.. rst-class:: classref-reftable-group + +Methods +------- + +.. table:: + :widths: auto + + +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`cancel_future`\ (\ future\: :ref:`int`\ ) | + +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`is_active`\ (\ ) |const| | + +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`OpenXRFutureResult` | :ref:`register_future`\ (\ future\: :ref:`int`, on_success\: :ref:`Callable` = Callable()\ ) | + +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + +.. rst-class:: classref-section-separator + +---- + +.. rst-class:: classref-descriptions-group + +Method Descriptions +------------------- + +.. _class_OpenXRFutureExtension_method_cancel_future: + +.. rst-class:: classref-method + +|void| **cancel_future**\ (\ future\: :ref:`int`\ ) :ref:`🔗` + +Cancels an in-progress future. ``future`` must be an ``XrFutureEXT`` value previously returned by an API that started an asynchronous function. + +.. rst-class:: classref-item-separator + +---- + +.. _class_OpenXRFutureExtension_method_is_active: + +.. rst-class:: classref-method + +:ref:`bool` **is_active**\ (\ ) |const| :ref:`🔗` + +Returns ``true`` if futures are available in the OpenXR runtime used. This function will only return a usable result after OpenXR has been initialized. + +.. rst-class:: classref-item-separator + +---- + +.. _class_OpenXRFutureExtension_method_register_future: + +.. rst-class:: classref-method + +:ref:`OpenXRFutureResult` **register_future**\ (\ future\: :ref:`int`, on_success\: :ref:`Callable` = Callable()\ ) :ref:`🔗` + +Register an OpenXR Future object so we monitor for completion. ``future`` must be an ``XrFutureEXT`` value previously returned by an API that started an asynchronous function. + +You can optionally specify ``on_success``, it will be invoked on successful completion of the future. + +Or you can use the returned :ref:`OpenXRFutureResult` object to ``await`` its :ref:`OpenXRFutureResult.completed` signal. + +:: + + var future_result = OpenXRFutureExtension.register_future(future) + await future_result.completed + if future_result.get_status() == OpenXRFutureResult.RESULT_FINISHED: + # Handle your success + pass + +.. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` +.. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` +.. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` +.. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` +.. |static| replace:: :abbr:`static (This method doesn't need an instance to be called, so it can be called directly using the class name.)` +.. |operator| replace:: :abbr:`operator (This method describes a valid operator to use with this type as left-hand operand.)` +.. |bitfield| replace:: :abbr:`BitField (This value is an integer composed as a bitmask of the following flags.)` +.. |void| replace:: :abbr:`void (No return value.)` diff --git a/classes/class_openxrfutureresult.rst b/classes/class_openxrfutureresult.rst new file mode 100644 index 000000000..83cb9cdd0 --- /dev/null +++ b/classes/class_openxrfutureresult.rst @@ -0,0 +1,175 @@ +:github_url: hide + +.. DO NOT EDIT THIS FILE!!! +.. Generated automatically from Godot engine sources. +.. Generator: https://github.com/godotengine/godot/tree/master/doc/tools/make_rst.py. +.. XML source: https://github.com/godotengine/godot/tree/master/modules/openxr/doc_classes/OpenXRFutureResult.xml. + +.. _class_OpenXRFutureResult: + +OpenXRFutureResult +================== + +**Inherits:** :ref:`RefCounted` **<** :ref:`Object` + +Result object tracking the asynchronous result of an OpenXR Future object. + +.. rst-class:: classref-introduction-group + +Description +----------- + +Result object tracking the asynchronous result of an OpenXR Future object, you can use this object to track the result status. + +.. rst-class:: classref-reftable-group + +Methods +------- + +.. table:: + :widths: auto + + +-----------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------+ + | |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 + +---- + +.. rst-class:: classref-descriptions-group + +Signals +------- + +.. _class_OpenXRFutureResult_signal_completed: + +.. rst-class:: classref-signal + +**completed**\ (\ result\: :ref:`OpenXRFutureResult`\ ) :ref:`🔗` + +Emitted when the asynchronous function is finished or has been cancelled. + +.. rst-class:: classref-section-separator + +---- + +.. rst-class:: classref-descriptions-group + +Enumerations +------------ + +.. _enum_OpenXRFutureResult_ResultStatus: + +.. rst-class:: classref-enumeration + +enum **ResultStatus**: :ref:`🔗` + +.. _class_OpenXRFutureResult_constant_RESULT_RUNNING: + +.. rst-class:: classref-enumeration-constant + +:ref:`ResultStatus` **RESULT_RUNNING** = ``0`` + +The asynchronous function is running. + +.. _class_OpenXRFutureResult_constant_RESULT_FINISHED: + +.. rst-class:: classref-enumeration-constant + +:ref:`ResultStatus` **RESULT_FINISHED** = ``1`` + +The asynchronous function has finished. + +.. _class_OpenXRFutureResult_constant_RESULT_CANCELLED: + +.. rst-class:: classref-enumeration-constant + +:ref:`ResultStatus` **RESULT_CANCELLED** = ``2`` + +The asynchronous function has been cancelled. + +.. rst-class:: classref-section-separator + +---- + +.. rst-class:: classref-descriptions-group + +Method Descriptions +------------------- + +.. _class_OpenXRFutureResult_method_cancel_future: + +.. rst-class:: classref-method + +|void| **cancel_future**\ (\ ) :ref:`🔗` + +Cancel this future, this will interrupt and stop the asynchronous function. + +.. rst-class:: classref-item-separator + +---- + +.. _class_OpenXRFutureResult_method_get_future: + +.. rst-class:: classref-method + +:ref:`int` **get_future**\ (\ ) |const| :ref:`🔗` + +Return the ``XrFutureEXT`` value this result relates to. + +.. rst-class:: classref-item-separator + +---- + +.. _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 + +:ref:`ResultStatus` **get_status**\ (\ ) |const| :ref:`🔗` + +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.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` +.. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` +.. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` +.. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` +.. |static| replace:: :abbr:`static (This method doesn't need an instance to be called, so it can be called directly using the class name.)` +.. |operator| replace:: :abbr:`operator (This method describes a valid operator to use with this type as left-hand operand.)` +.. |bitfield| replace:: :abbr:`BitField (This value is an integer composed as a bitmask of the following flags.)` +.. |void| replace:: :abbr:`void (No return value.)` diff --git a/classes/class_openxrhand.rst b/classes/class_openxrhand.rst index bbad64f1a..27a575827 100644 --- a/classes/class_openxrhand.rst +++ b/classes/class_openxrhand.rst @@ -281,6 +281,7 @@ Set the motion range (if supported) limiting the hand motion. Set the type of skeleton rig the :ref:`hand_skeleton` is compliant with. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_openxrhapticbase.rst b/classes/class_openxrhapticbase.rst index df545b8cc..d5b34d6a0 100644 --- a/classes/class_openxrhapticbase.rst +++ b/classes/class_openxrhapticbase.rst @@ -24,6 +24,7 @@ Description This is a base class for haptic feedback resources. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_openxrhapticvibration.rst b/classes/class_openxrhapticvibration.rst index 248c601ec..e4a24fcbd 100644 --- a/classes/class_openxrhapticvibration.rst +++ b/classes/class_openxrhapticvibration.rst @@ -94,6 +94,7 @@ The duration of the pulse in nanoseconds. Use ``-1`` for a minimum duration puls The frequency of the pulse in Hz. ``0.0`` will let the XR runtime chose an optimal frequency for the device used. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |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.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_openxrinteractionprofile.rst b/classes/class_openxrinteractionprofile.rst index c1007db90..0f7bed899 100644 --- a/classes/class_openxrinteractionprofile.rst +++ b/classes/class_openxrinteractionprofile.rst @@ -167,6 +167,7 @@ Get the :ref:`OpenXRBindingModifier` at this index. Get the number of binding modifiers in this interaction profile. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_openxrinteractionprofileeditor.rst b/classes/class_openxrinteractionprofileeditor.rst index a3494d440..423e1d341 100644 --- a/classes/class_openxrinteractionprofileeditor.rst +++ b/classes/class_openxrinteractionprofileeditor.rst @@ -22,6 +22,7 @@ Description This is the default OpenXR interaction profile editor that provides a generic interface for editing any interaction profile for which no custom editor has been defined. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_openxrinteractionprofileeditorbase.rst b/classes/class_openxrinteractionprofileeditorbase.rst index 29a9e1554..4b97d8cc0 100644 --- a/classes/class_openxrinteractionprofileeditorbase.rst +++ b/classes/class_openxrinteractionprofileeditorbase.rst @@ -67,6 +67,7 @@ Method Descriptions Setup this editor for the provided ``action_map`` and ``interaction_profile``. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_openxrinteractionprofilemetadata.rst b/classes/class_openxrinteractionprofilemetadata.rst index 4cba1cd46..fae072322 100644 --- a/classes/class_openxrinteractionprofilemetadata.rst +++ b/classes/class_openxrinteractionprofilemetadata.rst @@ -96,9 +96,10 @@ Registers a top level path to which profiles can be bound. For instance ``/user/ \ ``display_name`` is the name shown to the user. ``openxr_path`` is the top level path being registered. ``openxr_extension_name`` is optional and ensures the top level path is only used if the specified extension is available/enabled. -When a top level path ends up being bound by OpenXR, a :ref:`XRPositionalTracker` is instantiated to manage the state of the device. +When a top level path ends up being bound by OpenXR, an :ref:`XRPositionalTracker` is instantiated to manage the state of the device. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |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.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_openxrinterface.rst b/classes/class_openxrinterface.rst index b20aacaec..cf9d6319e 100644 --- a/classes/class_openxrinterface.rst +++ b/classes/class_openxrinterface.rst @@ -81,6 +81,8 @@ Methods +--------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`HandMotionRange` | :ref:`get_motion_range`\ (\ hand\: :ref:`Hand`\ ) |const| | +--------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`SessionState` | :ref:`get_session_state`\ (\ ) | + +--------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`is_action_set_active`\ (\ name\: :ref:`String`\ ) |const| | +--------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`is_eye_gaze_interaction_supported`\ (\ ) | @@ -93,6 +95,10 @@ Methods +--------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`set_action_set_active`\ (\ name\: :ref:`String`, active\: :ref:`bool`\ ) | +--------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_cpu_level`\ (\ level\: :ref:`PerfSettingsLevel`\ ) | + +--------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_gpu_level`\ (\ level\: :ref:`PerfSettingsLevel`\ ) | + +--------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`set_motion_range`\ (\ hand\: :ref:`Hand`, motion_range\: :ref:`HandMotionRange`\ ) | +--------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ @@ -105,6 +111,30 @@ Methods Signals ------- +.. _class_OpenXRInterface_signal_cpu_level_changed: + +.. rst-class:: classref-signal + +**cpu_level_changed**\ (\ sub_domain\: :ref:`int`, from_level\: :ref:`int`, to_level\: :ref:`int`\ ) :ref:`🔗` + +Informs the device CPU performance level has changed in the specified subdomain. + +.. rst-class:: classref-item-separator + +---- + +.. _class_OpenXRInterface_signal_gpu_level_changed: + +.. rst-class:: classref-signal + +**gpu_level_changed**\ (\ sub_domain\: :ref:`int`, from_level\: :ref:`int`, to_level\: :ref:`int`\ ) :ref:`🔗` + +Informs the device GPU performance level has changed in the specified subdomain. + +.. rst-class:: classref-item-separator + +---- + .. _class_OpenXRInterface_signal_instance_exiting: .. rst-class:: classref-signal @@ -161,7 +191,7 @@ Informs our OpenXR session has been started. **session_focussed**\ (\ ) :ref:`🔗` -Informs our OpenXR session now has focus. +Informs our OpenXR session now has focus, for example output is sent to the HMD and we're receiving XR input. .. rst-class:: classref-item-separator @@ -191,13 +221,25 @@ Informs our OpenXR session is stopping. ---- +.. _class_OpenXRInterface_signal_session_synchronized: + +.. rst-class:: classref-signal + +**session_synchronized**\ (\ ) :ref:`🔗` + +Informs our OpenXR session has been synchronized. + +.. rst-class:: classref-item-separator + +---- + .. _class_OpenXRInterface_signal_session_visible: .. rst-class:: classref-signal **session_visible**\ (\ ) :ref:`🔗` -Informs our OpenXR session is now visible (output is being sent to the HMD). +Informs our OpenXR session is now visible, for example output is sent to the HMD but we don't receive XR input. .. rst-class:: classref-section-separator @@ -208,6 +250,92 @@ Informs our OpenXR session is now visible (output is being sent to the HMD). Enumerations ------------ +.. _enum_OpenXRInterface_SessionState: + +.. rst-class:: classref-enumeration + +enum **SessionState**: :ref:`🔗` + +.. _class_OpenXRInterface_constant_SESSION_STATE_UNKNOWN: + +.. rst-class:: classref-enumeration-constant + +:ref:`SessionState` **SESSION_STATE_UNKNOWN** = ``0`` + +The state of the session is unknown, we haven't tried setting up OpenXR yet. + +.. _class_OpenXRInterface_constant_SESSION_STATE_IDLE: + +.. rst-class:: classref-enumeration-constant + +:ref:`SessionState` **SESSION_STATE_IDLE** = ``1`` + +The initial state after the OpenXR session is created or after the session is destroyed. + +.. _class_OpenXRInterface_constant_SESSION_STATE_READY: + +.. rst-class:: classref-enumeration-constant + +:ref:`SessionState` **SESSION_STATE_READY** = ``2`` + +OpenXR is ready to begin our session. :ref:`session_begun` is emitted when we change to this state. + +.. _class_OpenXRInterface_constant_SESSION_STATE_SYNCHRONIZED: + +.. rst-class:: classref-enumeration-constant + +:ref:`SessionState` **SESSION_STATE_SYNCHRONIZED** = ``3`` + +The application has synched its frame loop with the runtime but we're not rendering anything. :ref:`session_synchronized` is emitted when we change to this state. + +.. _class_OpenXRInterface_constant_SESSION_STATE_VISIBLE: + +.. rst-class:: classref-enumeration-constant + +:ref:`SessionState` **SESSION_STATE_VISIBLE** = ``4`` + +The application has synched its frame loop with the runtime and we're rendering output to the user, however we receive no user input. :ref:`session_visible` is emitted when we change to this state. + +\ **Note:** This is the current state just before we get the focused state, whenever the user opens a system menu, switches to another application, or takes off their headset. + +.. _class_OpenXRInterface_constant_SESSION_STATE_FOCUSED: + +.. rst-class:: classref-enumeration-constant + +:ref:`SessionState` **SESSION_STATE_FOCUSED** = ``5`` + +The application has synched its frame loop with the runtime, we're rendering output to the user and we're receiving XR input. :ref:`session_focussed` is emitted when we change to this state. + +\ **Note:** This is the state OpenXR will be in when the user can fully interact with your game. + +.. _class_OpenXRInterface_constant_SESSION_STATE_STOPPING: + +.. rst-class:: classref-enumeration-constant + +:ref:`SessionState` **SESSION_STATE_STOPPING** = ``6`` + +Our session is being stopped. :ref:`session_stopping` is emitted when we change to this state. + +.. _class_OpenXRInterface_constant_SESSION_STATE_LOSS_PENDING: + +.. rst-class:: classref-enumeration-constant + +:ref:`SessionState` **SESSION_STATE_LOSS_PENDING** = ``7`` + +The session is about to be lost. :ref:`session_loss_pending` is emitted when we change to this state. + +.. _class_OpenXRInterface_constant_SESSION_STATE_EXITING: + +.. rst-class:: classref-enumeration-constant + +:ref:`SessionState` **SESSION_STATE_EXITING** = ``8`` + +The OpenXR instance is about to be destroyed and we're existing. :ref:`instance_exiting` is emitted when we change to this state. + +.. rst-class:: classref-item-separator + +---- + .. _enum_OpenXRInterface_Hand: .. rst-class:: classref-enumeration @@ -312,7 +440,7 @@ The source of hand tracking is a controller, bone positions are inferred from co :ref:`HandTrackedSource` **HAND_TRACKED_SOURCE_MAX** = ``3`` -Maximum value for the hand tracked source enum. +Represents the size of the :ref:`HandTrackedSource` enum. .. rst-class:: classref-item-separator @@ -378,7 +506,7 @@ Thumb tip joint. :ref:`HandJoints` **HAND_JOINT_INDEX_METACARPAL** = ``6`` -Index metacarpal joint. +Index finger metacarpal joint. .. _class_OpenXRInterface_constant_HAND_JOINT_INDEX_PROXIMAL: @@ -386,7 +514,7 @@ Index metacarpal joint. :ref:`HandJoints` **HAND_JOINT_INDEX_PROXIMAL** = ``7`` -Index proximal joint. +Index finger phalanx proximal joint. .. _class_OpenXRInterface_constant_HAND_JOINT_INDEX_INTERMEDIATE: @@ -394,7 +522,7 @@ Index proximal joint. :ref:`HandJoints` **HAND_JOINT_INDEX_INTERMEDIATE** = ``8`` -Index intermediate joint. +Index finger phalanx intermediate joint. .. _class_OpenXRInterface_constant_HAND_JOINT_INDEX_DISTAL: @@ -402,7 +530,7 @@ Index intermediate joint. :ref:`HandJoints` **HAND_JOINT_INDEX_DISTAL** = ``9`` -Index distal joint. +Index finger phalanx distal joint. .. _class_OpenXRInterface_constant_HAND_JOINT_INDEX_TIP: @@ -410,7 +538,7 @@ Index distal joint. :ref:`HandJoints` **HAND_JOINT_INDEX_TIP** = ``10`` -Index tip joint. +Index finger tip joint. .. _class_OpenXRInterface_constant_HAND_JOINT_MIDDLE_METACARPAL: @@ -418,7 +546,7 @@ Index tip joint. :ref:`HandJoints` **HAND_JOINT_MIDDLE_METACARPAL** = ``11`` -Middle metacarpal joint. +Middle finger metacarpal joint. .. _class_OpenXRInterface_constant_HAND_JOINT_MIDDLE_PROXIMAL: @@ -426,7 +554,7 @@ Middle metacarpal joint. :ref:`HandJoints` **HAND_JOINT_MIDDLE_PROXIMAL** = ``12`` -Middle proximal joint. +Middle finger phalanx proximal joint. .. _class_OpenXRInterface_constant_HAND_JOINT_MIDDLE_INTERMEDIATE: @@ -434,7 +562,7 @@ Middle proximal joint. :ref:`HandJoints` **HAND_JOINT_MIDDLE_INTERMEDIATE** = ``13`` -Middle intermediate joint. +Middle finger phalanx intermediate joint. .. _class_OpenXRInterface_constant_HAND_JOINT_MIDDLE_DISTAL: @@ -442,7 +570,7 @@ Middle intermediate joint. :ref:`HandJoints` **HAND_JOINT_MIDDLE_DISTAL** = ``14`` -Middle distal joint. +Middle finger phalanx distal joint. .. _class_OpenXRInterface_constant_HAND_JOINT_MIDDLE_TIP: @@ -450,7 +578,7 @@ Middle distal joint. :ref:`HandJoints` **HAND_JOINT_MIDDLE_TIP** = ``15`` -Middle tip joint. +Middle finger tip joint. .. _class_OpenXRInterface_constant_HAND_JOINT_RING_METACARPAL: @@ -458,7 +586,7 @@ Middle tip joint. :ref:`HandJoints` **HAND_JOINT_RING_METACARPAL** = ``16`` -Ring metacarpal joint. +Ring finger metacarpal joint. .. _class_OpenXRInterface_constant_HAND_JOINT_RING_PROXIMAL: @@ -466,7 +594,7 @@ Ring metacarpal joint. :ref:`HandJoints` **HAND_JOINT_RING_PROXIMAL** = ``17`` -Ring proximal joint. +Ring finger phalanx proximal joint. .. _class_OpenXRInterface_constant_HAND_JOINT_RING_INTERMEDIATE: @@ -474,7 +602,7 @@ Ring proximal joint. :ref:`HandJoints` **HAND_JOINT_RING_INTERMEDIATE** = ``18`` -Ring intermediate joint. +Ring finger phalanx intermediate joint. .. _class_OpenXRInterface_constant_HAND_JOINT_RING_DISTAL: @@ -482,7 +610,7 @@ Ring intermediate joint. :ref:`HandJoints` **HAND_JOINT_RING_DISTAL** = ``19`` -Ring distal joint. +Ring finger phalanx distal joint. .. _class_OpenXRInterface_constant_HAND_JOINT_RING_TIP: @@ -490,7 +618,7 @@ Ring distal joint. :ref:`HandJoints` **HAND_JOINT_RING_TIP** = ``20`` -Ring tip joint. +Ring finger tip joint. .. _class_OpenXRInterface_constant_HAND_JOINT_LITTLE_METACARPAL: @@ -498,7 +626,7 @@ Ring tip joint. :ref:`HandJoints` **HAND_JOINT_LITTLE_METACARPAL** = ``21`` -Little metacarpal joint. +Pinky finger metacarpal joint. .. _class_OpenXRInterface_constant_HAND_JOINT_LITTLE_PROXIMAL: @@ -506,7 +634,7 @@ Little metacarpal joint. :ref:`HandJoints` **HAND_JOINT_LITTLE_PROXIMAL** = ``22`` -Little proximal joint. +Pinky finger phalanx proximal joint. .. _class_OpenXRInterface_constant_HAND_JOINT_LITTLE_INTERMEDIATE: @@ -514,7 +642,7 @@ Little proximal joint. :ref:`HandJoints` **HAND_JOINT_LITTLE_INTERMEDIATE** = ``23`` -Little intermediate joint. +Pinky finger phalanx intermediate joint. .. _class_OpenXRInterface_constant_HAND_JOINT_LITTLE_DISTAL: @@ -522,7 +650,7 @@ Little intermediate joint. :ref:`HandJoints` **HAND_JOINT_LITTLE_DISTAL** = ``24`` -Little distal joint. +Pinky finger phalanx distal joint. .. _class_OpenXRInterface_constant_HAND_JOINT_LITTLE_TIP: @@ -530,7 +658,7 @@ Little distal joint. :ref:`HandJoints` **HAND_JOINT_LITTLE_TIP** = ``25`` -Little tip joint. +Pinky finger tip joint. .. _class_OpenXRInterface_constant_HAND_JOINT_MAX: @@ -538,7 +666,117 @@ Little tip joint. :ref:`HandJoints` **HAND_JOINT_MAX** = ``26`` -Maximum value for the hand joint enum. +Represents the size of the :ref:`HandJoints` enum. + +.. rst-class:: classref-item-separator + +---- + +.. _enum_OpenXRInterface_PerfSettingsLevel: + +.. rst-class:: classref-enumeration + +enum **PerfSettingsLevel**: :ref:`🔗` + +.. _class_OpenXRInterface_constant_PERF_SETTINGS_LEVEL_POWER_SAVINGS: + +.. rst-class:: classref-enumeration-constant + +:ref:`PerfSettingsLevel` **PERF_SETTINGS_LEVEL_POWER_SAVINGS** = ``0`` + +The application has entered a non-XR section (head-locked / static screen), during which power savings are to be prioritized. + +.. _class_OpenXRInterface_constant_PERF_SETTINGS_LEVEL_SUSTAINED_LOW: + +.. rst-class:: classref-enumeration-constant + +:ref:`PerfSettingsLevel` **PERF_SETTINGS_LEVEL_SUSTAINED_LOW** = ``1`` + +The application has entered a low and stable complexity section, during which reducing power is more important than occasional late rendering frames. + +.. _class_OpenXRInterface_constant_PERF_SETTINGS_LEVEL_SUSTAINED_HIGH: + +.. rst-class:: classref-enumeration-constant + +:ref:`PerfSettingsLevel` **PERF_SETTINGS_LEVEL_SUSTAINED_HIGH** = ``2`` + +The application has entered a high or dynamic complexity section, during which the XR Runtime strives for consistent XR compositing and frame rendering within a thermally sustainable range. + +.. _class_OpenXRInterface_constant_PERF_SETTINGS_LEVEL_BOOST: + +.. rst-class:: classref-enumeration-constant + +:ref:`PerfSettingsLevel` **PERF_SETTINGS_LEVEL_BOOST** = ``3`` + +The application has entered a section with very high complexity, during which the XR Runtime is allowed to step up beyond the thermally sustainable range. + +.. rst-class:: classref-item-separator + +---- + +.. _enum_OpenXRInterface_PerfSettingsSubDomain: + +.. rst-class:: classref-enumeration + +enum **PerfSettingsSubDomain**: :ref:`🔗` + +.. _class_OpenXRInterface_constant_PERF_SETTINGS_SUB_DOMAIN_COMPOSITING: + +.. rst-class:: classref-enumeration-constant + +:ref:`PerfSettingsSubDomain` **PERF_SETTINGS_SUB_DOMAIN_COMPOSITING** = ``0`` + +The compositing performance within the runtime has reached a new level. + +.. _class_OpenXRInterface_constant_PERF_SETTINGS_SUB_DOMAIN_RENDERING: + +.. rst-class:: classref-enumeration-constant + +:ref:`PerfSettingsSubDomain` **PERF_SETTINGS_SUB_DOMAIN_RENDERING** = ``1`` + +The application rendering performance has reached a new level. + +.. _class_OpenXRInterface_constant_PERF_SETTINGS_SUB_DOMAIN_THERMAL: + +.. rst-class:: classref-enumeration-constant + +:ref:`PerfSettingsSubDomain` **PERF_SETTINGS_SUB_DOMAIN_THERMAL** = ``2`` + +The temperature of the device has reached a new level. + +.. rst-class:: classref-item-separator + +---- + +.. _enum_OpenXRInterface_PerfSettingsNotificationLevel: + +.. rst-class:: classref-enumeration + +enum **PerfSettingsNotificationLevel**: :ref:`🔗` + +.. _class_OpenXRInterface_constant_PERF_SETTINGS_NOTIF_LEVEL_NORMAL: + +.. rst-class:: classref-enumeration-constant + +:ref:`PerfSettingsNotificationLevel` **PERF_SETTINGS_NOTIF_LEVEL_NORMAL** = ``0`` + +The sub-domain has reached a level where no further actions other than currently applied are necessary. + +.. _class_OpenXRInterface_constant_PERF_SETTINGS_NOTIF_LEVEL_WARNING: + +.. rst-class:: classref-enumeration-constant + +:ref:`PerfSettingsNotificationLevel` **PERF_SETTINGS_NOTIF_LEVEL_WARNING** = ``1`` + +The sub-domain has reached an early warning level where the application should start proactive mitigation actions. + +.. _class_OpenXRInterface_constant_PERF_SETTINGS_NOTIF_LEVEL_IMPAIRED: + +.. rst-class:: classref-enumeration-constant + +:ref:`PerfSettingsNotificationLevel` **PERF_SETTINGS_NOTIF_LEVEL_IMPAIRED** = ``2`` + +The sub-domain has reached a critical level where the application should start drastic mitigation actions. .. rst-class:: classref-item-separator @@ -645,7 +883,7 @@ The display refresh rate for the current HMD. Only functional if this feature is Enable dynamic foveation adjustment, the interface must be initialized before this is accessible. If enabled foveation will automatically adjusted between low and :ref:`foveation_level`. -\ **Note:** Only works on compatibility renderer. +\ **Note:** Only works on the Compatibility renderer. .. rst-class:: classref-item-separator @@ -664,7 +902,7 @@ Enable dynamic foveation adjustment, the interface must be initialized before th Set foveation level from 0 (off) to 3 (high), the interface must be initialized before this is accessible. -\ **Note:** Only works on compatibility renderer. +\ **Note:** Only works on the Compatibility renderer. .. rst-class:: classref-item-separator @@ -864,6 +1102,18 @@ If handtracking is enabled and motion range is supported, gets the currently con ---- +.. _class_OpenXRInterface_method_get_session_state: + +.. rst-class:: classref-method + +:ref:`SessionState` **get_session_state**\ (\ ) :ref:`🔗` + +Returns the current state of our OpenXR session. + +.. rst-class:: classref-item-separator + +---- + .. _class_OpenXRInterface_method_is_action_set_active: .. rst-class:: classref-method @@ -898,7 +1148,7 @@ Returns the capabilities of the eye gaze interaction extension. Returns ``true`` if OpenXR's foveation extension is supported, the interface must be initialized before this returns a valid value. -\ **Note:** This feature is only available on the compatibility renderer and currently only available on some stand alone headsets. For Vulkan set :ref:`Viewport.vrs_mode` to ``VRS_XR`` on desktop. +\ **Note:** This feature is only available on the Compatibility renderer and currently only available on some stand alone headsets. For Vulkan set :ref:`Viewport.vrs_mode` to ``VRS_XR`` on desktop. .. rst-class:: classref-item-separator @@ -944,6 +1194,30 @@ Sets the given action set as active or inactive. ---- +.. _class_OpenXRInterface_method_set_cpu_level: + +.. rst-class:: classref-method + +|void| **set_cpu_level**\ (\ level\: :ref:`PerfSettingsLevel`\ ) :ref:`🔗` + +Sets the CPU performance level of the OpenXR device. + +.. rst-class:: classref-item-separator + +---- + +.. _class_OpenXRInterface_method_set_gpu_level: + +.. rst-class:: classref-method + +|void| **set_gpu_level**\ (\ level\: :ref:`PerfSettingsLevel`\ ) :ref:`🔗` + +Sets the GPU performance level of the OpenXR device. + +.. rst-class:: classref-item-separator + +---- + .. _class_OpenXRInterface_method_set_motion_range: .. rst-class:: classref-method @@ -953,6 +1227,7 @@ Sets the given action set as active or inactive. If handtracking is enabled and motion range is supported, sets the currently configured motion range for ``hand`` to ``motion_range``. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_openxripbinding.rst b/classes/class_openxripbinding.rst index 29ae38267..7321e0778 100644 --- a/classes/class_openxripbinding.rst +++ b/classes/class_openxripbinding.rst @@ -226,6 +226,7 @@ Returns ``true`` if this input/output path is part of this binding. Removes this input/output path from this binding. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_openxripbindingmodifier.rst b/classes/class_openxripbindingmodifier.rst index 8343727ba..e702feb35 100644 --- a/classes/class_openxripbindingmodifier.rst +++ b/classes/class_openxripbindingmodifier.rst @@ -24,6 +24,7 @@ Description Binding modifier that applies directly on an interaction profile. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_openxrrendermodel.rst b/classes/class_openxrrendermodel.rst new file mode 100644 index 000000000..ec3865ad1 --- /dev/null +++ b/classes/class_openxrrendermodel.rst @@ -0,0 +1,114 @@ +:github_url: hide + +.. DO NOT EDIT THIS FILE!!! +.. Generated automatically from Godot engine sources. +.. Generator: https://github.com/godotengine/godot/tree/master/doc/tools/make_rst.py. +.. XML source: https://github.com/godotengine/godot/tree/master/modules/openxr/doc_classes/OpenXRRenderModel.xml. + +.. _class_OpenXRRenderModel: + +OpenXRRenderModel +================= + +**Inherits:** :ref:`Node3D` **<** :ref:`Node` **<** :ref:`Object` + +This node will display an OpenXR render model. + +.. rst-class:: classref-introduction-group + +Description +----------- + +This node will display an OpenXR render model by accessing the associated GLTF and processes all animation data (if supported by the XR runtime). + +Render models were introduced to allow showing the correct model for the controller (or other device) the user has in hand, since the OpenXR action map does not provide information about the hardware used by the user. Note that while the controller (or device) can be somewhat inferred by the bound action map profile, this is a dangerous approach as the user may be using hardware not known at time of development and OpenXR will simply simulate an available interaction profile. + +.. rst-class:: classref-reftable-group + +Properties +---------- + +.. table:: + :widths: auto + + +-----------------------+--------------------------------------------------------------------+-----------+ + | :ref:`RID` | :ref:`render_model` | ``RID()`` | + +-----------------------+--------------------------------------------------------------------+-----------+ + +.. rst-class:: classref-reftable-group + +Methods +------- + +.. table:: + :widths: auto + + +-----------------------------+--------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`get_top_level_path`\ (\ ) |const| | + +-----------------------------+--------------------------------------------------------------------------------------------+ + +.. rst-class:: classref-section-separator + +---- + +.. rst-class:: classref-descriptions-group + +Signals +------- + +.. _class_OpenXRRenderModel_signal_render_model_top_level_path_changed: + +.. rst-class:: classref-signal + +**render_model_top_level_path_changed**\ (\ ) :ref:`🔗` + +Emitted when the top level path of this render model has changed. + +.. rst-class:: classref-section-separator + +---- + +.. rst-class:: classref-descriptions-group + +Property Descriptions +--------------------- + +.. _class_OpenXRRenderModel_property_render_model: + +.. rst-class:: classref-property + +:ref:`RID` **render_model** = ``RID()`` :ref:`🔗` + +.. rst-class:: classref-property-setget + +- |void| **set_render_model**\ (\ value\: :ref:`RID`\ ) +- :ref:`RID` **get_render_model**\ (\ ) + +The render model RID for the render model to load, as returned by :ref:`OpenXRRenderModelExtension.render_model_create()` or :ref:`OpenXRRenderModelExtension.render_model_get_all()`. + +.. rst-class:: classref-section-separator + +---- + +.. rst-class:: classref-descriptions-group + +Method Descriptions +------------------- + +.. _class_OpenXRRenderModel_method_get_top_level_path: + +.. rst-class:: classref-method + +:ref:`String` **get_top_level_path**\ (\ ) |const| :ref:`🔗` + +Returns the top level path related to this render model. + +.. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` +.. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` +.. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` +.. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` +.. |static| replace:: :abbr:`static (This method doesn't need an instance to be called, so it can be called directly using the class name.)` +.. |operator| replace:: :abbr:`operator (This method describes a valid operator to use with this type as left-hand operand.)` +.. |bitfield| replace:: :abbr:`BitField (This value is an integer composed as a bitmask of the following flags.)` +.. |void| replace:: :abbr:`void (No return value.)` diff --git a/classes/class_openxrrendermodelextension.rst b/classes/class_openxrrendermodelextension.rst new file mode 100644 index 000000000..de91118cc --- /dev/null +++ b/classes/class_openxrrendermodelextension.rst @@ -0,0 +1,278 @@ +:github_url: hide + +.. DO NOT EDIT THIS FILE!!! +.. Generated automatically from Godot engine sources. +.. Generator: https://github.com/godotengine/godot/tree/master/doc/tools/make_rst.py. +.. XML source: https://github.com/godotengine/godot/tree/master/modules/openxr/doc_classes/OpenXRRenderModelExtension.xml. + +.. _class_OpenXRRenderModelExtension: + +OpenXRRenderModelExtension +========================== + +**Inherits:** :ref:`OpenXRExtensionWrapper` **<** :ref:`Object` + +This class implements the OpenXR Render Model Extension. + +.. rst-class:: classref-introduction-group + +Description +----------- + +This class implements the OpenXR Render Model Extension, if enabled it will maintain a list of active render models and provides an interface to the render model data. + +.. rst-class:: classref-reftable-group + +Methods +------- + +.. table:: + :widths: auto + + +-----------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`is_active`\ (\ ) |const| | + +-----------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`RID` | :ref:`render_model_create`\ (\ render_model_id\: :ref:`int`\ ) | + +-----------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`render_model_destroy`\ (\ render_model\: :ref:`RID`\ ) | + +-----------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Array`\[:ref:`RID`\] | :ref:`render_model_get_all`\ (\ ) | + +-----------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`render_model_get_animatable_node_count`\ (\ render_model\: :ref:`RID`\ ) |const| | + +-----------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`render_model_get_animatable_node_name`\ (\ render_model\: :ref:`RID`, index\: :ref:`int`\ ) |const| | + +-----------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Transform3D` | :ref:`render_model_get_animatable_node_transform`\ (\ render_model\: :ref:`RID`, index\: :ref:`int`\ ) |const| | + +-----------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`TrackingConfidence` | :ref:`render_model_get_confidence`\ (\ render_model\: :ref:`RID`\ ) |const| | + +-----------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Transform3D` | :ref:`render_model_get_root_transform`\ (\ render_model\: :ref:`RID`\ ) |const| | + +-----------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`PackedStringArray` | :ref:`render_model_get_subaction_paths`\ (\ render_model\: :ref:`RID`\ ) | + +-----------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`render_model_get_top_level_path`\ (\ render_model\: :ref:`RID`\ ) |const| | + +-----------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`render_model_is_animatable_node_visible`\ (\ render_model\: :ref:`RID`, index\: :ref:`int`\ ) |const| | + +-----------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Node3D` | :ref:`render_model_new_scene_instance`\ (\ render_model\: :ref:`RID`\ ) |const| | + +-----------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + +.. rst-class:: classref-section-separator + +---- + +.. rst-class:: classref-descriptions-group + +Signals +------- + +.. _class_OpenXRRenderModelExtension_signal_render_model_added: + +.. rst-class:: classref-signal + +**render_model_added**\ (\ render_model\: :ref:`RID`\ ) :ref:`🔗` + +Emitted when a new render model is added. + +.. rst-class:: classref-item-separator + +---- + +.. _class_OpenXRRenderModelExtension_signal_render_model_removed: + +.. rst-class:: classref-signal + +**render_model_removed**\ (\ render_model\: :ref:`RID`\ ) :ref:`🔗` + +Emitted when a render model is removed. + +.. rst-class:: classref-item-separator + +---- + +.. _class_OpenXRRenderModelExtension_signal_render_model_top_level_path_changed: + +.. rst-class:: classref-signal + +**render_model_top_level_path_changed**\ (\ render_model\: :ref:`RID`\ ) :ref:`🔗` + +Emitted when the top level path associated with a render model changed. + +.. rst-class:: classref-section-separator + +---- + +.. rst-class:: classref-descriptions-group + +Method Descriptions +------------------- + +.. _class_OpenXRRenderModelExtension_method_is_active: + +.. rst-class:: classref-method + +:ref:`bool` **is_active**\ (\ ) |const| :ref:`🔗` + +Returns ``true`` if OpenXR's render model extension is supported and enabled. + +\ **Note:** This only returns a valid value after OpenXR has been initialized. + +.. rst-class:: classref-item-separator + +---- + +.. _class_OpenXRRenderModelExtension_method_render_model_create: + +.. rst-class:: classref-method + +:ref:`RID` **render_model_create**\ (\ render_model_id\: :ref:`int`\ ) :ref:`🔗` + +Creates a render model object within OpenXR using a render model id. + +\ **Note:** This function is exposed for dependent OpenXR extensions that provide render model ids to be used with the render model extension. + +.. rst-class:: classref-item-separator + +---- + +.. _class_OpenXRRenderModelExtension_method_render_model_destroy: + +.. rst-class:: classref-method + +|void| **render_model_destroy**\ (\ render_model\: :ref:`RID`\ ) :ref:`🔗` + +Destroys a render model object within OpenXR that was previously created with :ref:`render_model_create()`. + +\ **Note:** This function is exposed for dependent OpenXR extensions that provide render model ids to be used with the render model extension. + +.. rst-class:: classref-item-separator + +---- + +.. _class_OpenXRRenderModelExtension_method_render_model_get_all: + +.. rst-class:: classref-method + +:ref:`Array`\[:ref:`RID`\] **render_model_get_all**\ (\ ) :ref:`🔗` + +Returns an array of all currently active render models registered with this extension. + +.. rst-class:: classref-item-separator + +---- + +.. _class_OpenXRRenderModelExtension_method_render_model_get_animatable_node_count: + +.. rst-class:: classref-method + +:ref:`int` **render_model_get_animatable_node_count**\ (\ render_model\: :ref:`RID`\ ) |const| :ref:`🔗` + +Returns the number of animatable nodes this render model has. + +.. rst-class:: classref-item-separator + +---- + +.. _class_OpenXRRenderModelExtension_method_render_model_get_animatable_node_name: + +.. rst-class:: classref-method + +:ref:`String` **render_model_get_animatable_node_name**\ (\ render_model\: :ref:`RID`, index\: :ref:`int`\ ) |const| :ref:`🔗` + +Returns the name of the given animatable node. + +.. rst-class:: classref-item-separator + +---- + +.. _class_OpenXRRenderModelExtension_method_render_model_get_animatable_node_transform: + +.. rst-class:: classref-method + +:ref:`Transform3D` **render_model_get_animatable_node_transform**\ (\ render_model\: :ref:`RID`, index\: :ref:`int`\ ) |const| :ref:`🔗` + +Returns the current local transform for an animatable node. This is updated every frame. + +.. rst-class:: classref-item-separator + +---- + +.. _class_OpenXRRenderModelExtension_method_render_model_get_confidence: + +.. rst-class:: classref-method + +:ref:`TrackingConfidence` **render_model_get_confidence**\ (\ render_model\: :ref:`RID`\ ) |const| :ref:`🔗` + +Returns the tracking confidence of the tracking data for the render model. + +.. rst-class:: classref-item-separator + +---- + +.. _class_OpenXRRenderModelExtension_method_render_model_get_root_transform: + +.. rst-class:: classref-method + +:ref:`Transform3D` **render_model_get_root_transform**\ (\ render_model\: :ref:`RID`\ ) |const| :ref:`🔗` + +Returns the root transform of a render model. This is the tracked position relative to our :ref:`XROrigin3D` node. + +.. rst-class:: classref-item-separator + +---- + +.. _class_OpenXRRenderModelExtension_method_render_model_get_subaction_paths: + +.. rst-class:: classref-method + +:ref:`PackedStringArray` **render_model_get_subaction_paths**\ (\ render_model\: :ref:`RID`\ ) :ref:`🔗` + +Returns a list of active subaction paths for this ``render_model``. + +\ **Note:** If different devices are bound to your actions than available in suggested interaction bindings, this information shows paths related to the interaction bindings being mimicked by that device. + +.. rst-class:: classref-item-separator + +---- + +.. _class_OpenXRRenderModelExtension_method_render_model_get_top_level_path: + +.. rst-class:: classref-method + +:ref:`String` **render_model_get_top_level_path**\ (\ render_model\: :ref:`RID`\ ) |const| :ref:`🔗` + +Returns the top level path associated with this ``render_model``. If provided this identifies whether the render model is associated with the player's hands or other body part. + +.. rst-class:: classref-item-separator + +---- + +.. _class_OpenXRRenderModelExtension_method_render_model_is_animatable_node_visible: + +.. rst-class:: classref-method + +:ref:`bool` **render_model_is_animatable_node_visible**\ (\ render_model\: :ref:`RID`, index\: :ref:`int`\ ) |const| :ref:`🔗` + +Returns ``true`` if this animatable node should be visible. + +.. rst-class:: classref-item-separator + +---- + +.. _class_OpenXRRenderModelExtension_method_render_model_new_scene_instance: + +.. rst-class:: classref-method + +:ref:`Node3D` **render_model_new_scene_instance**\ (\ render_model\: :ref:`RID`\ ) |const| :ref:`🔗` + +Returns an instance of a subscene that contains all :ref:`MeshInstance3D` nodes that allow you to visualize the render model. + +.. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` +.. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` +.. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` +.. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` +.. |static| replace:: :abbr:`static (This method doesn't need an instance to be called, so it can be called directly using the class name.)` +.. |operator| replace:: :abbr:`operator (This method describes a valid operator to use with this type as left-hand operand.)` +.. |bitfield| replace:: :abbr:`BitField (This value is an integer composed as a bitmask of the following flags.)` +.. |void| replace:: :abbr:`void (No return value.)` diff --git a/classes/class_openxrrendermodelmanager.rst b/classes/class_openxrrendermodelmanager.rst new file mode 100644 index 000000000..b6c898ca3 --- /dev/null +++ b/classes/class_openxrrendermodelmanager.rst @@ -0,0 +1,163 @@ +:github_url: hide + +.. DO NOT EDIT THIS FILE!!! +.. Generated automatically from Godot engine sources. +.. Generator: https://github.com/godotengine/godot/tree/master/doc/tools/make_rst.py. +.. XML source: https://github.com/godotengine/godot/tree/master/modules/openxr/doc_classes/OpenXRRenderModelManager.xml. + +.. _class_OpenXRRenderModelManager: + +OpenXRRenderModelManager +======================== + +**Inherits:** :ref:`Node3D` **<** :ref:`Node` **<** :ref:`Object` + +Helper node that will automatically manage displaying render models. + +.. rst-class:: classref-introduction-group + +Description +----------- + +This helper node will automatically manage displaying render models. It will create new :ref:`OpenXRRenderModel` nodes as controllers and other hand held devices are detected, and remove those nodes when they are deactivated. + +\ **Note:** If you want more control over this logic you can alternatively call :ref:`OpenXRRenderModelExtension.render_model_get_all()` to obtain a list of active render model ids and create :ref:`OpenXRRenderModel` instances for each render model id provided. + +.. rst-class:: classref-reftable-group + +Properties +---------- + +.. table:: + :widths: auto + + +-----------------------------------------------------------------------------+---------------------------------------------------------------------------------------+--------+ + | :ref:`String` | :ref:`make_local_to_pose` | ``""`` | + +-----------------------------------------------------------------------------+---------------------------------------------------------------------------------------+--------+ + | :ref:`RenderModelTracker` | :ref:`tracker` | ``0`` | + +-----------------------------------------------------------------------------+---------------------------------------------------------------------------------------+--------+ + +.. rst-class:: classref-section-separator + +---- + +.. rst-class:: classref-descriptions-group + +Signals +------- + +.. _class_OpenXRRenderModelManager_signal_render_model_added: + +.. rst-class:: classref-signal + +**render_model_added**\ (\ render_model\: :ref:`OpenXRRenderModel`\ ) :ref:`🔗` + +Emitted when a render model node is added as a child to this node. + +.. rst-class:: classref-item-separator + +---- + +.. _class_OpenXRRenderModelManager_signal_render_model_removed: + +.. rst-class:: classref-signal + +**render_model_removed**\ (\ render_model\: :ref:`OpenXRRenderModel`\ ) :ref:`🔗` + +Emitted when a render model child node is about to be removed from this node. + +.. rst-class:: classref-section-separator + +---- + +.. rst-class:: classref-descriptions-group + +Enumerations +------------ + +.. _enum_OpenXRRenderModelManager_RenderModelTracker: + +.. rst-class:: classref-enumeration + +enum **RenderModelTracker**: :ref:`🔗` + +.. _class_OpenXRRenderModelManager_constant_RENDER_MODEL_TRACKER_ANY: + +.. rst-class:: classref-enumeration-constant + +:ref:`RenderModelTracker` **RENDER_MODEL_TRACKER_ANY** = ``0`` + +All active render models are shown regardless of what tracker they relate to. + +.. _class_OpenXRRenderModelManager_constant_RENDER_MODEL_TRACKER_NONE_SET: + +.. rst-class:: classref-enumeration-constant + +:ref:`RenderModelTracker` **RENDER_MODEL_TRACKER_NONE_SET** = ``1`` + +Only active render models are shown that are not related to any tracker we manage. + +.. _class_OpenXRRenderModelManager_constant_RENDER_MODEL_TRACKER_LEFT_HAND: + +.. rst-class:: classref-enumeration-constant + +:ref:`RenderModelTracker` **RENDER_MODEL_TRACKER_LEFT_HAND** = ``2`` + +Only active render models are shown that are related to the left hand tracker. + +.. _class_OpenXRRenderModelManager_constant_RENDER_MODEL_TRACKER_RIGHT_HAND: + +.. rst-class:: classref-enumeration-constant + +:ref:`RenderModelTracker` **RENDER_MODEL_TRACKER_RIGHT_HAND** = ``3`` + +Only active render models are shown that are related to the right hand tracker. + +.. rst-class:: classref-section-separator + +---- + +.. rst-class:: classref-descriptions-group + +Property Descriptions +--------------------- + +.. _class_OpenXRRenderModelManager_property_make_local_to_pose: + +.. rst-class:: classref-property + +:ref:`String` **make_local_to_pose** = ``""`` :ref:`🔗` + +.. rst-class:: classref-property-setget + +- |void| **set_make_local_to_pose**\ (\ value\: :ref:`String`\ ) +- :ref:`String` **get_make_local_to_pose**\ (\ ) + +Position render models local to this pose (this will adjust the position of the render models container node). + +.. rst-class:: classref-item-separator + +---- + +.. _class_OpenXRRenderModelManager_property_tracker: + +.. rst-class:: classref-property + +:ref:`RenderModelTracker` **tracker** = ``0`` :ref:`🔗` + +.. rst-class:: classref-property-setget + +- |void| **set_tracker**\ (\ value\: :ref:`RenderModelTracker`\ ) +- :ref:`RenderModelTracker` **get_tracker**\ (\ ) + +Limits render models to the specified tracker. Include: 0 = All render models, 1 = Render models not related to a tracker, 2 = Render models related to the left hand tracker, 3 = Render models related to the right hand tracker. + +.. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` +.. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` +.. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` +.. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` +.. |static| replace:: :abbr:`static (This method doesn't need an instance to be called, so it can be called directly using the class name.)` +.. |operator| replace:: :abbr:`operator (This method describes a valid operator to use with this type as left-hand operand.)` +.. |bitfield| replace:: :abbr:`BitField (This value is an integer composed as a bitmask of the following flags.)` +.. |void| replace:: :abbr:`void (No return value.)` diff --git a/classes/class_openxrvisibilitymask.rst b/classes/class_openxrvisibilitymask.rst index d74f8e001..cc910d45b 100644 --- a/classes/class_openxrvisibilitymask.rst +++ b/classes/class_openxrvisibilitymask.rst @@ -24,6 +24,7 @@ The visibility mask allows us to black out the part of the render result that is As this is rendered first, it prevents fragments with expensive lighting calculations to be processed as they are discarded through z-checking. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_optimizedtranslation.rst b/classes/class_optimizedtranslation.rst index dd370a1f3..a988c46d0 100644 --- a/classes/class_optimizedtranslation.rst +++ b/classes/class_optimizedtranslation.rst @@ -53,6 +53,7 @@ Generates and sets an optimized translation from the given :ref:`Translation` which contains common properties and methods associated with this node. -\ **Note:** The ID values used for items are limited to 32 bits, not full 64 bits of :ref:`int`. This has a range of ``-2^32`` to ``2^32 - 1``, i.e. ``-2147483648`` to ``2147483647``. +\ **Note:** The IDs used for items are limited to signed 32-bit integers, not the full 64 bits of :ref:`int`. These have a range of ``-2^31`` to ``2^31 - 1``, that is, ``-2147483648`` to ``2147483647``. \ **Note:** The :ref:`Button.text` and :ref:`Button.icon` properties are set automatically based on the selected item. They shouldn't be changed manually. @@ -62,61 +62,65 @@ Methods .. table:: :widths: auto - +-----------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`add_icon_item`\ (\ texture\: :ref:`Texture2D`, label\: :ref:`String`, id\: :ref:`int` = -1\ ) | - +-----------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`add_item`\ (\ label\: :ref:`String`, id\: :ref:`int` = -1\ ) | - +-----------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`add_separator`\ (\ text\: :ref:`String` = ""\ ) | - +-----------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`clear`\ (\ ) | - +-----------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Texture2D` | :ref:`get_item_icon`\ (\ idx\: :ref:`int`\ ) |const| | - +-----------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`get_item_id`\ (\ idx\: :ref:`int`\ ) |const| | - +-----------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`get_item_index`\ (\ id\: :ref:`int`\ ) |const| | - +-----------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Variant` | :ref:`get_item_metadata`\ (\ idx\: :ref:`int`\ ) |const| | - +-----------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`String` | :ref:`get_item_text`\ (\ idx\: :ref:`int`\ ) |const| | - +-----------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`String` | :ref:`get_item_tooltip`\ (\ idx\: :ref:`int`\ ) |const| | - +-----------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`PopupMenu` | :ref:`get_popup`\ (\ ) |const| | - +-----------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`get_selectable_item`\ (\ from_last\: :ref:`bool` = false\ ) |const| | - +-----------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`get_selected_id`\ (\ ) |const| | - +-----------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Variant` | :ref:`get_selected_metadata`\ (\ ) |const| | - +-----------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`has_selectable_items`\ (\ ) |const| | - +-----------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`is_item_disabled`\ (\ idx\: :ref:`int`\ ) |const| | - +-----------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`is_item_separator`\ (\ idx\: :ref:`int`\ ) |const| | - +-----------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`remove_item`\ (\ idx\: :ref:`int`\ ) | - +-----------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`select`\ (\ idx\: :ref:`int`\ ) | - +-----------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`set_disable_shortcuts`\ (\ disabled\: :ref:`bool`\ ) | - +-----------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`set_item_disabled`\ (\ idx\: :ref:`int`, disabled\: :ref:`bool`\ ) | - +-----------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`set_item_icon`\ (\ idx\: :ref:`int`, texture\: :ref:`Texture2D`\ ) | - +-----------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`set_item_id`\ (\ idx\: :ref:`int`, id\: :ref:`int`\ ) | - +-----------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`set_item_metadata`\ (\ idx\: :ref:`int`, metadata\: :ref:`Variant`\ ) | - +-----------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`set_item_text`\ (\ idx\: :ref:`int`, text\: :ref:`String`\ ) | - +-----------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`set_item_tooltip`\ (\ idx\: :ref:`int`, tooltip\: :ref:`String`\ ) | - +-----------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`show_popup`\ (\ ) | - +-----------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + +-------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`add_icon_item`\ (\ texture\: :ref:`Texture2D`, label\: :ref:`String`, id\: :ref:`int` = -1\ ) | + +-------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`add_item`\ (\ label\: :ref:`String`, id\: :ref:`int` = -1\ ) | + +-------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`add_separator`\ (\ text\: :ref:`String` = ""\ ) | + +-------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`clear`\ (\ ) | + +-------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`AutoTranslateMode` | :ref:`get_item_auto_translate_mode`\ (\ idx\: :ref:`int`\ ) |const| | + +-------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Texture2D` | :ref:`get_item_icon`\ (\ idx\: :ref:`int`\ ) |const| | + +-------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`get_item_id`\ (\ idx\: :ref:`int`\ ) |const| | + +-------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`get_item_index`\ (\ id\: :ref:`int`\ ) |const| | + +-------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Variant` | :ref:`get_item_metadata`\ (\ idx\: :ref:`int`\ ) |const| | + +-------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`get_item_text`\ (\ idx\: :ref:`int`\ ) |const| | + +-------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`get_item_tooltip`\ (\ idx\: :ref:`int`\ ) |const| | + +-------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`PopupMenu` | :ref:`get_popup`\ (\ ) |const| | + +-------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`get_selectable_item`\ (\ from_last\: :ref:`bool` = false\ ) |const| | + +-------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`get_selected_id`\ (\ ) |const| | + +-------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Variant` | :ref:`get_selected_metadata`\ (\ ) |const| | + +-------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`has_selectable_items`\ (\ ) |const| | + +-------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`is_item_disabled`\ (\ idx\: :ref:`int`\ ) |const| | + +-------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`is_item_separator`\ (\ idx\: :ref:`int`\ ) |const| | + +-------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`remove_item`\ (\ idx\: :ref:`int`\ ) | + +-------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`select`\ (\ idx\: :ref:`int`\ ) | + +-------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_disable_shortcuts`\ (\ disabled\: :ref:`bool`\ ) | + +-------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_item_auto_translate_mode`\ (\ idx\: :ref:`int`, mode\: :ref:`AutoTranslateMode`\ ) | + +-------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_item_disabled`\ (\ idx\: :ref:`int`, disabled\: :ref:`bool`\ ) | + +-------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_item_icon`\ (\ idx\: :ref:`int`, texture\: :ref:`Texture2D`\ ) | + +-------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_item_id`\ (\ idx\: :ref:`int`, id\: :ref:`int`\ ) | + +-------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_item_metadata`\ (\ idx\: :ref:`int`, metadata\: :ref:`Variant`\ ) | + +-------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_item_text`\ (\ idx\: :ref:`int`, text\: :ref:`String`\ ) | + +-------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_item_tooltip`\ (\ idx\: :ref:`int`, tooltip\: :ref:`String`\ ) | + +-------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`show_popup`\ (\ ) | + +-------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ .. rst-class:: classref-reftable-group @@ -256,6 +260,8 @@ Method Descriptions Adds an item, with a ``texture`` icon, text ``label`` and (optionally) ``id``. If no ``id`` is passed, the item index will be used as the item's ID. New items are appended at the end. +\ **Note:** The item will be selected if there are no other items. + .. rst-class:: classref-item-separator ---- @@ -268,6 +274,8 @@ Adds an item, with a ``texture`` icon, text ``label`` and (optionally) ``id``. I Adds an item, with text ``label`` and (optionally) ``id``. If no ``id`` is passed, the item index will be used as the item's ID. New items are appended at the end. +\ **Note:** The item will be selected if there are no other items. + .. rst-class:: classref-item-separator ---- @@ -296,6 +304,18 @@ Clears all the items in the **OptionButton**. ---- +.. _class_OptionButton_method_get_item_auto_translate_mode: + +.. rst-class:: classref-method + +:ref:`AutoTranslateMode` **get_item_auto_translate_mode**\ (\ idx\: :ref:`int`\ ) |const| :ref:`🔗` + +Returns the auto translate mode of the item at index ``idx``. + +.. rst-class:: classref-item-separator + +---- + .. _class_OptionButton_method_get_item_icon: .. rst-class:: classref-method @@ -494,6 +514,20 @@ If ``true``, shortcuts are disabled and cannot be used to trigger the button. ---- +.. _class_OptionButton_method_set_item_auto_translate_mode: + +.. rst-class:: classref-method + +|void| **set_item_auto_translate_mode**\ (\ idx\: :ref:`int`, mode\: :ref:`AutoTranslateMode`\ ) :ref:`🔗` + +Sets the auto translate mode of the item at index ``idx``. + +Items use :ref:`Node.AUTO_TRANSLATE_MODE_INHERIT` by default, which uses the same auto translate mode as the **OptionButton** itself. + +.. rst-class:: classref-item-separator + +---- + .. _class_OptionButton_method_set_item_disabled: .. rst-class:: classref-method @@ -618,6 +652,7 @@ If different than ``0``, the arrow icon will be modulated to the font color. The arrow icon to be drawn on the right end of the button. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_ormmaterial3d.rst b/classes/class_ormmaterial3d.rst index be989b52d..193e54d16 100644 --- a/classes/class_ormmaterial3d.rst +++ b/classes/class_ormmaterial3d.rst @@ -29,6 +29,7 @@ Tutorials - :doc:`Standard Material 3D and ORM Material 3D <../tutorials/3d/standard_material_3d>` .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_os.rst b/classes/class_os.rst index 654f21f52..094b35891 100644 --- a/classes/class_os.rst +++ b/classes/class_os.rst @@ -54,6 +54,8 @@ Methods .. table:: :widths: auto + +---------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`add_logger`\ (\ logger\: :ref:`Logger`\ ) | +---------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`alert`\ (\ text\: :ref:`String`, title\: :ref:`String` = "Alert!"\ ) | +---------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ @@ -179,9 +181,13 @@ Methods +---------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`open_midi_inputs`\ (\ ) | +---------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`PackedByteArray` | :ref:`read_buffer_from_stdin`\ (\ buffer_size\: :ref:`int`\ ) | + | :ref:`Error` | :ref:`open_with_program`\ (\ program_path\: :ref:`String`, paths\: :ref:`PackedStringArray`\ ) | +---------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`String` | :ref:`read_string_from_stdin`\ (\ buffer_size\: :ref:`int`\ ) | + | :ref:`PackedByteArray` | :ref:`read_buffer_from_stdin`\ (\ buffer_size\: :ref:`int` = 1024\ ) | + +---------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`read_string_from_stdin`\ (\ buffer_size\: :ref:`int` = 1024\ ) | + +---------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`remove_logger`\ (\ logger\: :ref:`Logger`\ ) | +---------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`request_permission`\ (\ name\: :ref:`String`\ ) | +---------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ @@ -446,6 +452,18 @@ The amount of sleeping between frames when the low-processor usage mode is enabl Method Descriptions ------------------- +.. _class_OS_method_add_logger: + +.. rst-class:: classref-method + +|void| **add_logger**\ (\ logger\: :ref:`Logger`\ ) :ref:`🔗` + +Add a custom logger to intercept the internal message stream. + +.. rst-class:: classref-item-separator + +---- + .. _class_OS_method_alert: .. rst-class:: classref-method @@ -789,7 +807,7 @@ Returns the command-line user arguments passed to the engine. User arguments are # Godot has been executed with the following command: # godot --fullscreen -- --level=2 --hardcore - + OS.get_cmdline_args() # Returns ["--fullscreen", "--level=2", "--hardcore"] OS.get_cmdline_user_args() # Returns ["--level=2", "--hardcore"] @@ -919,7 +937,9 @@ Returns the file path to the current engine executable. On Android devices: Returns the list of dangerous permissions that have been granted. -On macOS: Returns the list of user selected folders accessible to the application (sandboxed applications only). Use the native file dialog to request folder access permission. +On macOS: Returns the list of granted permissions and user selected folders accessible to the application (sandboxed applications only). Use the native file dialog to request folder access permission. + +On iOS, visionOS: Returns the list of granted permissions. .. rst-class:: classref-item-separator @@ -1149,7 +1169,7 @@ Returns ``-1`` if the ``pid`` is not a PID of a spawned child process, the proce Returns the number used by the host machine to uniquely identify this application. -\ **Note:** This method is implemented on Android, iOS, Linux, macOS, and Windows. +\ **Note:** On Web, this method always returns ``0``. .. rst-class:: classref-item-separator @@ -1223,7 +1243,9 @@ Returns the amount of static memory being used by the program in bytes. Only wor :ref:`StdHandleType` **get_stderr_type**\ (\ ) |const| :ref:`🔗` -Returns type of the standard error device. +Returns the type of the standard error device. + +\ **Note:** This method is implemented on Linux, macOS, and Windows. .. rst-class:: classref-item-separator @@ -1235,7 +1257,11 @@ Returns type of the standard error device. :ref:`StdHandleType` **get_stdin_type**\ (\ ) |const| :ref:`🔗` -Returns type of the standard input device. +Returns the type of the standard input device. + +\ **Note:** This method is implemented on Linux, macOS, and Windows. + +\ **Note:** On exported Windows builds, run the console wrapper executable to access the standard input. If you need a single executable with full console support, use a custom build compiled with the ``windows_subsystem=console`` flag. .. rst-class:: classref-item-separator @@ -1247,7 +1273,9 @@ Returns type of the standard input device. :ref:`StdHandleType` **get_stdout_type**\ (\ ) |const| :ref:`🔗` -Returns type of the standard output device. +Returns the type of the standard output device. + +\ **Note:** This method is implemented on Linux, macOS, and Windows. .. rst-class:: classref-item-separator @@ -1409,7 +1437,7 @@ Not to be confused with :ref:`get_data_dir()`, whi Returns the exact production and build version of the operating system. This is different from the branded version used in marketing. This helps to distinguish between different releases of operating systems, including minor versions, and insider and custom builds. -- For Windows, the major and minor version are returned, as well as the build number. For example, the returned string may look like ``10.0.9926`` for a build of Windows 10, and it may look like ``6.1.7601`` for a build of Windows 7 SP1. +- For Windows, the major and minor version are returned, as well as the build number. For example, the returned string may look like ``10.0.9926`` for a build of Windows 10. - For rolling distributions, such as Arch Linux, an empty string is returned. @@ -1429,9 +1457,11 @@ Returns the exact production and build version of the operating system. This is :ref:`String` **get_version_alias**\ (\ ) |const| :ref:`🔗` -Returns the branded version used in marketing, followed by the build number (on Windows) or the version number (on macOS). Examples include ``11 (build 22000)`` and ``Sequoia (15.0.0)``. This value can then be appended to :ref:`get_name()` to get a full, human-readable operating system name and version combination for the operating system. Windows feature updates such as 24H2 are not contained in the resulting string, but Windows Server is recognized as such (e.g. ``2025 (build 26100)`` for Windows Server 2025). +Returns the branded version used in marketing, followed by the build number (on Windows), the version number (on macOS), or the SDK version and incremental build number (on Android). Examples include ``11 (build 22000)``, ``Sequoia (15.0.0)``, and ``15 (SDK 35 build abc528-11988f)``. -\ **Note:** This method is only supported on Windows and macOS. On other operating systems, it returns the same value as :ref:`get_version()`. +This value can then be appended to :ref:`get_name()` to get a full, human-readable operating system name and version combination for the operating system. Windows feature updates such as 24H2 are not contained in the resulting string, but Windows Server is recognized as such (e.g. ``2025 (build 26100)`` for Windows Server 2025). + +\ **Note:** This method is only supported on Windows, macOS, and Android. On other operating systems, it returns the same value as :ref:`get_version()`. .. rst-class:: classref-item-separator @@ -1451,6 +1481,30 @@ The second element holds the driver version. For example, on the ``nvidia`` driv \ **Note:** This method is only supported on Linux/BSD and Windows when not running in headless mode. On other platforms, it returns an empty array. +\ **Note:** This method will run slowly the first time it is called in a session; it can take several seconds depending on the operating system and hardware. It is blocking if called on the main thread, so it's recommended to call it on a separate thread using :ref:`Thread`. This allows the engine to keep running while the information is being retrieved. However, :ref:`get_video_adapter_driver_info()` is *not* thread-safe, so it should not be called from multiple threads at the same time. + + +.. tabs:: + + .. code-tab:: gdscript + + var thread = Thread.new() + + func _ready(): + thread.start( + func(): + var driver_info = OS.get_video_adapter_driver_info() + if not driver_info.is_empty(): + print("Driver: %s %s" % [driver_info[0], driver_info[1]]) + else: + print("Driver: (unknown)") + ) + + func _exit_tree(): + thread.wait_to_finish() + + + .. rst-class:: classref-item-separator ---- @@ -1665,13 +1719,29 @@ Initializes the singleton for the system MIDI driver, allowing Godot to receive ---- +.. _class_OS_method_open_with_program: + +.. rst-class:: classref-method + +:ref:`Error` **open_with_program**\ (\ program_path\: :ref:`String`, paths\: :ref:`PackedStringArray`\ ) :ref:`🔗` + +Opens one or more files/directories with the specified application. The ``program_path`` specifies the path to the application to use for opening the files, and ``paths`` contains an array of file/directory paths to open. + +\ **Note:** This method is mostly only relevant for macOS, where opening files using :ref:`create_process()` might fail. On other platforms, this falls back to using :ref:`create_process()`. + +\ **Note:** On macOS, ``program_path`` should ideally be the path to a ``.app`` bundle. + +.. rst-class:: classref-item-separator + +---- + .. _class_OS_method_read_buffer_from_stdin: .. rst-class:: classref-method -:ref:`PackedByteArray` **read_buffer_from_stdin**\ (\ buffer_size\: :ref:`int`\ ) :ref:`🔗` +:ref:`PackedByteArray` **read_buffer_from_stdin**\ (\ buffer_size\: :ref:`int` = 1024\ ) :ref:`🔗` -Reads a user input as raw data from the standard input. This operation can be *blocking*, which causes the window to freeze if :ref:`read_string_from_stdin()` is called on the main thread. +Reads a user input as raw data from the standard input. This operation can be *blocking*, which causes the window to freeze if :ref:`read_buffer_from_stdin()` is called on the main thread. - If standard input is console, this method will block until the program receives a line break in standard input (usually by the user pressing :kbd:`Enter`). @@ -1691,7 +1761,7 @@ Reads a user input as raw data from the standard input. This operation can be *b .. rst-class:: classref-method -:ref:`String` **read_string_from_stdin**\ (\ buffer_size\: :ref:`int`\ ) :ref:`🔗` +:ref:`String` **read_string_from_stdin**\ (\ buffer_size\: :ref:`int` = 1024\ ) :ref:`🔗` Reads a user input as a UTF-8 encoded string from the standard input. This operation can be *blocking*, which causes the window to freeze if :ref:`read_string_from_stdin()` is called on the main thread. @@ -1711,6 +1781,18 @@ Reads a user input as a UTF-8 encoded string from the standard input. This opera ---- +.. _class_OS_method_remove_logger: + +.. rst-class:: classref-method + +|void| **remove_logger**\ (\ logger\: :ref:`Logger`\ ) :ref:`🔗` + +Remove a custom logger added by :ref:`add_logger()`. + +.. rst-class:: classref-item-separator + +---- + .. _class_OS_method_request_permission: .. rst-class:: classref-method @@ -1725,9 +1807,13 @@ The ``name`` must be the full permission name. For example: - ``OS.request_permission("android.permission.POST_NOTIFICATIONS")``\ -\ **Note:** Permission must be checked during export. +- ``OS.request_permission("macos.permission.RECORD_SCREEN")``\ -\ **Note:** This method is only implemented on Android. +- ``OS.request_permission("appleembedded.permission.AUDIO_RECORD")``\ + +\ **Note:** On Android, permission must be checked during export. + +\ **Note:** This method is implemented on Android, macOS, and visionOS platforms. .. rst-class:: classref-item-separator @@ -1874,6 +1960,7 @@ Removes the given environment variable from the current environment, if it exist \ **Note:** Environment variable names are case-sensitive on all platforms except Windows. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_packedbytearray.rst b/classes/class_packedbytearray.rst index 23d859d29..3057ee93e 100644 --- a/classes/class_packedbytearray.rst +++ b/classes/class_packedbytearray.rst @@ -21,7 +21,7 @@ An array specifically designed to hold bytes. Packs data tightly, so it saves me \ **PackedByteArray** also provides methods to encode/decode various types to/from bytes. The way values are encoded is an implementation detail and shouldn't be relied upon when interacting with external apps. -\ **Note:** Packed arrays are always passed by reference. To get a copy of an array that can be modified independently of the original array, use :ref:`duplicate()`. This is *not* the case for built-in properties and methods. The returned packed array of these are a copies, and changing it will *not* affect the original value. To update a built-in property you need to modify the returned array, and then assign it to the property again. +\ **Note:** Packed arrays are always passed by reference. To get a copy of an array that can be modified independently of the original array, use :ref:`duplicate()`. This is *not* the case for built-in properties and methods. In these cases the returned packed array is a copy, and changing it will *not* affect the original value. To update a built-in property of this type, modify the returned array and then assign it to the property again. .. note:: @@ -58,6 +58,12 @@ Methods +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`bsearch`\ (\ value\: :ref:`int`, before\: :ref:`bool` = true\ ) | +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`bswap16`\ (\ offset\: :ref:`int` = 0, count\: :ref:`int` = -1\ ) | + +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`bswap32`\ (\ offset\: :ref:`int` = 0, count\: :ref:`int` = -1\ ) | + +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`bswap64`\ (\ offset\: :ref:`int` = 0, count\: :ref:`int` = -1\ ) | + +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`clear`\ (\ ) | +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`PackedByteArray` | :ref:`compress`\ (\ compression_mode\: :ref:`int` = 0\ ) |const| | @@ -120,6 +126,8 @@ Methods +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`encode_var`\ (\ byte_offset\: :ref:`int`, value\: :ref:`Variant`, allow_objects\: :ref:`bool` = false\ ) | +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`erase`\ (\ value\: :ref:`int`\ ) | + +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`fill`\ (\ value\: :ref:`int`\ ) | +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`find`\ (\ value\: :ref:`int`, from\: :ref:`int` = 0\ ) |const| | @@ -128,6 +136,8 @@ Methods +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`String` | :ref:`get_string_from_ascii`\ (\ ) |const| | +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`get_string_from_multibyte_char`\ (\ encoding\: :ref:`String` = ""\ ) |const| | + +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`String` | :ref:`get_string_from_utf8`\ (\ ) |const| | +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`String` | :ref:`get_string_from_utf16`\ (\ ) |const| | @@ -164,6 +174,8 @@ Methods +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`sort`\ (\ ) | +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`PackedColorArray` | :ref:`to_color_array`\ (\ ) |const| | + +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`PackedFloat32Array` | :ref:`to_float32_array`\ (\ ) |const| | +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`PackedFloat64Array` | :ref:`to_float64_array`\ (\ ) |const| | @@ -172,6 +184,12 @@ Methods +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`PackedInt64Array` | :ref:`to_int64_array`\ (\ ) |const| | +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`PackedVector2Array` | :ref:`to_vector2_array`\ (\ ) |const| | + +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`PackedVector3Array` | :ref:`to_vector3_array`\ (\ ) |const| | + +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`PackedVector4Array` | :ref:`to_vector4_array`\ (\ ) |const| | + +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ .. rst-class:: classref-reftable-group @@ -275,6 +293,42 @@ Finds the index of an existing value (or the insertion index that maintains sort ---- +.. _class_PackedByteArray_method_bswap16: + +.. rst-class:: classref-method + +|void| **bswap16**\ (\ offset\: :ref:`int` = 0, count\: :ref:`int` = -1\ ) :ref:`🔗` + +Swaps the byte order of ``count`` 16-bit segments of the array starting at ``offset``. Swap is done in-place. If ``count`` is less than zero, all segments to the end of array are processed, if processed data size is not a multiple of 2, the byte after the last processed 16-bit segment is not modified. + +.. rst-class:: classref-item-separator + +---- + +.. _class_PackedByteArray_method_bswap32: + +.. rst-class:: classref-method + +|void| **bswap32**\ (\ offset\: :ref:`int` = 0, count\: :ref:`int` = -1\ ) :ref:`🔗` + +Swaps the byte order of ``count`` 32-bit segments of the array starting at ``offset``. Swap is done in-place. If ``count`` is less than zero, all segments to the end of array are processed, if processed data size is not a multiple of 4, bytes after the last processed 32-bit segment are not modified. + +.. rst-class:: classref-item-separator + +---- + +.. _class_PackedByteArray_method_bswap64: + +.. rst-class:: classref-method + +|void| **bswap64**\ (\ offset\: :ref:`int` = 0, count\: :ref:`int` = -1\ ) :ref:`🔗` + +Swaps the byte order of ``count`` 64-bit segments of the array starting at ``offset``. Swap is done in-place. If ``count`` is less than zero, all segments to the end of array are processed, if processed data size is not a multiple of 8, bytes after the last processed 64-bit segment are not modified. + +.. rst-class:: classref-item-separator + +---- + .. _class_PackedByteArray_method_clear: .. rst-class:: classref-method @@ -655,6 +709,18 @@ Encodes a :ref:`Variant` at the index of ``byte_offset`` bytes. A ---- +.. _class_PackedByteArray_method_erase: + +.. rst-class:: classref-method + +:ref:`bool` **erase**\ (\ value\: :ref:`int`\ ) :ref:`🔗` + +Removes the first occurrence of a value from the array and returns ``true``. If the value does not exist in the array, nothing happens and ``false`` is returned. To remove an element by index, use :ref:`remove_at()` instead. + +.. rst-class:: classref-item-separator + +---- + .. _class_PackedByteArray_method_fill: .. rst-class:: classref-method @@ -685,7 +751,9 @@ Searches the array for a value and returns its index or ``-1`` if not found. Opt :ref:`int` **get**\ (\ index\: :ref:`int`\ ) |const| :ref:`🔗` -Returns the byte at the given ``index`` in the array. This is the same as using the ``[]`` operator (``array[index]``). +Returns the byte at the given ``index`` in the array. If ``index`` out-of-bounds or negative, this method fails and returns ``0``. + +This method is similar (but not identical) to the ``[]`` operator. Most notably, when this method fails, it doesn't pause project execution if run from the editor. .. rst-class:: classref-item-separator @@ -703,6 +771,24 @@ Converts ASCII/Latin-1 encoded array to :ref:`String`. Fast altern ---- +.. _class_PackedByteArray_method_get_string_from_multibyte_char: + +.. rst-class:: classref-method + +:ref:`String` **get_string_from_multibyte_char**\ (\ encoding\: :ref:`String` = ""\ ) |const| :ref:`🔗` + +Converts system multibyte code page encoded array to :ref:`String`. If conversion fails, empty string is returned. This is the inverse of :ref:`String.to_multibyte_char_buffer()`. + +The values permitted for ``encoding`` are system dependent. If ``encoding`` is empty string, system default encoding is used. + +- For Windows, see `Code Page Identifiers `__ .NET names. + +- For macOS and Linux/BSD, see ``libiconv`` library documentation and ``iconv --list`` for a list of supported encodings. + +.. rst-class:: classref-item-separator + +---- + .. _class_PackedByteArray_method_get_string_from_utf8: .. rst-class:: classref-method @@ -721,7 +807,7 @@ Converts UTF-8 encoded array to :ref:`String`. Slower than :ref:`g :ref:`String` **get_string_from_utf16**\ (\ ) |const| :ref:`🔗` -Converts UTF-16 encoded array to :ref:`String`. If the BOM is missing, system endianness is assumed. Returns empty string if source array is not valid UTF-16 string. This is the inverse of :ref:`String.to_utf16_buffer()`. +Converts UTF-16 encoded array to :ref:`String`. If the BOM is missing, little-endianness is assumed. Returns empty string if source array is not valid UTF-16 string. This is the inverse of :ref:`String.to_utf16_buffer()`. .. rst-class:: classref-item-separator @@ -733,7 +819,7 @@ Converts UTF-16 encoded array to :ref:`String`. If the BOM is miss :ref:`String` **get_string_from_utf32**\ (\ ) |const| :ref:`🔗` -Converts UTF-32 encoded array to :ref:`String`. System endianness is assumed. Returns empty string if source array is not valid UTF-32 string. This is the inverse of :ref:`String.to_utf32_buffer()`. +Converts UTF-32 encoded array to :ref:`String`. Returns empty string if source array is not valid UTF-32 string. This is the inverse of :ref:`String.to_utf32_buffer()`. .. rst-class:: classref-item-separator @@ -858,6 +944,8 @@ Removes an element from the array by index. Sets the size of the array. If the array is grown, reserves elements at the end of the array. If the array is shrunk, truncates the array to the new size. Calling :ref:`resize()` once and assigning the new values is faster than adding new elements one by one. +Returns :ref:`@GlobalScope.OK` on success, or one of the following :ref:`Error` constants if this method fails: :ref:`@GlobalScope.ERR_INVALID_PARAMETER` if the size is negative, or :ref:`@GlobalScope.ERR_OUT_OF_MEMORY` if allocations fail. Use :ref:`size()` to find the actual size of the array after resize. + .. rst-class:: classref-item-separator ---- @@ -938,6 +1026,20 @@ Sorts the elements of the array in ascending order. ---- +.. _class_PackedByteArray_method_to_color_array: + +.. rst-class:: classref-method + +:ref:`PackedColorArray` **to_color_array**\ (\ ) |const| :ref:`🔗` + +Returns a copy of the data converted to a :ref:`PackedColorArray`, where each block of 16 bytes has been converted to a :ref:`Color` variant. + +\ **Note:** The size of the input array must be a multiple of 16 (size of four 32-bit float variables). The size of the new array will be ``byte_array.size() / 16``. If the original data can't be converted to :ref:`Color` variants, the resulting data is undefined. + +.. rst-class:: classref-item-separator + +---- + .. _class_PackedByteArray_method_to_float32_array: .. rst-class:: classref-method @@ -998,6 +1100,48 @@ The size of the input array must be a multiple of 8 (size of 64-bit integer). Th If the original data can't be converted to signed 64-bit integers, the resulting data is undefined. +.. rst-class:: classref-item-separator + +---- + +.. _class_PackedByteArray_method_to_vector2_array: + +.. rst-class:: classref-method + +:ref:`PackedVector2Array` **to_vector2_array**\ (\ ) |const| :ref:`🔗` + +Returns a copy of the data converted to a :ref:`PackedVector2Array`, where each block of 8 bytes or 16 bytes (32-bit or 64-bit) has been converted to a :ref:`Vector2` variant. + +\ **Note:** The size of the input array must be a multiple of 8 or 16 (depending on the build settings, see :ref:`Vector2` for more details). The size of the new array will be ``byte_array.size() / (8 or 16)``. If the original data can't be converted to :ref:`Vector2` variants, the resulting data is undefined. + +.. rst-class:: classref-item-separator + +---- + +.. _class_PackedByteArray_method_to_vector3_array: + +.. rst-class:: classref-method + +:ref:`PackedVector3Array` **to_vector3_array**\ (\ ) |const| :ref:`🔗` + +Returns a copy of the data converted to a :ref:`PackedVector3Array`, where each block of 12 or 24 bytes (32-bit or 64-bit) has been converted to a :ref:`Vector3` variant. + +\ **Note:** The size of the input array must be a multiple of 12 or 24 (depending on the build settings, see :ref:`Vector3` for more details). The size of the new array will be ``byte_array.size() / (12 or 24)``. If the original data can't be converted to :ref:`Vector3` variants, the resulting data is undefined. + +.. rst-class:: classref-item-separator + +---- + +.. _class_PackedByteArray_method_to_vector4_array: + +.. rst-class:: classref-method + +:ref:`PackedVector4Array` **to_vector4_array**\ (\ ) |const| :ref:`🔗` + +Returns a copy of the data converted to a :ref:`PackedVector4Array`, where each block of 16 or 32 bytes (32-bit or 64-bit) has been converted to a :ref:`Vector4` variant. + +\ **Note:** The size of the input array must be a multiple of 16 or 32 (depending on the build settings, see :ref:`Vector4` for more details). The size of the new array will be ``byte_array.size() / (16 or 32)``. If the original data can't be converted to :ref:`Vector4` variants, the resulting data is undefined. + .. rst-class:: classref-section-separator ---- @@ -1054,6 +1198,7 @@ Returns the byte at index ``index``. Negative indices can be used to access the Note that the byte is returned as a 64-bit :ref:`int`. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_packedcolorarray.rst b/classes/class_packedcolorarray.rst index 58b78c991..fb115d54b 100644 --- a/classes/class_packedcolorarray.rst +++ b/classes/class_packedcolorarray.rst @@ -21,7 +21,7 @@ An array specifically designed to hold :ref:`Color`. Packs data tig \ **Differences between packed arrays, typed arrays, and untyped arrays:** Packed arrays are generally faster to iterate on and modify compared to a typed array of the same type (e.g. **PackedColorArray** versus ``Array[Color]``). Also, packed arrays consume less memory. As a downside, packed arrays are less flexible as they don't offer as many convenience methods such as :ref:`Array.map()`. Typed arrays are in turn faster to iterate on and modify than untyped arrays. -\ **Note:** Packed arrays are always passed by reference. To get a copy of an array that can be modified independently of the original array, use :ref:`duplicate()`. This is *not* the case for built-in properties and methods. The returned packed array of these are a copies, and changing it will *not* affect the original value. To update a built-in property you need to modify the returned array, and then assign it to the property again. +\ **Note:** Packed arrays are always passed by reference. To get a copy of an array that can be modified independently of the original array, use :ref:`duplicate()`. This is *not* the case for built-in properties and methods. In these cases the returned packed array is a copy, and changing it will *not* affect the original value. To update a built-in property of this type, modify the returned array and then assign it to the property again. .. note:: @@ -64,6 +64,8 @@ Methods +-------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`PackedColorArray` | :ref:`duplicate`\ (\ ) | +-------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`erase`\ (\ value\: :ref:`Color`\ ) | + +-------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`fill`\ (\ value\: :ref:`Color`\ ) | +-------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`find`\ (\ value\: :ref:`Color`, from\: :ref:`int` = 0\ ) |const| | @@ -241,6 +243,18 @@ Creates a copy of the array, and returns it. ---- +.. _class_PackedColorArray_method_erase: + +.. rst-class:: classref-method + +:ref:`bool` **erase**\ (\ value\: :ref:`Color`\ ) :ref:`🔗` + +Removes the first occurrence of a value from the array and returns ``true``. If the value does not exist in the array, nothing happens and ``false`` is returned. To remove an element by index, use :ref:`remove_at()` instead. + +.. rst-class:: classref-item-separator + +---- + .. _class_PackedColorArray_method_fill: .. rst-class:: classref-method @@ -271,7 +285,9 @@ Searches the array for a value and returns its index or ``-1`` if not found. Opt :ref:`Color` **get**\ (\ index\: :ref:`int`\ ) |const| :ref:`🔗` -Returns the :ref:`Color` at the given ``index`` in the array. This is the same as using the ``[]`` operator (``array[index]``). +Returns the :ref:`Color` at the given ``index`` in the array. If ``index`` out-of-bounds or negative, this method fails and returns ``Color(0, 0, 0, 1)``. + +This method is similar (but not identical) to the ``[]`` operator. Most notably, when this method fails, it doesn't pause project execution if run from the editor. .. rst-class:: classref-item-separator @@ -345,6 +361,8 @@ Removes an element from the array by index. Sets the size of the array. If the array is grown, reserves elements at the end of the array. If the array is shrunk, truncates the array to the new size. Calling :ref:`resize()` once and assigning the new values is faster than adding new elements one by one. +Returns :ref:`@GlobalScope.OK` on success, or one of the following :ref:`Error` constants if this method fails: :ref:`@GlobalScope.ERR_INVALID_PARAMETER` if the size is negative, or :ref:`@GlobalScope.ERR_OUT_OF_MEMORY` if allocations fail. Use :ref:`size()` to find the actual size of the array after resize. + .. rst-class:: classref-item-separator ---- @@ -487,6 +505,7 @@ Returns ``true`` if contents of both arrays are the same, i.e. they have all equ Returns the :ref:`Color` at index ``index``. Negative indices can be used to access the elements starting from the end. Using index out of array's bounds will result in an error. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_packeddatacontainer.rst b/classes/class_packeddatacontainer.rst index f46edd08f..97e0c03f9 100644 --- a/classes/class_packeddatacontainer.rst +++ b/classes/class_packeddatacontainer.rst @@ -10,6 +10,8 @@ PackedDataContainer =================== +**Deprecated:** Use :ref:`@GlobalScope.var_to_bytes()` or :ref:`FileAccess.store_var()` instead. To enable data compression, use :ref:`PackedByteArray.compress()` or :ref:`FileAccess.open_compressed()`. + **Inherits:** :ref:`Resource` **<** :ref:`RefCounted` **<** :ref:`Object` Efficiently packs and serializes :ref:`Array` or :ref:`Dictionary`. @@ -92,6 +94,7 @@ Packs the given container into a binary representation. The ``value`` must be ei Returns the size of the packed container (see :ref:`Array.size()` and :ref:`Dictionary.size()`). .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_packeddatacontainerref.rst b/classes/class_packeddatacontainerref.rst index 3a88abae3..084730048 100644 --- a/classes/class_packeddatacontainerref.rst +++ b/classes/class_packeddatacontainerref.rst @@ -10,6 +10,8 @@ PackedDataContainerRef ====================== +**Deprecated:** Use :ref:`@GlobalScope.var_to_bytes()` or :ref:`FileAccess.store_var()` instead. To enable data compression, use :ref:`PackedByteArray.compress()` or :ref:`FileAccess.open_compressed()`. + **Inherits:** :ref:`RefCounted` **<** :ref:`Object` An internal class used by :ref:`PackedDataContainer` to pack nested arrays and dictionaries. @@ -25,7 +27,7 @@ When packing nested containers using :ref:`PackedDataContainer` and :ref:`Dictionary.size()`). .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_packedfloat32array.rst b/classes/class_packedfloat32array.rst index 8d107ebb6..7bf1ed97a 100644 --- a/classes/class_packedfloat32array.rst +++ b/classes/class_packedfloat32array.rst @@ -21,7 +21,7 @@ An array specifically designed to hold 32-bit floating-point values (float). Pac If you need to pack 64-bit floats tightly, see :ref:`PackedFloat64Array`. -\ **Note:** Packed arrays are always passed by reference. To get a copy of an array that can be modified independently of the original array, use :ref:`duplicate()`. This is *not* the case for built-in properties and methods. The returned packed array of these are a copies, and changing it will *not* affect the original value. To update a built-in property you need to modify the returned array, and then assign it to the property again. +\ **Note:** Packed arrays are always passed by reference. To get a copy of an array that can be modified independently of the original array, use :ref:`duplicate()`. This is *not* the case for built-in properties and methods. In these cases the returned packed array is a copy, and changing it will *not* affect the original value. To update a built-in property of this type, modify the returned array and then assign it to the property again. .. note:: @@ -64,6 +64,8 @@ Methods +-----------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`PackedFloat32Array` | :ref:`duplicate`\ (\ ) | +-----------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`erase`\ (\ value\: :ref:`float`\ ) | + +-----------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`fill`\ (\ value\: :ref:`float`\ ) | +-----------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`find`\ (\ value\: :ref:`float`, from\: :ref:`int` = 0\ ) |const| | @@ -239,6 +241,20 @@ Creates a copy of the array, and returns it. ---- +.. _class_PackedFloat32Array_method_erase: + +.. rst-class:: classref-method + +:ref:`bool` **erase**\ (\ value\: :ref:`float`\ ) :ref:`🔗` + +Removes the first occurrence of a value from the array and returns ``true``. If the value does not exist in the array, nothing happens and ``false`` is returned. To remove an element by index, use :ref:`remove_at()` instead. + +\ **Note:** :ref:`@GDScript.NAN` doesn't behave the same as other numbers. Therefore, the results from this method may not be accurate if NaNs are included. + +.. rst-class:: classref-item-separator + +---- + .. _class_PackedFloat32Array_method_fill: .. rst-class:: classref-method @@ -271,7 +287,9 @@ Searches the array for a value and returns its index or ``-1`` if not found. Opt :ref:`float` **get**\ (\ index\: :ref:`int`\ ) |const| :ref:`🔗` -Returns the 32-bit float at the given ``index`` in the array. This is the same as using the ``[]`` operator (``array[index]``). +Returns the 32-bit float at the given ``index`` in the array. If ``index`` out-of-bounds or negative, this method fails and returns ``0.0``. + +This method is similar (but not identical) to the ``[]`` operator. Most notably, when this method fails, it doesn't pause project execution if run from the editor. .. rst-class:: classref-item-separator @@ -347,6 +365,8 @@ Removes an element from the array by index. Sets the size of the array. If the array is grown, reserves elements at the end of the array. If the array is shrunk, truncates the array to the new size. Calling :ref:`resize()` once and assigning the new values is faster than adding new elements one by one. +Returns :ref:`@GlobalScope.OK` on success, or one of the following :ref:`Error` constants if this method fails: :ref:`@GlobalScope.ERR_INVALID_PARAMETER` if the size is negative, or :ref:`@GlobalScope.ERR_OUT_OF_MEMORY` if allocations fail. Use :ref:`size()` to find the actual size of the array after resize. + .. rst-class:: classref-item-separator ---- @@ -497,6 +517,7 @@ Returns the :ref:`float` at index ``index``. Negative indices can b Note that :ref:`float` type is 64-bit, unlike the values stored in the array. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_packedfloat64array.rst b/classes/class_packedfloat64array.rst index 749ef0852..a1ba71aba 100644 --- a/classes/class_packedfloat64array.rst +++ b/classes/class_packedfloat64array.rst @@ -23,7 +23,7 @@ If you only need to pack 32-bit floats tightly, see :ref:`PackedFloat32Array`. Typed arrays are in turn faster to iterate on and modify than untyped arrays. -\ **Note:** Packed arrays are always passed by reference. To get a copy of an array that can be modified independently of the original array, use :ref:`duplicate()`. This is *not* the case for built-in properties and methods. The returned packed array of these are a copies, and changing it will *not* affect the original value. To update a built-in property you need to modify the returned array, and then assign it to the property again. +\ **Note:** Packed arrays are always passed by reference. To get a copy of an array that can be modified independently of the original array, use :ref:`duplicate()`. This is *not* the case for built-in properties and methods. In these cases the returned packed array is a copy, and changing it will *not* affect the original value. To update a built-in property of this type, modify the returned array and then assign it to the property again. .. note:: @@ -66,6 +66,8 @@ Methods +-----------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`PackedFloat64Array` | :ref:`duplicate`\ (\ ) | +-----------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`erase`\ (\ value\: :ref:`float`\ ) | + +-----------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`fill`\ (\ value\: :ref:`float`\ ) | +-----------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`find`\ (\ value\: :ref:`float`, from\: :ref:`int` = 0\ ) |const| | @@ -241,6 +243,20 @@ Creates a copy of the array, and returns it. ---- +.. _class_PackedFloat64Array_method_erase: + +.. rst-class:: classref-method + +:ref:`bool` **erase**\ (\ value\: :ref:`float`\ ) :ref:`🔗` + +Removes the first occurrence of a value from the array and returns ``true``. If the value does not exist in the array, nothing happens and ``false`` is returned. To remove an element by index, use :ref:`remove_at()` instead. + +\ **Note:** :ref:`@GDScript.NAN` doesn't behave the same as other numbers. Therefore, the results from this method may not be accurate if NaNs are included. + +.. rst-class:: classref-item-separator + +---- + .. _class_PackedFloat64Array_method_fill: .. rst-class:: classref-method @@ -273,7 +289,9 @@ Searches the array for a value and returns its index or ``-1`` if not found. Opt :ref:`float` **get**\ (\ index\: :ref:`int`\ ) |const| :ref:`🔗` -Returns the 64-bit float at the given ``index`` in the array. This is the same as using the ``[]`` operator (``array[index]``). +Returns the 64-bit float at the given ``index`` in the array. If ``index`` out-of-bounds or negative, this method fails and returns ``0.0``. + +This method is similar (but not identical) to the ``[]`` operator. Most notably, when this method fails, it doesn't pause project execution if run from the editor. .. rst-class:: classref-item-separator @@ -349,6 +367,8 @@ Removes an element from the array by index. Sets the size of the array. If the array is grown, reserves elements at the end of the array. If the array is shrunk, truncates the array to the new size. Calling :ref:`resize()` once and assigning the new values is faster than adding new elements one by one. +Returns :ref:`@GlobalScope.OK` on success, or one of the following :ref:`Error` constants if this method fails: :ref:`@GlobalScope.ERR_INVALID_PARAMETER` if the size is negative, or :ref:`@GlobalScope.ERR_OUT_OF_MEMORY` if allocations fail. Use :ref:`size()` to find the actual size of the array after resize. + .. rst-class:: classref-item-separator ---- @@ -497,6 +517,7 @@ Returns ``true`` if contents of both arrays are the same, i.e. they have all equ Returns the :ref:`float` at index ``index``. Negative indices can be used to access the elements starting from the end. Using index out of array's bounds will result in an error. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_packedint32array.rst b/classes/class_packedint32array.rst index d44049d27..951bd5f82 100644 --- a/classes/class_packedint32array.rst +++ b/classes/class_packedint32array.rst @@ -21,7 +21,7 @@ An array specifically designed to hold 32-bit integer values. Packs data tightly \ **Note:** This type stores signed 32-bit integers, which means it can take values in the interval ``[-2^31, 2^31 - 1]``, i.e. ``[-2147483648, 2147483647]``. Exceeding those bounds will wrap around. In comparison, :ref:`int` uses signed 64-bit integers which can hold much larger values. If you need to pack 64-bit integers tightly, see :ref:`PackedInt64Array`. -\ **Note:** Packed arrays are always passed by reference. To get a copy of an array that can be modified independently of the original array, use :ref:`duplicate()`. This is *not* the case for built-in properties and methods. The returned packed array of these are a copies, and changing it will *not* affect the original value. To update a built-in property you need to modify the returned array, and then assign it to the property again. +\ **Note:** Packed arrays are always passed by reference. To get a copy of an array that can be modified independently of the original array, use :ref:`duplicate()`. This is *not* the case for built-in properties and methods. In these cases the returned packed array is a copy, and changing it will *not* affect the original value. To update a built-in property of this type, modify the returned array and then assign it to the property again. .. note:: @@ -64,6 +64,8 @@ Methods +-------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`PackedInt32Array` | :ref:`duplicate`\ (\ ) | +-------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`erase`\ (\ value\: :ref:`int`\ ) | + +-------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`fill`\ (\ value\: :ref:`int`\ ) | +-------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`find`\ (\ value\: :ref:`int`, from\: :ref:`int` = 0\ ) |const| | @@ -235,6 +237,18 @@ Creates a copy of the array, and returns it. ---- +.. _class_PackedInt32Array_method_erase: + +.. rst-class:: classref-method + +:ref:`bool` **erase**\ (\ value\: :ref:`int`\ ) :ref:`🔗` + +Removes the first occurrence of a value from the array and returns ``true``. If the value does not exist in the array, nothing happens and ``false`` is returned. To remove an element by index, use :ref:`remove_at()` instead. + +.. rst-class:: classref-item-separator + +---- + .. _class_PackedInt32Array_method_fill: .. rst-class:: classref-method @@ -265,7 +279,9 @@ Searches the array for a value and returns its index or ``-1`` if not found. Opt :ref:`int` **get**\ (\ index\: :ref:`int`\ ) |const| :ref:`🔗` -Returns the 32-bit integer at the given ``index`` in the array. This is the same as using the ``[]`` operator (``array[index]``). +Returns the 32-bit integer at the given ``index`` in the array. If ``index`` out-of-bounds or negative, this method fails and returns ``0``. + +This method is similar (but not identical) to the ``[]`` operator. Most notably, when this method fails, it doesn't pause project execution if run from the editor. .. rst-class:: classref-item-separator @@ -339,6 +355,8 @@ Removes an element from the array by index. Sets the size of the array. If the array is grown, reserves elements at the end of the array. If the array is shrunk, truncates the array to the new size. Calling :ref:`resize()` once and assigning the new values is faster than adding new elements one by one. +Returns :ref:`@GlobalScope.OK` on success, or one of the following :ref:`Error` constants if this method fails: :ref:`@GlobalScope.ERR_INVALID_PARAMETER` if the size is negative, or :ref:`@GlobalScope.ERR_OUT_OF_MEMORY` if allocations fail. Use :ref:`size()` to find the actual size of the array after resize. + .. rst-class:: classref-item-separator ---- @@ -485,6 +503,7 @@ Returns the :ref:`int` at index ``index``. Negative indices can be us Note that :ref:`int` type is 64-bit, unlike the values stored in the array. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_packedint64array.rst b/classes/class_packedint64array.rst index e99896080..c3be79903 100644 --- a/classes/class_packedint64array.rst +++ b/classes/class_packedint64array.rst @@ -23,7 +23,7 @@ An array specifically designed to hold 64-bit integer values. Packs data tightly \ **Differences between packed arrays, typed arrays, and untyped arrays:** Packed arrays are generally faster to iterate on and modify compared to a typed array of the same type (e.g. **PackedInt64Array** versus ``Array[int]``). Also, packed arrays consume less memory. As a downside, packed arrays are less flexible as they don't offer as many convenience methods such as :ref:`Array.map()`. Typed arrays are in turn faster to iterate on and modify than untyped arrays. -\ **Note:** Packed arrays are always passed by reference. To get a copy of an array that can be modified independently of the original array, use :ref:`duplicate()`. This is *not* the case for built-in properties and methods. The returned packed array of these are a copies, and changing it will *not* affect the original value. To update a built-in property you need to modify the returned array, and then assign it to the property again. +\ **Note:** Packed arrays are always passed by reference. To get a copy of an array that can be modified independently of the original array, use :ref:`duplicate()`. This is *not* the case for built-in properties and methods. In these cases the returned packed array is a copy, and changing it will *not* affect the original value. To update a built-in property of this type, modify the returned array and then assign it to the property again. .. note:: @@ -66,6 +66,8 @@ Methods +-------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`PackedInt64Array` | :ref:`duplicate`\ (\ ) | +-------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`erase`\ (\ value\: :ref:`int`\ ) | + +-------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`fill`\ (\ value\: :ref:`int`\ ) | +-------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`find`\ (\ value\: :ref:`int`, from\: :ref:`int` = 0\ ) |const| | @@ -237,6 +239,18 @@ Creates a copy of the array, and returns it. ---- +.. _class_PackedInt64Array_method_erase: + +.. rst-class:: classref-method + +:ref:`bool` **erase**\ (\ value\: :ref:`int`\ ) :ref:`🔗` + +Removes the first occurrence of a value from the array and returns ``true``. If the value does not exist in the array, nothing happens and ``false`` is returned. To remove an element by index, use :ref:`remove_at()` instead. + +.. rst-class:: classref-item-separator + +---- + .. _class_PackedInt64Array_method_fill: .. rst-class:: classref-method @@ -267,7 +281,9 @@ Searches the array for a value and returns its index or ``-1`` if not found. Opt :ref:`int` **get**\ (\ index\: :ref:`int`\ ) |const| :ref:`🔗` -Returns the 64-bit integer at the given ``index`` in the array. This is the same as using the ``[]`` operator (``array[index]``). +Returns the 64-bit integer at the given ``index`` in the array. If ``index`` out-of-bounds or negative, this method fails and returns ``0``. + +This method is similar (but not identical) to the ``[]`` operator. Most notably, when this method fails, it doesn't pause project execution if run from the editor. .. rst-class:: classref-item-separator @@ -341,6 +357,8 @@ Removes an element from the array by index. Sets the size of the array. If the array is grown, reserves elements at the end of the array. If the array is shrunk, truncates the array to the new size. Calling :ref:`resize()` once and assigning the new values is faster than adding new elements one by one. +Returns :ref:`@GlobalScope.OK` on success, or one of the following :ref:`Error` constants if this method fails: :ref:`@GlobalScope.ERR_INVALID_PARAMETER` if the size is negative, or :ref:`@GlobalScope.ERR_OUT_OF_MEMORY` if allocations fail. Use :ref:`size()` to find the actual size of the array after resize. + .. rst-class:: classref-item-separator ---- @@ -485,6 +503,7 @@ Returns ``true`` if contents of both arrays are the same, i.e. they have all equ Returns the :ref:`int` at index ``index``. Negative indices can be used to access the elements starting from the end. Using index out of array's bounds will result in an error. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_packedscene.rst b/classes/class_packedscene.rst index 0346718a2..ae2451041 100644 --- a/classes/class_packedscene.rst +++ b/classes/class_packedscene.rst @@ -57,15 +57,15 @@ Can be used to save a node to a file. When saving, the node as well as all the n var node = Node2D.new() var body = RigidBody2D.new() var collision = CollisionShape2D.new() - + # Create the object hierarchy. body.add_child(collision) node.add_child(body) - + # Change owner of `body`, but not of `collision`. body.owner = node var scene = PackedScene.new() - + # Only `node` and `body` are now packed. var result = scene.pack(node) if result == OK: @@ -79,15 +79,15 @@ Can be used to save a node to a file. When saving, the node as well as all the n var node = new Node2D(); var body = new RigidBody2D(); var collision = new CollisionShape2D(); - + // Create the object hierarchy. body.AddChild(collision); node.AddChild(body); - + // Change owner of `body`, but not of `collision`. body.Owner = node; var scene = new PackedScene(); - + // Only `node` and `body` are now packed. Error result = scene.Pack(node); if (result == Error.Ok) @@ -233,6 +233,7 @@ Instantiates the scene's node hierarchy. Triggers child scene instantiation(s). Packs the ``path`` node, and all owned sub-nodes, into this **PackedScene**. Any existing data will be cleared. See :ref:`Node.owner`. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_packedstringarray.rst b/classes/class_packedstringarray.rst index 8903963da..185375fd1 100644 --- a/classes/class_packedstringarray.rst +++ b/classes/class_packedstringarray.rst @@ -29,7 +29,7 @@ If you want to join the strings in the array, use :ref:`String.join()`. Typed arrays are in turn faster to iterate on and modify than untyped arrays. -\ **Note:** Packed arrays are always passed by reference. To get a copy of an array that can be modified independently of the original array, use :ref:`duplicate()`. This is *not* the case for built-in properties and methods. The returned packed array of these are a copies, and changing it will *not* affect the original value. To update a built-in property you need to modify the returned array, and then assign it to the property again. +\ **Note:** Packed arrays are always passed by reference. To get a copy of an array that can be modified independently of the original array, use :ref:`duplicate()`. This is *not* the case for built-in properties and methods. In these cases the returned packed array is a copy, and changing it will *not* affect the original value. To update a built-in property of this type, modify the returned array and then assign it to the property again. .. note:: @@ -79,6 +79,8 @@ Methods +---------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`PackedStringArray` | :ref:`duplicate`\ (\ ) | +---------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`erase`\ (\ value\: :ref:`String`\ ) | + +---------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`fill`\ (\ value\: :ref:`String`\ ) | +---------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`find`\ (\ value\: :ref:`String`, from\: :ref:`int` = 0\ ) |const| | @@ -250,6 +252,18 @@ Creates a copy of the array, and returns it. ---- +.. _class_PackedStringArray_method_erase: + +.. rst-class:: classref-method + +:ref:`bool` **erase**\ (\ value\: :ref:`String`\ ) :ref:`🔗` + +Removes the first occurrence of a value from the array and returns ``true``. If the value does not exist in the array, nothing happens and ``false`` is returned. To remove an element by index, use :ref:`remove_at()` instead. + +.. rst-class:: classref-item-separator + +---- + .. _class_PackedStringArray_method_fill: .. rst-class:: classref-method @@ -280,7 +294,9 @@ Searches the array for a value and returns its index or ``-1`` if not found. Opt :ref:`String` **get**\ (\ index\: :ref:`int`\ ) |const| :ref:`🔗` -Returns the :ref:`String` at the given ``index`` in the array. This is the same as using the ``[]`` operator (``array[index]``). +Returns the :ref:`String` at the given ``index`` in the array. Returns an empty string and prints an error if the access is out of bounds. Negative indices are not supported; they will always consider the value to be out of bounds and return an empty string. + +This is similar to using the ``[]`` operator (``array[index]``), except that operator supports negative indices and causes a debugger break if out-of-bounds access is performed. .. rst-class:: classref-item-separator @@ -354,6 +370,8 @@ Removes an element from the array by index. Sets the size of the array. If the array is grown, reserves elements at the end of the array. If the array is shrunk, truncates the array to the new size. Calling :ref:`resize()` once and assigning the new values is faster than adding new elements one by one. +Returns :ref:`@GlobalScope.OK` on success, or one of the following :ref:`Error` constants if this method fails: :ref:`@GlobalScope.ERR_INVALID_PARAMETER` if the size is negative, or :ref:`@GlobalScope.ERR_OUT_OF_MEMORY` if allocations fail. Use :ref:`size()` to find the actual size of the array after resize. + .. rst-class:: classref-item-separator ---- @@ -496,6 +514,7 @@ Returns ``true`` if contents of both arrays are the same, i.e. they have all equ Returns the :ref:`String` at index ``index``. Negative indices can be used to access the elements starting from the end. Using index out of array's bounds will result in an error. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_packedvector2array.rst b/classes/class_packedvector2array.rst index fabd1a9c7..0034119e6 100644 --- a/classes/class_packedvector2array.rst +++ b/classes/class_packedvector2array.rst @@ -21,7 +21,7 @@ An array specifically designed to hold :ref:`Vector2`. Packs data \ **Differences between packed arrays, typed arrays, and untyped arrays:** Packed arrays are generally faster to iterate on and modify compared to a typed array of the same type (e.g. **PackedVector2Array** versus ``Array[Vector2]``). Also, packed arrays consume less memory. As a downside, packed arrays are less flexible as they don't offer as many convenience methods such as :ref:`Array.map()`. Typed arrays are in turn faster to iterate on and modify than untyped arrays. -\ **Note:** Packed arrays are always passed by reference. To get a copy of an array that can be modified independently of the original array, use :ref:`duplicate()`. This is *not* the case for built-in properties and methods. The returned packed array of these are a copies, and changing it will *not* affect the original value. To update a built-in property you need to modify the returned array, and then assign it to the property again. +\ **Note:** Packed arrays are always passed by reference. To get a copy of an array that can be modified independently of the original array, use :ref:`duplicate()`. This is *not* the case for built-in properties and methods. In these cases the returned packed array is a copy, and changing it will *not* affect the original value. To update a built-in property of this type, modify the returned array and then assign it to the property again. .. note:: @@ -71,6 +71,8 @@ Methods +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`PackedVector2Array` | :ref:`duplicate`\ (\ ) | +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`erase`\ (\ value\: :ref:`Vector2`\ ) | + +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`fill`\ (\ value\: :ref:`Vector2`\ ) | +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`find`\ (\ value\: :ref:`Vector2`, from\: :ref:`int` = 0\ ) |const| | @@ -254,6 +256,20 @@ Creates a copy of the array, and returns it. ---- +.. _class_PackedVector2Array_method_erase: + +.. rst-class:: classref-method + +:ref:`bool` **erase**\ (\ value\: :ref:`Vector2`\ ) :ref:`🔗` + +Removes the first occurrence of a value from the array and returns ``true``. If the value does not exist in the array, nothing happens and ``false`` is returned. To remove an element by index, use :ref:`remove_at()` instead. + +\ **Note:** Vectors with :ref:`@GDScript.NAN` elements don't behave the same as other vectors. Therefore, the results from this method may not be accurate if NaNs are included. + +.. rst-class:: classref-item-separator + +---- + .. _class_PackedVector2Array_method_fill: .. rst-class:: classref-method @@ -286,7 +302,9 @@ Searches the array for a value and returns its index or ``-1`` if not found. Opt :ref:`Vector2` **get**\ (\ index\: :ref:`int`\ ) |const| :ref:`🔗` -Returns the :ref:`Vector2` at the given ``index`` in the array. This is the same as using the ``[]`` operator (``array[index]``). +Returns the :ref:`Vector2` at the given ``index`` in the array. If ``index`` out-of-bounds or negative, this method fails and returns ``Vector2(0, 0)``. + +This method is similar (but not identical) to the ``[]`` operator. Most notably, when this method fails, it doesn't pause project execution if run from the editor. .. rst-class:: classref-item-separator @@ -362,6 +380,8 @@ Removes an element from the array by index. Sets the size of the array. If the array is grown, reserves elements at the end of the array. If the array is shrunk, truncates the array to the new size. Calling :ref:`resize()` once and assigning the new values is faster than adding new elements one by one. +Returns :ref:`@GlobalScope.OK` on success, or one of the following :ref:`Error` constants if this method fails: :ref:`@GlobalScope.ERR_INVALID_PARAMETER` if the size is negative, or :ref:`@GlobalScope.ERR_OUT_OF_MEMORY` if allocations fail. Use :ref:`size()` to find the actual size of the array after resize. + .. rst-class:: classref-item-separator ---- @@ -524,6 +544,7 @@ Returns ``true`` if contents of both arrays are the same, i.e. they have all equ Returns the :ref:`Vector2` at index ``index``. Negative indices can be used to access the elements starting from the end. Using index out of array's bounds will result in an error. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_packedvector3array.rst b/classes/class_packedvector3array.rst index f8cda061e..b40e30c02 100644 --- a/classes/class_packedvector3array.rst +++ b/classes/class_packedvector3array.rst @@ -21,7 +21,7 @@ An array specifically designed to hold :ref:`Vector3`. Packs data \ **Differences between packed arrays, typed arrays, and untyped arrays:** Packed arrays are generally faster to iterate on and modify compared to a typed array of the same type (e.g. **PackedVector3Array** versus ``Array[Vector3]``). Also, packed arrays consume less memory. As a downside, packed arrays are less flexible as they don't offer as many convenience methods such as :ref:`Array.map()`. Typed arrays are in turn faster to iterate on and modify than untyped arrays. -\ **Note:** Packed arrays are always passed by reference. To get a copy of an array that can be modified independently of the original array, use :ref:`duplicate()`. This is *not* the case for built-in properties and methods. The returned packed array of these are a copies, and changing it will *not* affect the original value. To update a built-in property you need to modify the returned array, and then assign it to the property again. +\ **Note:** Packed arrays are always passed by reference. To get a copy of an array that can be modified independently of the original array, use :ref:`duplicate()`. This is *not* the case for built-in properties and methods. In these cases the returned packed array is a copy, and changing it will *not* affect the original value. To update a built-in property of this type, modify the returned array and then assign it to the property again. .. note:: @@ -64,6 +64,8 @@ Methods +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`PackedVector3Array` | :ref:`duplicate`\ (\ ) | +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`erase`\ (\ value\: :ref:`Vector3`\ ) | + +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`fill`\ (\ value\: :ref:`Vector3`\ ) | +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`find`\ (\ value\: :ref:`Vector3`, from\: :ref:`int` = 0\ ) |const| | @@ -247,6 +249,20 @@ Creates a copy of the array, and returns it. ---- +.. _class_PackedVector3Array_method_erase: + +.. rst-class:: classref-method + +:ref:`bool` **erase**\ (\ value\: :ref:`Vector3`\ ) :ref:`🔗` + +Removes the first occurrence of a value from the array and returns ``true``. If the value does not exist in the array, nothing happens and ``false`` is returned. To remove an element by index, use :ref:`remove_at()` instead. + +\ **Note:** Vectors with :ref:`@GDScript.NAN` elements don't behave the same as other vectors. Therefore, the results from this method may not be accurate if NaNs are included. + +.. rst-class:: classref-item-separator + +---- + .. _class_PackedVector3Array_method_fill: .. rst-class:: classref-method @@ -279,7 +295,9 @@ Searches the array for a value and returns its index or ``-1`` if not found. Opt :ref:`Vector3` **get**\ (\ index\: :ref:`int`\ ) |const| :ref:`🔗` -Returns the :ref:`Vector3` at the given ``index`` in the array. This is the same as using the ``[]`` operator (``array[index]``). +Returns the :ref:`Vector3` at the given ``index`` in the array. If ``index`` out-of-bounds or negative, this method fails and returns ``Vector3(0, 0, 0)``. + +This method is similar (but not identical) to the ``[]`` operator. Most notably, when this method fails, it doesn't pause project execution if run from the editor. .. rst-class:: classref-item-separator @@ -355,6 +373,8 @@ Removes an element from the array by index. Sets the size of the array. If the array is grown, reserves elements at the end of the array. If the array is shrunk, truncates the array to the new size. Calling :ref:`resize()` once and assigning the new values is faster than adding new elements one by one. +Returns :ref:`@GlobalScope.OK` on success, or one of the following :ref:`Error` constants if this method fails: :ref:`@GlobalScope.ERR_INVALID_PARAMETER` if the size is negative, or :ref:`@GlobalScope.ERR_OUT_OF_MEMORY` if allocations fail. Use :ref:`size()` to find the actual size of the array after resize. + .. rst-class:: classref-item-separator ---- @@ -517,6 +537,7 @@ Returns ``true`` if contents of both arrays are the same, i.e. they have all equ Returns the :ref:`Vector3` at index ``index``. Negative indices can be used to access the elements starting from the end. Using index out of array's bounds will result in an error. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_packedvector4array.rst b/classes/class_packedvector4array.rst index eefec7bba..59a868695 100644 --- a/classes/class_packedvector4array.rst +++ b/classes/class_packedvector4array.rst @@ -21,7 +21,7 @@ An array specifically designed to hold :ref:`Vector4`. Packs data \ **Differences between packed arrays, typed arrays, and untyped arrays:** Packed arrays are generally faster to iterate on and modify compared to a typed array of the same type (e.g. **PackedVector4Array** versus ``Array[Vector4]``). Also, packed arrays consume less memory. As a downside, packed arrays are less flexible as they don't offer as many convenience methods such as :ref:`Array.map()`. Typed arrays are in turn faster to iterate on and modify than untyped arrays. -\ **Note:** Packed arrays are always passed by reference. To get a copy of an array that can be modified independently of the original array, use :ref:`duplicate()`. This is *not* the case for built-in properties and methods. The returned packed array of these are a copies, and changing it will *not* affect the original value. To update a built-in property you need to modify the returned array, and then assign it to the property again. +\ **Note:** Packed arrays are always passed by reference. To get a copy of an array that can be modified independently of the original array, use :ref:`duplicate()`. This is *not* the case for built-in properties and methods. In these cases the returned packed array is a copy, and changing it will *not* affect the original value. To update a built-in property of this type, modify the returned array and then assign it to the property again. .. note:: @@ -64,6 +64,8 @@ Methods +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`PackedVector4Array` | :ref:`duplicate`\ (\ ) | +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`erase`\ (\ value\: :ref:`Vector4`\ ) | + +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`fill`\ (\ value\: :ref:`Vector4`\ ) | +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`find`\ (\ value\: :ref:`Vector4`, from\: :ref:`int` = 0\ ) |const| | @@ -245,6 +247,20 @@ Creates a copy of the array, and returns it. ---- +.. _class_PackedVector4Array_method_erase: + +.. rst-class:: classref-method + +:ref:`bool` **erase**\ (\ value\: :ref:`Vector4`\ ) :ref:`🔗` + +Removes the first occurrence of a value from the array and returns ``true``. If the value does not exist in the array, nothing happens and ``false`` is returned. To remove an element by index, use :ref:`remove_at()` instead. + +\ **Note:** Vectors with :ref:`@GDScript.NAN` elements don't behave the same as other vectors. Therefore, the results from this method may not be accurate if NaNs are included. + +.. rst-class:: classref-item-separator + +---- + .. _class_PackedVector4Array_method_fill: .. rst-class:: classref-method @@ -277,7 +293,9 @@ Searches the array for a value and returns its index or ``-1`` if not found. Opt :ref:`Vector4` **get**\ (\ index\: :ref:`int`\ ) |const| :ref:`🔗` -Returns the :ref:`Vector4` at the given ``index`` in the array. This is the same as using the ``[]`` operator (``array[index]``). +Returns the :ref:`Vector4` at the given ``index`` in the array. If ``index`` out-of-bounds or negative, this method fails and returns ``Vector4(0, 0, 0, 0)``. + +This method is similar (but not identical) to the ``[]`` operator. Most notably, when this method fails, it doesn't pause project execution if run from the editor. .. rst-class:: classref-item-separator @@ -351,7 +369,9 @@ Removes an element from the array by index. :ref:`int` **resize**\ (\ new_size\: :ref:`int`\ ) :ref:`🔗` -Sets the size of the array. If the array is grown, reserves elements at the end of the array. If the array is shrunk, truncates the array to the new size. +Sets the size of the array. If the array is grown, reserves elements at the end of the array. If the array is shrunk, truncates the array to the new size. Calling :ref:`resize()` once and assigning the new values is faster than adding new elements one by one. + +Returns :ref:`@GlobalScope.OK` on success, or one of the following :ref:`Error` constants if this method fails: :ref:`@GlobalScope.ERR_INVALID_PARAMETER` if the size is negative, or :ref:`@GlobalScope.ERR_OUT_OF_MEMORY` if allocations fail. Use :ref:`size()` to find the actual size of the array after resize. .. rst-class:: classref-item-separator @@ -499,6 +519,7 @@ Returns ``true`` if contents of both arrays are the same, i.e. they have all equ Returns the :ref:`Vector4` at index ``index``. Negative indices can be used to access the elements starting from the end. Using index out of array's bounds will result in an error. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_packetpeer.rst b/classes/class_packetpeer.rst index 3988fe90e..eceabf472 100644 --- a/classes/class_packetpeer.rst +++ b/classes/class_packetpeer.rst @@ -167,6 +167,7 @@ Sends a :ref:`Variant` as a packet. If ``full_objects`` is ``true Internally, this uses the same encoding mechanism as the :ref:`@GlobalScope.var_to_bytes()` method. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_packetpeerdtls.rst b/classes/class_packetpeerdtls.rst index 3bf3c8972..febb7a4e8 100644 --- a/classes/class_packetpeerdtls.rst +++ b/classes/class_packetpeerdtls.rst @@ -137,7 +137,7 @@ Disconnects this peer, terminating the DTLS session. :ref:`Status` **get_status**\ (\ ) |const| :ref:`🔗` -Returns the status of the connection. See :ref:`Status` for values. +Returns the status of the connection. .. rst-class:: classref-item-separator @@ -152,6 +152,7 @@ Returns the status of the connection. See :ref:`Status`! + There is currently no description for this class. Please help us by `contributing one `__! .. rst-class:: classref-reftable-group @@ -25,9 +25,9 @@ Methods :widths: auto +---------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`_get_available_packet_count`\ (\ ) |virtual| |const| | + | :ref:`int` | :ref:`_get_available_packet_count`\ (\ ) |virtual| |required| |const| | +---------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`_get_max_packet_size`\ (\ ) |virtual| |const| | + | :ref:`int` | :ref:`_get_max_packet_size`\ (\ ) |virtual| |required| |const| | +---------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`Error` | :ref:`_get_packet`\ (\ r_buffer\: ``const uint8_t **``, r_buffer_size\: ``int32_t*``\ ) |virtual| | +---------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------+ @@ -47,11 +47,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`int` **_get_available_packet_count**\ (\ ) |virtual| |const| :ref:`🔗` +:ref:`int` **_get_available_packet_count**\ (\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -61,11 +61,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`int` **_get_max_packet_size**\ (\ ) |virtual| |const| :ref:`🔗` +:ref:`int` **_get_max_packet_size**\ (\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -79,7 +79,7 @@ Method Descriptions .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -93,9 +93,10 @@ Method Descriptions .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_packetpeerstream.rst b/classes/class_packetpeerstream.rst index 3b7d62d17..779fff94b 100644 --- a/classes/class_packetpeerstream.rst +++ b/classes/class_packetpeerstream.rst @@ -61,7 +61,7 @@ Property Descriptions .. container:: contribute - There is currently no description for this property. Please help us by :ref:`contributing one `! + There is currently no description for this property. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -80,7 +80,7 @@ Property Descriptions .. container:: contribute - There is currently no description for this property. Please help us by :ref:`contributing one `! + There is currently no description for this property. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -100,6 +100,7 @@ Property Descriptions The wrapped :ref:`StreamPeer` object. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_packetpeerudp.rst b/classes/class_packetpeerudp.rst index b2bd3f4d5..5d21c7958 100644 --- a/classes/class_packetpeerudp.rst +++ b/classes/class_packetpeerudp.rst @@ -26,10 +26,10 @@ UDP packet peer. Can be used to send and receive raw UDP packets as well as :ref :: var peer = PacketPeerUDP.new() - + # Optionally, you can select the local port used to send the packet. peer.bind(4444) - + peer.set_dest_address("1.1.1.1", 4433) peer.put_packet("hello".to_utf8_buffer()) @@ -38,12 +38,12 @@ UDP packet peer. Can be used to send and receive raw UDP packets as well as :ref :: var peer - + func _ready(): peer = PacketPeerUDP.new() peer.bind(4433) - - + + func _process(_delta): if peer.get_available_packet_count() > 0: var array_bytes = peer.get_packet() @@ -276,7 +276,7 @@ Waits for a packet to arrive on the bound address. See :ref:`bind()` of this control. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_panelcontainer.rst b/classes/class_panelcontainer.rst index b2aead9e2..263d3d252 100644 --- a/classes/class_panelcontainer.rst +++ b/classes/class_panelcontainer.rst @@ -74,6 +74,7 @@ Theme Property Descriptions The style of **PanelContainer**'s background. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_panoramaskymaterial.rst b/classes/class_panoramaskymaterial.rst index 0759e569a..8fffeb5dc 100644 --- a/classes/class_panoramaskymaterial.rst +++ b/classes/class_panoramaskymaterial.rst @@ -98,6 +98,7 @@ A boolean value to determine if the background texture should be filtered or not :ref:`Texture2D` to be applied to the **PanoramaSkyMaterial**. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_parallax2d.rst b/classes/class_parallax2d.rst index 016e9c189..bcb83cf31 100644 --- a/classes/class_parallax2d.rst +++ b/classes/class_parallax2d.rst @@ -45,9 +45,9 @@ Properties +---------------------------------------------------------------------+-----------------------------------------------------------------------------+-------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`ignore_camera_scroll` | ``false`` | +---------------------------------------------------------------------+-----------------------------------------------------------------------------+-------------------------------------------------------------------------------+ - | :ref:`Vector2` | :ref:`limit_begin` | ``Vector2(-1e+07, -1e+07)`` | + | :ref:`Vector2` | :ref:`limit_begin` | ``Vector2(-10000000, -10000000)`` | +---------------------------------------------------------------------+-----------------------------------------------------------------------------+-------------------------------------------------------------------------------+ - | :ref:`Vector2` | :ref:`limit_end` | ``Vector2(1e+07, 1e+07)`` | + | :ref:`Vector2` | :ref:`limit_end` | ``Vector2(10000000, 10000000)`` | +---------------------------------------------------------------------+-----------------------------------------------------------------------------+-------------------------------------------------------------------------------+ | :ref:`PhysicsInterpolationMode` | physics_interpolation_mode | ``2`` (overrides :ref:`Node`) | +---------------------------------------------------------------------+-----------------------------------------------------------------------------+-------------------------------------------------------------------------------+ @@ -126,7 +126,7 @@ If ``true``, **Parallax2D**'s position is not affected by the position of the ca .. rst-class:: classref-property -:ref:`Vector2` **limit_begin** = ``Vector2(-1e+07, -1e+07)`` :ref:`🔗` +:ref:`Vector2` **limit_begin** = ``Vector2(-10000000, -10000000)`` :ref:`🔗` .. rst-class:: classref-property-setget @@ -143,7 +143,7 @@ Top-left limits for scrolling to begin. If the camera is outside of this limit, .. rst-class:: classref-property -:ref:`Vector2` **limit_end** = ``Vector2(1e+07, 1e+07)`` :ref:`🔗` +:ref:`Vector2` **limit_end** = ``Vector2(10000000, 10000000)`` :ref:`🔗` .. rst-class:: classref-property-setget @@ -242,6 +242,7 @@ Multiplier to the final **Parallax2D**'s offset. Can be used to simulate distanc For example, a value of ``1`` scrolls at the same speed as the camera. A value greater than ``1`` scrolls faster, making objects appear closer. Less than ``1`` scrolls slower, making objects appear further, and a value of ``0`` stops the objects completely. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_parallaxbackground.rst b/classes/class_parallaxbackground.rst index a7c2621c5..91b2aeafa 100644 --- a/classes/class_parallaxbackground.rst +++ b/classes/class_parallaxbackground.rst @@ -10,6 +10,8 @@ ParallaxBackground ================== +**Deprecated:** Use the :ref:`Parallax2D` node instead. + **Inherits:** :ref:`CanvasLayer` **<** :ref:`Node` **<** :ref:`Object` A node used to create a parallax scrolling background. @@ -155,6 +157,7 @@ Bottom-right limits for scrolling to end. If the camera is outside of this limit The ParallaxBackground's scroll value. Calculated automatically when using a :ref:`Camera2D`, but can be used to manually manage scrolling when no camera is present. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_parallaxlayer.rst b/classes/class_parallaxlayer.rst index 7dc0f710a..832f8d203 100644 --- a/classes/class_parallaxlayer.rst +++ b/classes/class_parallaxlayer.rst @@ -10,6 +10,8 @@ ParallaxLayer ============= +**Deprecated:** Use the :ref:`Parallax2D` node instead. + **Inherits:** :ref:`Node2D` **<** :ref:`CanvasItem` **<** :ref:`Node` **<** :ref:`Object` A parallax scrolling layer to be used with :ref:`ParallaxBackground`. @@ -106,6 +108,7 @@ The ParallaxLayer's offset relative to the parent ParallaxBackground's :ref:`Par Multiplies the ParallaxLayer's motion. If an axis is set to ``0``, it will not scroll. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_particleprocessmaterial.rst b/classes/class_particleprocessmaterial.rst index 58c48fdf2..afd3f5aae 100644 --- a/classes/class_particleprocessmaterial.rst +++ b/classes/class_particleprocessmaterial.rst @@ -481,7 +481,7 @@ Use with :ref:`set_particle_flag()`! + There is currently no description for this enum. Please help us by `contributing one `__! @@ -585,7 +585,7 @@ enum **SubEmitterMode**: :ref:`🔗 .. container:: contribute - There is currently no description for this enum. Please help us by :ref:`contributing one `! + There is currently no description for this enum. Please help us by `contributing one `__! @@ -597,7 +597,7 @@ enum **SubEmitterMode**: :ref:`🔗 .. container:: contribute - There is currently no description for this enum. Please help us by :ref:`contributing one `! + There is currently no description for this enum. Please help us by `contributing one `__! @@ -609,7 +609,7 @@ enum **SubEmitterMode**: :ref:`🔗 .. container:: contribute - There is currently no description for this enum. Please help us by :ref:`contributing one `! + There is currently no description for this enum. Please help us by `contributing one `__! @@ -621,7 +621,7 @@ enum **SubEmitterMode**: :ref:`🔗 .. container:: contribute - There is currently no description for this enum. Please help us by :ref:`contributing one `! + There is currently no description for this enum. Please help us by `contributing one `__! @@ -633,7 +633,7 @@ enum **SubEmitterMode**: :ref:`🔗 .. container:: contribute - There is currently no description for this enum. Please help us by :ref:`contributing one `! + There is currently no description for this enum. Please help us by `contributing one `__! @@ -1402,7 +1402,7 @@ The radius of the ring when using the emitter :ref:`EMISSION_SHAPE_RING`\ ) - :ref:`EmissionShape` **get_emission_shape**\ (\ ) -Particles will be emitted inside this region. Use :ref:`EmissionShape` constants for values. +Particles will be emitted inside this region. .. rst-class:: classref-item-separator @@ -2463,7 +2463,7 @@ Returns the :ref:`Texture2D` used by the specified parameter. :ref:`bool` **get_particle_flag**\ (\ particle_flag\: :ref:`ParticleFlags`\ ) |const| :ref:`🔗` -Returns ``true`` if the specified particle flag is enabled. See :ref:`ParticleFlags` for options. +Returns ``true`` if the specified particle flag is enabled. .. rst-class:: classref-item-separator @@ -2525,9 +2525,10 @@ Sets the :ref:`Texture2D` for the specified :ref:`Parameter`, enable\: :ref:`bool`\ ) :ref:`🔗` -If ``true``, enables the specified particle flag. See :ref:`ParticleFlags` for options. +Sets the ``particle_flag`` to ``enable``. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_path2d.rst b/classes/class_path2d.rst index 058f94663..5d74a25df 100644 --- a/classes/class_path2d.rst +++ b/classes/class_path2d.rst @@ -58,6 +58,7 @@ Property Descriptions A :ref:`Curve2D` describing the path. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_path3d.rst b/classes/class_path3d.rst index 500c6ba95..edaec4377 100644 --- a/classes/class_path3d.rst +++ b/classes/class_path3d.rst @@ -31,9 +31,11 @@ Properties .. table:: :widths: auto - +-------------------------------+-------------------------------------------+ - | :ref:`Curve3D` | :ref:`curve` | - +-------------------------------+-------------------------------------------+ + +-------------------------------+---------------------------------------------------------------------+-----------------------+ + | :ref:`Curve3D` | :ref:`curve` | | + +-------------------------------+---------------------------------------------------------------------+-----------------------+ + | :ref:`Color` | :ref:`debug_custom_color` | ``Color(0, 0, 0, 1)`` | + +-------------------------------+---------------------------------------------------------------------+-----------------------+ .. rst-class:: classref-section-separator @@ -52,6 +54,18 @@ Signals Emitted when the :ref:`curve` changes. +.. rst-class:: classref-item-separator + +---- + +.. _class_Path3D_signal_debug_color_changed: + +.. rst-class:: classref-signal + +**debug_color_changed**\ (\ ) :ref:`🔗` + +Emitted when the :ref:`debug_custom_color` changes. + .. rst-class:: classref-section-separator ---- @@ -74,7 +88,27 @@ Property Descriptions A :ref:`Curve3D` describing the path. +.. rst-class:: classref-item-separator + +---- + +.. _class_Path3D_property_debug_custom_color: + +.. rst-class:: classref-property + +:ref:`Color` **debug_custom_color** = ``Color(0, 0, 0, 1)`` :ref:`🔗` + +.. rst-class:: classref-property-setget + +- |void| **set_debug_custom_color**\ (\ value\: :ref:`Color`\ ) +- :ref:`Color` **get_debug_custom_color**\ (\ ) + +The custom color to use to draw the shape in the editor. + +If set to ``Color(0.0, 0.0, 0.0)`` (by default), the color set in EditorSettings is used. + .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |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.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_pathfollow2d.rst b/classes/class_pathfollow2d.rst index 3f2e93916..384e7817a 100644 --- a/classes/class_pathfollow2d.rst +++ b/classes/class_pathfollow2d.rst @@ -178,6 +178,7 @@ If ``true``, this node rotates to follow the path, with the +X direction facing The node's offset perpendicular to the curve. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_pathfollow3d.rst b/classes/class_pathfollow3d.rst index 6aad313fb..51510ed95 100644 --- a/classes/class_pathfollow3d.rst +++ b/classes/class_pathfollow3d.rst @@ -300,6 +300,7 @@ Method Descriptions Correct the ``transform``. ``rotation_mode`` implicitly specifies how posture (forward, up and sideway direction) is calculated. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_pckpacker.rst b/classes/class_pckpacker.rst index 017a06164..4fd6ee738 100644 --- a/classes/class_pckpacker.rst +++ b/classes/class_pckpacker.rst @@ -77,7 +77,7 @@ Method Descriptions :ref:`Error` **add_file**\ (\ target_path\: :ref:`String`, source_path\: :ref:`String`, encrypt\: :ref:`bool` = false\ ) :ref:`🔗` -Adds the ``source_path`` file to the current PCK package at the ``target_path`` internal path. The ``res://`` prefix for ``target_path`` is optional and stripped internally. +Adds the ``source_path`` file to the current PCK package at the ``target_path`` internal path. The ``res://`` prefix for ``target_path`` is optional and stripped internally. File content is immediately written to the PCK. .. rst-class:: classref-item-separator @@ -101,7 +101,9 @@ Registers a file removal of the ``target_path`` internal path to the PCK. This i :ref:`Error` **flush**\ (\ verbose\: :ref:`bool` = false\ ) :ref:`🔗` -Writes the files specified using all :ref:`add_file()` calls since the last flush. If ``verbose`` is ``true``, a list of files added will be printed to the console for easier debugging. +Writes the file directory and closes the PCK. If ``verbose`` is ``true``, a list of files added will be printed to the console for easier debugging. + +\ **Note:** **PCKPacker** will automatically flush when it's freed, which happens when it goes out of scope or when it gets assigned with ``null``. In C# the reference must be disposed after use, either with the ``using`` statement or by calling the ``Dispose`` method directly. .. rst-class:: classref-item-separator @@ -116,6 +118,7 @@ Writes the files specified using all :ref:`add_file()`. Equivalent to calli :ref:`Monitor` **NAVIGATION_ACTIVE_MAPS** = ``24`` -Number of active navigation maps in the :ref:`NavigationServer3D`. This also includes the two empty default navigation maps created by World2D and World3D. +Number of active navigation maps in :ref:`NavigationServer2D` and :ref:`NavigationServer3D`. This also includes the two empty default navigation maps created by World2D and World3D. .. _class_Performance_constant_NAVIGATION_REGION_COUNT: @@ -274,7 +274,7 @@ Number of active navigation maps in the :ref:`NavigationServer3D` **NAVIGATION_REGION_COUNT** = ``25`` -Number of active navigation regions in the :ref:`NavigationServer3D`. +Number of active navigation regions in :ref:`NavigationServer2D` and :ref:`NavigationServer3D`. .. _class_Performance_constant_NAVIGATION_AGENT_COUNT: @@ -282,7 +282,7 @@ Number of active navigation regions in the :ref:`NavigationServer3D` **NAVIGATION_AGENT_COUNT** = ``26`` -Number of active navigation agents processing avoidance in the :ref:`NavigationServer3D`. +Number of active navigation agents processing avoidance in :ref:`NavigationServer2D` and :ref:`NavigationServer3D`. .. _class_Performance_constant_NAVIGATION_LINK_COUNT: @@ -290,7 +290,7 @@ Number of active navigation agents processing avoidance in the :ref:`NavigationS :ref:`Monitor` **NAVIGATION_LINK_COUNT** = ``27`` -Number of active navigation links in the :ref:`NavigationServer3D`. +Number of active navigation links in :ref:`NavigationServer2D` and :ref:`NavigationServer3D`. .. _class_Performance_constant_NAVIGATION_POLYGON_COUNT: @@ -298,7 +298,7 @@ Number of active navigation links in the :ref:`NavigationServer3D` **NAVIGATION_POLYGON_COUNT** = ``28`` -Number of navigation mesh polygons in the :ref:`NavigationServer3D`. +Number of navigation mesh polygons in :ref:`NavigationServer2D` and :ref:`NavigationServer3D`. .. _class_Performance_constant_NAVIGATION_EDGE_COUNT: @@ -306,7 +306,7 @@ Number of navigation mesh polygons in the :ref:`NavigationServer3D` **NAVIGATION_EDGE_COUNT** = ``29`` -Number of navigation mesh polygon edges in the :ref:`NavigationServer3D`. +Number of navigation mesh polygon edges in :ref:`NavigationServer2D` and :ref:`NavigationServer3D`. .. _class_Performance_constant_NAVIGATION_EDGE_MERGE_COUNT: @@ -314,7 +314,7 @@ Number of navigation mesh polygon edges in the :ref:`NavigationServer3D` **NAVIGATION_EDGE_MERGE_COUNT** = ``30`` -Number of navigation mesh polygon edges that were merged due to edge key overlap in the :ref:`NavigationServer3D`. +Number of navigation mesh polygon edges that were merged due to edge key overlap in :ref:`NavigationServer2D` and :ref:`NavigationServer3D`. .. _class_Performance_constant_NAVIGATION_EDGE_CONNECTION_COUNT: @@ -322,7 +322,7 @@ Number of navigation mesh polygon edges that were merged due to edge key overlap :ref:`Monitor` **NAVIGATION_EDGE_CONNECTION_COUNT** = ``31`` -Number of polygon edges that are considered connected by edge proximity :ref:`NavigationServer3D`. +Number of polygon edges that are considered connected by edge proximity :ref:`NavigationServer2D` and :ref:`NavigationServer3D`. .. _class_Performance_constant_NAVIGATION_EDGE_FREE_COUNT: @@ -330,7 +330,7 @@ Number of polygon edges that are considered connected by edge proximity :ref:`Na :ref:`Monitor` **NAVIGATION_EDGE_FREE_COUNT** = ``32`` -Number of navigation mesh polygon edges that could not be merged in the :ref:`NavigationServer3D`. The edges still may be connected by edge proximity or with links. +Number of navigation mesh polygon edges that could not be merged in :ref:`NavigationServer2D` and :ref:`NavigationServer3D`. The edges still may be connected by edge proximity or with links. .. _class_Performance_constant_NAVIGATION_OBSTACLE_COUNT: @@ -338,7 +338,7 @@ Number of navigation mesh polygon edges that could not be merged in the :ref:`Na :ref:`Monitor` **NAVIGATION_OBSTACLE_COUNT** = ``33`` -Number of active navigation obstacles in the :ref:`NavigationServer3D`. +Number of active navigation obstacles in the :ref:`NavigationServer2D` and :ref:`NavigationServer3D`. .. _class_Performance_constant_PIPELINE_COMPILATIONS_CANVAS: @@ -362,7 +362,7 @@ Number of pipeline compilations that were triggered by loading meshes. These com :ref:`Monitor` **PIPELINE_COMPILATIONS_SURFACE** = ``36`` -Number of pipeline compilations that were triggered by building the surface cache before rendering the scene. These compilations will show up as a stutter when loading an scene the first time a user runs the game and the pipeline is required. +Number of pipeline compilations that were triggered by building the surface cache before rendering the scene. These compilations will show up as a stutter when loading a scene the first time a user runs the game and the pipeline is required. .. _class_Performance_constant_PIPELINE_COMPILATIONS_DRAW: @@ -380,11 +380,171 @@ Number of pipeline compilations that were triggered while drawing the scene. The Number of pipeline compilations that were triggered to optimize the current scene. These compilations are done in the background and should not cause any stutters whatsoever. +.. _class_Performance_constant_NAVIGATION_2D_ACTIVE_MAPS: + +.. rst-class:: classref-enumeration-constant + +:ref:`Monitor` **NAVIGATION_2D_ACTIVE_MAPS** = ``39`` + +Number of active navigation maps in the :ref:`NavigationServer2D`. This also includes the two empty default navigation maps created by World2D. + +.. _class_Performance_constant_NAVIGATION_2D_REGION_COUNT: + +.. rst-class:: classref-enumeration-constant + +:ref:`Monitor` **NAVIGATION_2D_REGION_COUNT** = ``40`` + +Number of active navigation regions in the :ref:`NavigationServer2D`. + +.. _class_Performance_constant_NAVIGATION_2D_AGENT_COUNT: + +.. rst-class:: classref-enumeration-constant + +:ref:`Monitor` **NAVIGATION_2D_AGENT_COUNT** = ``41`` + +Number of active navigation agents processing avoidance in the :ref:`NavigationServer2D`. + +.. _class_Performance_constant_NAVIGATION_2D_LINK_COUNT: + +.. rst-class:: classref-enumeration-constant + +:ref:`Monitor` **NAVIGATION_2D_LINK_COUNT** = ``42`` + +Number of active navigation links in the :ref:`NavigationServer2D`. + +.. _class_Performance_constant_NAVIGATION_2D_POLYGON_COUNT: + +.. rst-class:: classref-enumeration-constant + +:ref:`Monitor` **NAVIGATION_2D_POLYGON_COUNT** = ``43`` + +Number of navigation mesh polygons in the :ref:`NavigationServer2D`. + +.. _class_Performance_constant_NAVIGATION_2D_EDGE_COUNT: + +.. rst-class:: classref-enumeration-constant + +:ref:`Monitor` **NAVIGATION_2D_EDGE_COUNT** = ``44`` + +Number of navigation mesh polygon edges in the :ref:`NavigationServer2D`. + +.. _class_Performance_constant_NAVIGATION_2D_EDGE_MERGE_COUNT: + +.. rst-class:: classref-enumeration-constant + +:ref:`Monitor` **NAVIGATION_2D_EDGE_MERGE_COUNT** = ``45`` + +Number of navigation mesh polygon edges that were merged due to edge key overlap in the :ref:`NavigationServer2D`. + +.. _class_Performance_constant_NAVIGATION_2D_EDGE_CONNECTION_COUNT: + +.. rst-class:: classref-enumeration-constant + +:ref:`Monitor` **NAVIGATION_2D_EDGE_CONNECTION_COUNT** = ``46`` + +Number of polygon edges that are considered connected by edge proximity :ref:`NavigationServer2D`. + +.. _class_Performance_constant_NAVIGATION_2D_EDGE_FREE_COUNT: + +.. rst-class:: classref-enumeration-constant + +:ref:`Monitor` **NAVIGATION_2D_EDGE_FREE_COUNT** = ``47`` + +Number of navigation mesh polygon edges that could not be merged in the :ref:`NavigationServer2D`. The edges still may be connected by edge proximity or with links. + +.. _class_Performance_constant_NAVIGATION_2D_OBSTACLE_COUNT: + +.. rst-class:: classref-enumeration-constant + +:ref:`Monitor` **NAVIGATION_2D_OBSTACLE_COUNT** = ``48`` + +Number of active navigation obstacles in the :ref:`NavigationServer2D`. + +.. _class_Performance_constant_NAVIGATION_3D_ACTIVE_MAPS: + +.. rst-class:: classref-enumeration-constant + +:ref:`Monitor` **NAVIGATION_3D_ACTIVE_MAPS** = ``49`` + +Number of active navigation maps in the :ref:`NavigationServer3D`. This also includes the two empty default navigation maps created by World3D. + +.. _class_Performance_constant_NAVIGATION_3D_REGION_COUNT: + +.. rst-class:: classref-enumeration-constant + +:ref:`Monitor` **NAVIGATION_3D_REGION_COUNT** = ``50`` + +Number of active navigation regions in the :ref:`NavigationServer3D`. + +.. _class_Performance_constant_NAVIGATION_3D_AGENT_COUNT: + +.. rst-class:: classref-enumeration-constant + +:ref:`Monitor` **NAVIGATION_3D_AGENT_COUNT** = ``51`` + +Number of active navigation agents processing avoidance in the :ref:`NavigationServer3D`. + +.. _class_Performance_constant_NAVIGATION_3D_LINK_COUNT: + +.. rst-class:: classref-enumeration-constant + +:ref:`Monitor` **NAVIGATION_3D_LINK_COUNT** = ``52`` + +Number of active navigation links in the :ref:`NavigationServer3D`. + +.. _class_Performance_constant_NAVIGATION_3D_POLYGON_COUNT: + +.. rst-class:: classref-enumeration-constant + +:ref:`Monitor` **NAVIGATION_3D_POLYGON_COUNT** = ``53`` + +Number of navigation mesh polygons in the :ref:`NavigationServer3D`. + +.. _class_Performance_constant_NAVIGATION_3D_EDGE_COUNT: + +.. rst-class:: classref-enumeration-constant + +:ref:`Monitor` **NAVIGATION_3D_EDGE_COUNT** = ``54`` + +Number of navigation mesh polygon edges in the :ref:`NavigationServer3D`. + +.. _class_Performance_constant_NAVIGATION_3D_EDGE_MERGE_COUNT: + +.. rst-class:: classref-enumeration-constant + +:ref:`Monitor` **NAVIGATION_3D_EDGE_MERGE_COUNT** = ``55`` + +Number of navigation mesh polygon edges that were merged due to edge key overlap in the :ref:`NavigationServer3D`. + +.. _class_Performance_constant_NAVIGATION_3D_EDGE_CONNECTION_COUNT: + +.. rst-class:: classref-enumeration-constant + +:ref:`Monitor` **NAVIGATION_3D_EDGE_CONNECTION_COUNT** = ``56`` + +Number of polygon edges that are considered connected by edge proximity :ref:`NavigationServer3D`. + +.. _class_Performance_constant_NAVIGATION_3D_EDGE_FREE_COUNT: + +.. rst-class:: classref-enumeration-constant + +:ref:`Monitor` **NAVIGATION_3D_EDGE_FREE_COUNT** = ``57`` + +Number of navigation mesh polygon edges that could not be merged in the :ref:`NavigationServer3D`. The edges still may be connected by edge proximity or with links. + +.. _class_Performance_constant_NAVIGATION_3D_OBSTACLE_COUNT: + +.. rst-class:: classref-enumeration-constant + +:ref:`Monitor` **NAVIGATION_3D_OBSTACLE_COUNT** = ``58`` + +Number of active navigation obstacles in the :ref:`NavigationServer3D`. + .. _class_Performance_constant_MONITOR_MAX: .. rst-class:: classref-enumeration-constant -:ref:`Monitor` **MONITOR_MAX** = ``39`` +:ref:`Monitor` **MONITOR_MAX** = ``59`` Represents the size of the :ref:`Monitor` enum. @@ -412,21 +572,21 @@ Adds a custom monitor with the name ``id``. You can specify the category of the func _ready(): var monitor_value = Callable(self, "get_monitor_value") - + # Adds monitor with name "MyName" to category "MyCategory". Performance.add_custom_monitor("MyCategory/MyMonitor", monitor_value) - + # Adds monitor with name "MyName" to category "Custom". # Note: "MyCategory/MyMonitor" and "MyMonitor" have same name but different IDs, so the code is valid. Performance.add_custom_monitor("MyMonitor", monitor_value) - + # Adds monitor with name "MyName" to category "Custom". # Note: "MyMonitor" and "Custom/MyMonitor" have same name and same category but different IDs, so the code is valid. Performance.add_custom_monitor("Custom/MyMonitor", monitor_value) - + # Adds monitor with name "MyCategoryOne/MyCategoryTwo/MyMonitor" to category "Custom". Performance.add_custom_monitor("MyCategoryOne/MyCategoryTwo/MyMonitor", monitor_value) - + func get_monitor_value(): return randi() % 25 @@ -435,21 +595,21 @@ Adds a custom monitor with the name ``id``. You can specify the category of the public override void _Ready() { var monitorValue = new Callable(this, MethodName.GetMonitorValue); - + // Adds monitor with name "MyName" to category "MyCategory". Performance.AddCustomMonitor("MyCategory/MyMonitor", monitorValue); // Adds monitor with name "MyName" to category "Custom". // Note: "MyCategory/MyMonitor" and "MyMonitor" have same name but different ids so the code is valid. Performance.AddCustomMonitor("MyMonitor", monitorValue); - + // Adds monitor with name "MyName" to category "Custom". // Note: "MyMonitor" and "Custom/MyMonitor" have same name and same category but different ids so the code is valid. Performance.AddCustomMonitor("Custom/MyMonitor", monitorValue); - + // Adds monitor with name "MyCategoryOne/MyCategoryTwo/MyMonitor" to category "Custom". Performance.AddCustomMonitor("MyCategoryOne/MyCategoryTwo/MyMonitor", monitorValue); } - + public int GetMonitorValue() { return GD.Randi() % 25; @@ -549,6 +709,7 @@ Returns ``true`` if custom monitor with the given ``id`` is present, ``false`` o Removes the custom monitor with given ``id``. Prints an error if the given ``id`` is already absent. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_physicalbone2d.rst b/classes/class_physicalbone2d.rst index 9f663ff57..220e20da2 100644 --- a/classes/class_physicalbone2d.rst +++ b/classes/class_physicalbone2d.rst @@ -184,6 +184,7 @@ Returns the first :ref:`Joint2D` child node, if one exists. This Returns a boolean that indicates whether the **PhysicalBone2D** is running and simulating using the Godot 2D physics engine. When ``true``, the PhysicalBone2D node is using physics. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_physicalbone3d.rst b/classes/class_physicalbone3d.rst index 85deac471..3c59b9248 100644 --- a/classes/class_physicalbone3d.rst +++ b/classes/class_physicalbone3d.rst @@ -218,7 +218,7 @@ See :ref:`ProjectSettings.physics/3d/default_angular_damp`\ ) - :ref:`DampMode` **get_angular_damp_mode**\ (\ ) -Defines how :ref:`angular_damp` is applied. See :ref:`DampMode` for possible values. +Defines how :ref:`angular_damp` is applied. .. rst-class:: classref-item-separator @@ -392,7 +392,7 @@ Sets the joint's rotation in radians. - |void| **set_joint_type**\ (\ value\: :ref:`JointType`\ ) - :ref:`JointType` **get_joint_type**\ (\ ) -Sets the joint type. See :ref:`JointType` for possible values. +Sets the joint type. .. rst-class:: classref-item-separator @@ -428,7 +428,7 @@ See :ref:`ProjectSettings.physics/3d/default_linear_damp`\ ) - :ref:`DampMode` **get_linear_damp_mode**\ (\ ) -Defines how :ref:`linear_damp` is applied. See :ref:`DampMode` for possible values. +Defines how :ref:`linear_damp` is applied. .. rst-class:: classref-item-separator @@ -550,6 +550,7 @@ Returns ``true`` if the PhysicsBone3D is allowed to simulate physics. Returns ``true`` if the PhysicsBone3D is currently simulating physics. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_physicalbonesimulator3d.rst b/classes/class_physicalbonesimulator3d.rst index 33817f8a2..3532bbbfa 100644 --- a/classes/class_physicalbonesimulator3d.rst +++ b/classes/class_physicalbonesimulator3d.rst @@ -113,6 +113,7 @@ Optionally, a list of bone names can be passed-in, allowing only the passed-in b Tells the :ref:`PhysicalBone3D` nodes in the Skeleton to stop simulating. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_physicalskymaterial.rst b/classes/class_physicalskymaterial.rst index c75928f6b..7925bb797 100644 --- a/classes/class_physicalskymaterial.rst +++ b/classes/class_physicalskymaterial.rst @@ -248,6 +248,7 @@ Sets the thickness of the atmosphere. High turbidity creates a foggy-looking atm If ``true``, enables debanding. Debanding adds a small amount of noise which helps reduce banding that appears from the smooth changes in color in the sky. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_physicsbody2d.rst b/classes/class_physicsbody2d.rst index 7c8797e87..aced353e4 100644 --- a/classes/class_physicsbody2d.rst +++ b/classes/class_physicsbody2d.rst @@ -30,6 +30,8 @@ Tutorials - :doc:`Physics introduction <../tutorials/physics/physics_introduction>` +- :doc:`Troubleshooting physics issues <../tutorials/physics/troubleshooting_physics_issues>` + .. rst-class:: classref-reftable-group Properties @@ -158,6 +160,7 @@ Virtually sets the node's position, scale and rotation to that of the given :ref If ``recovery_as_collision`` is ``true``, any depenetration from the recovery phase is also reported as a collision; this is useful for checking whether the body would *touch* any other bodies. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_physicsbody3d.rst b/classes/class_physicsbody3d.rst index 4765e206f..55a162d36 100644 --- a/classes/class_physicsbody3d.rst +++ b/classes/class_physicsbody3d.rst @@ -32,6 +32,8 @@ Tutorials - :doc:`Physics introduction <../tutorials/physics/physics_introduction>` +- :doc:`Troubleshooting physics issues <../tutorials/physics/troubleshooting_physics_issues>` + .. rst-class:: classref-reftable-group Properties @@ -309,6 +311,7 @@ If ``recovery_as_collision`` is ``true``, any depenetration from the recovery ph \ ``max_collisions`` allows to retrieve more than one collision result. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_physicsdirectbodystate2d.rst b/classes/class_physicsdirectbodystate2d.rst index 9d52d96d2..faf67e050 100644 --- a/classes/class_physicsdirectbodystate2d.rst +++ b/classes/class_physicsdirectbodystate2d.rst @@ -47,6 +47,10 @@ Properties +---------------------------------------+-------------------------------------------------------------------------------------------+ | :ref:`Vector2` | :ref:`center_of_mass_local` | +---------------------------------------+-------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`collision_layer` | + +---------------------------------------+-------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`collision_mask` | + +---------------------------------------+-------------------------------------------------------------------------------------------+ | :ref:`float` | :ref:`inverse_inertia` | +---------------------------------------+-------------------------------------------------------------------------------------------+ | :ref:`float` | :ref:`inverse_mass` | @@ -190,6 +194,40 @@ The body's center of mass position in the body's local coordinate system. ---- +.. _class_PhysicsDirectBodyState2D_property_collision_layer: + +.. rst-class:: classref-property + +:ref:`int` **collision_layer** :ref:`🔗` + +.. rst-class:: classref-property-setget + +- |void| **set_collision_layer**\ (\ value\: :ref:`int`\ ) +- :ref:`int` **get_collision_layer**\ (\ ) + +The body's collision layer. + +.. rst-class:: classref-item-separator + +---- + +.. _class_PhysicsDirectBodyState2D_property_collision_mask: + +.. rst-class:: classref-property + +:ref:`int` **collision_mask** :ref:`🔗` + +.. rst-class:: classref-property-setget + +- |void| **set_collision_mask**\ (\ value\: :ref:`int`\ ) +- :ref:`int` **get_collision_mask**\ (\ ) + +The body's collision mask. + +.. rst-class:: classref-item-separator + +---- + .. _class_PhysicsDirectBodyState2D_property_inverse_inertia: .. rst-class:: classref-property @@ -707,6 +745,7 @@ Sets the body's total constant rotational forces applied during each physics upd See :ref:`add_constant_torque()`. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_physicsdirectbodystate2dextension.rst b/classes/class_physicsdirectbodystate2dextension.rst index 771b9c0cb..9013caa2e 100644 --- a/classes/class_physicsdirectbodystate2dextension.rst +++ b/classes/class_physicsdirectbodystate2dextension.rst @@ -31,95 +31,103 @@ Methods .. table:: :widths: auto - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_add_constant_central_force`\ (\ force\: :ref:`Vector2`\ ) |virtual| | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_add_constant_force`\ (\ force\: :ref:`Vector2`, position\: :ref:`Vector2`\ ) |virtual| | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_add_constant_torque`\ (\ torque\: :ref:`float`\ ) |virtual| | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_apply_central_force`\ (\ force\: :ref:`Vector2`\ ) |virtual| | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_apply_central_impulse`\ (\ impulse\: :ref:`Vector2`\ ) |virtual| | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_apply_force`\ (\ force\: :ref:`Vector2`, position\: :ref:`Vector2`\ ) |virtual| | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_apply_impulse`\ (\ impulse\: :ref:`Vector2`, position\: :ref:`Vector2`\ ) |virtual| | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_apply_torque`\ (\ torque\: :ref:`float`\ ) |virtual| | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_apply_torque_impulse`\ (\ impulse\: :ref:`float`\ ) |virtual| | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`float` | :ref:`_get_angular_velocity`\ (\ ) |virtual| |const| | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Vector2` | :ref:`_get_center_of_mass`\ (\ ) |virtual| |const| | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Vector2` | :ref:`_get_center_of_mass_local`\ (\ ) |virtual| |const| | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Vector2` | :ref:`_get_constant_force`\ (\ ) |virtual| |const| | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`float` | :ref:`_get_constant_torque`\ (\ ) |virtual| |const| | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`RID` | :ref:`_get_contact_collider`\ (\ contact_idx\: :ref:`int`\ ) |virtual| |const| | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`_get_contact_collider_id`\ (\ contact_idx\: :ref:`int`\ ) |virtual| |const| | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Object` | :ref:`_get_contact_collider_object`\ (\ contact_idx\: :ref:`int`\ ) |virtual| |const| | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Vector2` | :ref:`_get_contact_collider_position`\ (\ contact_idx\: :ref:`int`\ ) |virtual| |const| | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`_get_contact_collider_shape`\ (\ contact_idx\: :ref:`int`\ ) |virtual| |const| | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Vector2` | :ref:`_get_contact_collider_velocity_at_position`\ (\ contact_idx\: :ref:`int`\ ) |virtual| |const| | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`_get_contact_count`\ (\ ) |virtual| |const| | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Vector2` | :ref:`_get_contact_impulse`\ (\ contact_idx\: :ref:`int`\ ) |virtual| |const| | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Vector2` | :ref:`_get_contact_local_normal`\ (\ contact_idx\: :ref:`int`\ ) |virtual| |const| | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Vector2` | :ref:`_get_contact_local_position`\ (\ contact_idx\: :ref:`int`\ ) |virtual| |const| | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`_get_contact_local_shape`\ (\ contact_idx\: :ref:`int`\ ) |virtual| |const| | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Vector2` | :ref:`_get_contact_local_velocity_at_position`\ (\ contact_idx\: :ref:`int`\ ) |virtual| |const| | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`float` | :ref:`_get_inverse_inertia`\ (\ ) |virtual| |const| | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`float` | :ref:`_get_inverse_mass`\ (\ ) |virtual| |const| | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Vector2` | :ref:`_get_linear_velocity`\ (\ ) |virtual| |const| | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`PhysicsDirectSpaceState2D` | :ref:`_get_space_state`\ (\ ) |virtual| | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`float` | :ref:`_get_step`\ (\ ) |virtual| |const| | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`float` | :ref:`_get_total_angular_damp`\ (\ ) |virtual| |const| | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Vector2` | :ref:`_get_total_gravity`\ (\ ) |virtual| |const| | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`float` | :ref:`_get_total_linear_damp`\ (\ ) |virtual| |const| | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Transform2D` | :ref:`_get_transform`\ (\ ) |virtual| |const| | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Vector2` | :ref:`_get_velocity_at_local_position`\ (\ local_position\: :ref:`Vector2`\ ) |virtual| |const| | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_integrate_forces`\ (\ ) |virtual| | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`_is_sleeping`\ (\ ) |virtual| |const| | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_set_angular_velocity`\ (\ velocity\: :ref:`float`\ ) |virtual| | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_set_constant_force`\ (\ force\: :ref:`Vector2`\ ) |virtual| | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_set_constant_torque`\ (\ torque\: :ref:`float`\ ) |virtual| | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_set_linear_velocity`\ (\ velocity\: :ref:`Vector2`\ ) |virtual| | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_set_sleep_state`\ (\ enabled\: :ref:`bool`\ ) |virtual| | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_set_transform`\ (\ transform\: :ref:`Transform2D`\ ) |virtual| | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + +-------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_add_constant_central_force`\ (\ force\: :ref:`Vector2`\ ) |virtual| |required| | + +-------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_add_constant_force`\ (\ force\: :ref:`Vector2`, position\: :ref:`Vector2`\ ) |virtual| |required| | + +-------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_add_constant_torque`\ (\ torque\: :ref:`float`\ ) |virtual| |required| | + +-------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_apply_central_force`\ (\ force\: :ref:`Vector2`\ ) |virtual| |required| | + +-------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_apply_central_impulse`\ (\ impulse\: :ref:`Vector2`\ ) |virtual| |required| | + +-------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_apply_force`\ (\ force\: :ref:`Vector2`, position\: :ref:`Vector2`\ ) |virtual| |required| | + +-------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_apply_impulse`\ (\ impulse\: :ref:`Vector2`, position\: :ref:`Vector2`\ ) |virtual| |required| | + +-------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_apply_torque`\ (\ torque\: :ref:`float`\ ) |virtual| |required| | + +-------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_apply_torque_impulse`\ (\ impulse\: :ref:`float`\ ) |virtual| |required| | + +-------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`_get_angular_velocity`\ (\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Vector2` | :ref:`_get_center_of_mass`\ (\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Vector2` | :ref:`_get_center_of_mass_local`\ (\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`_get_collision_layer`\ (\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`_get_collision_mask`\ (\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Vector2` | :ref:`_get_constant_force`\ (\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`_get_constant_torque`\ (\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`RID` | :ref:`_get_contact_collider`\ (\ contact_idx\: :ref:`int`\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`_get_contact_collider_id`\ (\ contact_idx\: :ref:`int`\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Object` | :ref:`_get_contact_collider_object`\ (\ contact_idx\: :ref:`int`\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Vector2` | :ref:`_get_contact_collider_position`\ (\ contact_idx\: :ref:`int`\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`_get_contact_collider_shape`\ (\ contact_idx\: :ref:`int`\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Vector2` | :ref:`_get_contact_collider_velocity_at_position`\ (\ contact_idx\: :ref:`int`\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`_get_contact_count`\ (\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Vector2` | :ref:`_get_contact_impulse`\ (\ contact_idx\: :ref:`int`\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Vector2` | :ref:`_get_contact_local_normal`\ (\ contact_idx\: :ref:`int`\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Vector2` | :ref:`_get_contact_local_position`\ (\ contact_idx\: :ref:`int`\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`_get_contact_local_shape`\ (\ contact_idx\: :ref:`int`\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Vector2` | :ref:`_get_contact_local_velocity_at_position`\ (\ contact_idx\: :ref:`int`\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`_get_inverse_inertia`\ (\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`_get_inverse_mass`\ (\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Vector2` | :ref:`_get_linear_velocity`\ (\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`PhysicsDirectSpaceState2D` | :ref:`_get_space_state`\ (\ ) |virtual| |required| | + +-------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`_get_step`\ (\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`_get_total_angular_damp`\ (\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Vector2` | :ref:`_get_total_gravity`\ (\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`_get_total_linear_damp`\ (\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Transform2D` | :ref:`_get_transform`\ (\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Vector2` | :ref:`_get_velocity_at_local_position`\ (\ local_position\: :ref:`Vector2`\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_integrate_forces`\ (\ ) |virtual| |required| | + +-------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`_is_sleeping`\ (\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_set_angular_velocity`\ (\ velocity\: :ref:`float`\ ) |virtual| |required| | + +-------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_set_collision_layer`\ (\ layer\: :ref:`int`\ ) |virtual| |required| | + +-------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_set_collision_mask`\ (\ mask\: :ref:`int`\ ) |virtual| |required| | + +-------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_set_constant_force`\ (\ force\: :ref:`Vector2`\ ) |virtual| |required| | + +-------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_set_constant_torque`\ (\ torque\: :ref:`float`\ ) |virtual| |required| | + +-------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_set_linear_velocity`\ (\ velocity\: :ref:`Vector2`\ ) |virtual| |required| | + +-------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_set_sleep_state`\ (\ enabled\: :ref:`bool`\ ) |virtual| |required| | + +-------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_set_transform`\ (\ transform\: :ref:`Transform2D`\ ) |virtual| |required| | + +-------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ .. rst-class:: classref-section-separator @@ -134,7 +142,7 @@ Method Descriptions .. rst-class:: classref-method -|void| **_add_constant_central_force**\ (\ force\: :ref:`Vector2`\ ) |virtual| :ref:`🔗` +|void| **_add_constant_central_force**\ (\ force\: :ref:`Vector2`\ ) |virtual| |required| :ref:`🔗` Overridable version of :ref:`PhysicsDirectBodyState2D.add_constant_central_force()`. @@ -146,7 +154,7 @@ Overridable version of :ref:`PhysicsDirectBodyState2D.add_constant_central_force .. rst-class:: classref-method -|void| **_add_constant_force**\ (\ force\: :ref:`Vector2`, position\: :ref:`Vector2`\ ) |virtual| :ref:`🔗` +|void| **_add_constant_force**\ (\ force\: :ref:`Vector2`, position\: :ref:`Vector2`\ ) |virtual| |required| :ref:`🔗` Overridable version of :ref:`PhysicsDirectBodyState2D.add_constant_force()`. @@ -158,7 +166,7 @@ Overridable version of :ref:`PhysicsDirectBodyState2D.add_constant_force()`\ ) |virtual| :ref:`🔗` +|void| **_add_constant_torque**\ (\ torque\: :ref:`float`\ ) |virtual| |required| :ref:`🔗` Overridable version of :ref:`PhysicsDirectBodyState2D.add_constant_torque()`. @@ -170,7 +178,7 @@ Overridable version of :ref:`PhysicsDirectBodyState2D.add_constant_torque()`\ ) |virtual| :ref:`🔗` +|void| **_apply_central_force**\ (\ force\: :ref:`Vector2`\ ) |virtual| |required| :ref:`🔗` Overridable version of :ref:`PhysicsDirectBodyState2D.apply_central_force()`. @@ -182,7 +190,7 @@ Overridable version of :ref:`PhysicsDirectBodyState2D.apply_central_force()`\ ) |virtual| :ref:`🔗` +|void| **_apply_central_impulse**\ (\ impulse\: :ref:`Vector2`\ ) |virtual| |required| :ref:`🔗` Overridable version of :ref:`PhysicsDirectBodyState2D.apply_central_impulse()`. @@ -194,7 +202,7 @@ Overridable version of :ref:`PhysicsDirectBodyState2D.apply_central_impulse()`, position\: :ref:`Vector2`\ ) |virtual| :ref:`🔗` +|void| **_apply_force**\ (\ force\: :ref:`Vector2`, position\: :ref:`Vector2`\ ) |virtual| |required| :ref:`🔗` Overridable version of :ref:`PhysicsDirectBodyState2D.apply_force()`. @@ -206,7 +214,7 @@ Overridable version of :ref:`PhysicsDirectBodyState2D.apply_force()`, position\: :ref:`Vector2`\ ) |virtual| :ref:`🔗` +|void| **_apply_impulse**\ (\ impulse\: :ref:`Vector2`, position\: :ref:`Vector2`\ ) |virtual| |required| :ref:`🔗` Overridable version of :ref:`PhysicsDirectBodyState2D.apply_impulse()`. @@ -218,7 +226,7 @@ Overridable version of :ref:`PhysicsDirectBodyState2D.apply_impulse()`\ ) |virtual| :ref:`🔗` +|void| **_apply_torque**\ (\ torque\: :ref:`float`\ ) |virtual| |required| :ref:`🔗` Overridable version of :ref:`PhysicsDirectBodyState2D.apply_torque()`. @@ -230,7 +238,7 @@ Overridable version of :ref:`PhysicsDirectBodyState2D.apply_torque()`\ ) |virtual| :ref:`🔗` +|void| **_apply_torque_impulse**\ (\ impulse\: :ref:`float`\ ) |virtual| |required| :ref:`🔗` Overridable version of :ref:`PhysicsDirectBodyState2D.apply_torque_impulse()`. @@ -242,7 +250,7 @@ Overridable version of :ref:`PhysicsDirectBodyState2D.apply_torque_impulse()` **_get_angular_velocity**\ (\ ) |virtual| |const| :ref:`🔗` +:ref:`float` **_get_angular_velocity**\ (\ ) |virtual| |required| |const| :ref:`🔗` Implement to override the behavior of :ref:`PhysicsDirectBodyState2D.angular_velocity` and its respective getter. @@ -254,7 +262,7 @@ Implement to override the behavior of :ref:`PhysicsDirectBodyState2D.angular_vel .. rst-class:: classref-method -:ref:`Vector2` **_get_center_of_mass**\ (\ ) |virtual| |const| :ref:`🔗` +:ref:`Vector2` **_get_center_of_mass**\ (\ ) |virtual| |required| |const| :ref:`🔗` Implement to override the behavior of :ref:`PhysicsDirectBodyState2D.center_of_mass` and its respective getter. @@ -266,7 +274,7 @@ Implement to override the behavior of :ref:`PhysicsDirectBodyState2D.center_of_m .. rst-class:: classref-method -:ref:`Vector2` **_get_center_of_mass_local**\ (\ ) |virtual| |const| :ref:`🔗` +:ref:`Vector2` **_get_center_of_mass_local**\ (\ ) |virtual| |required| |const| :ref:`🔗` Implement to override the behavior of :ref:`PhysicsDirectBodyState2D.center_of_mass_local` and its respective getter. @@ -274,11 +282,39 @@ Implement to override the behavior of :ref:`PhysicsDirectBodyState2D.center_of_m ---- +.. _class_PhysicsDirectBodyState2DExtension_private_method__get_collision_layer: + +.. rst-class:: classref-method + +:ref:`int` **_get_collision_layer**\ (\ ) |virtual| |required| |const| :ref:`🔗` + +.. container:: contribute + + There is currently no description for this method. Please help us by `contributing one `__! + +.. rst-class:: classref-item-separator + +---- + +.. _class_PhysicsDirectBodyState2DExtension_private_method__get_collision_mask: + +.. rst-class:: classref-method + +:ref:`int` **_get_collision_mask**\ (\ ) |virtual| |required| |const| :ref:`🔗` + +.. container:: contribute + + There is currently no description for this method. Please help us by `contributing one `__! + +.. rst-class:: classref-item-separator + +---- + .. _class_PhysicsDirectBodyState2DExtension_private_method__get_constant_force: .. rst-class:: classref-method -:ref:`Vector2` **_get_constant_force**\ (\ ) |virtual| |const| :ref:`🔗` +:ref:`Vector2` **_get_constant_force**\ (\ ) |virtual| |required| |const| :ref:`🔗` Overridable version of :ref:`PhysicsDirectBodyState2D.get_constant_force()`. @@ -290,7 +326,7 @@ Overridable version of :ref:`PhysicsDirectBodyState2D.get_constant_force()` **_get_constant_torque**\ (\ ) |virtual| |const| :ref:`🔗` +:ref:`float` **_get_constant_torque**\ (\ ) |virtual| |required| |const| :ref:`🔗` Overridable version of :ref:`PhysicsDirectBodyState2D.get_constant_torque()`. @@ -302,7 +338,7 @@ Overridable version of :ref:`PhysicsDirectBodyState2D.get_constant_torque()` **_get_contact_collider**\ (\ contact_idx\: :ref:`int`\ ) |virtual| |const| :ref:`🔗` +:ref:`RID` **_get_contact_collider**\ (\ contact_idx\: :ref:`int`\ ) |virtual| |required| |const| :ref:`🔗` Overridable version of :ref:`PhysicsDirectBodyState2D.get_contact_collider()`. @@ -314,7 +350,7 @@ Overridable version of :ref:`PhysicsDirectBodyState2D.get_contact_collider()` **_get_contact_collider_id**\ (\ contact_idx\: :ref:`int`\ ) |virtual| |const| :ref:`🔗` +:ref:`int` **_get_contact_collider_id**\ (\ contact_idx\: :ref:`int`\ ) |virtual| |required| |const| :ref:`🔗` Overridable version of :ref:`PhysicsDirectBodyState2D.get_contact_collider_id()`. @@ -326,7 +362,7 @@ Overridable version of :ref:`PhysicsDirectBodyState2D.get_contact_collider_id()< .. rst-class:: classref-method -:ref:`Object` **_get_contact_collider_object**\ (\ contact_idx\: :ref:`int`\ ) |virtual| |const| :ref:`🔗` +:ref:`Object` **_get_contact_collider_object**\ (\ contact_idx\: :ref:`int`\ ) |virtual| |required| |const| :ref:`🔗` Overridable version of :ref:`PhysicsDirectBodyState2D.get_contact_collider_object()`. @@ -338,7 +374,7 @@ Overridable version of :ref:`PhysicsDirectBodyState2D.get_contact_collider_objec .. rst-class:: classref-method -:ref:`Vector2` **_get_contact_collider_position**\ (\ contact_idx\: :ref:`int`\ ) |virtual| |const| :ref:`🔗` +:ref:`Vector2` **_get_contact_collider_position**\ (\ contact_idx\: :ref:`int`\ ) |virtual| |required| |const| :ref:`🔗` Overridable version of :ref:`PhysicsDirectBodyState2D.get_contact_collider_position()`. @@ -350,7 +386,7 @@ Overridable version of :ref:`PhysicsDirectBodyState2D.get_contact_collider_posit .. rst-class:: classref-method -:ref:`int` **_get_contact_collider_shape**\ (\ contact_idx\: :ref:`int`\ ) |virtual| |const| :ref:`🔗` +:ref:`int` **_get_contact_collider_shape**\ (\ contact_idx\: :ref:`int`\ ) |virtual| |required| |const| :ref:`🔗` Overridable version of :ref:`PhysicsDirectBodyState2D.get_contact_collider_shape()`. @@ -362,7 +398,7 @@ Overridable version of :ref:`PhysicsDirectBodyState2D.get_contact_collider_shape .. rst-class:: classref-method -:ref:`Vector2` **_get_contact_collider_velocity_at_position**\ (\ contact_idx\: :ref:`int`\ ) |virtual| |const| :ref:`🔗` +:ref:`Vector2` **_get_contact_collider_velocity_at_position**\ (\ contact_idx\: :ref:`int`\ ) |virtual| |required| |const| :ref:`🔗` Overridable version of :ref:`PhysicsDirectBodyState2D.get_contact_collider_velocity_at_position()`. @@ -374,7 +410,7 @@ Overridable version of :ref:`PhysicsDirectBodyState2D.get_contact_collider_veloc .. rst-class:: classref-method -:ref:`int` **_get_contact_count**\ (\ ) |virtual| |const| :ref:`🔗` +:ref:`int` **_get_contact_count**\ (\ ) |virtual| |required| |const| :ref:`🔗` Overridable version of :ref:`PhysicsDirectBodyState2D.get_contact_count()`. @@ -386,7 +422,7 @@ Overridable version of :ref:`PhysicsDirectBodyState2D.get_contact_count()` **_get_contact_impulse**\ (\ contact_idx\: :ref:`int`\ ) |virtual| |const| :ref:`🔗` +:ref:`Vector2` **_get_contact_impulse**\ (\ contact_idx\: :ref:`int`\ ) |virtual| |required| |const| :ref:`🔗` Overridable version of :ref:`PhysicsDirectBodyState2D.get_contact_impulse()`. @@ -398,7 +434,7 @@ Overridable version of :ref:`PhysicsDirectBodyState2D.get_contact_impulse()` **_get_contact_local_normal**\ (\ contact_idx\: :ref:`int`\ ) |virtual| |const| :ref:`🔗` +:ref:`Vector2` **_get_contact_local_normal**\ (\ contact_idx\: :ref:`int`\ ) |virtual| |required| |const| :ref:`🔗` Overridable version of :ref:`PhysicsDirectBodyState2D.get_contact_local_normal()`. @@ -410,7 +446,7 @@ Overridable version of :ref:`PhysicsDirectBodyState2D.get_contact_local_normal() .. rst-class:: classref-method -:ref:`Vector2` **_get_contact_local_position**\ (\ contact_idx\: :ref:`int`\ ) |virtual| |const| :ref:`🔗` +:ref:`Vector2` **_get_contact_local_position**\ (\ contact_idx\: :ref:`int`\ ) |virtual| |required| |const| :ref:`🔗` Overridable version of :ref:`PhysicsDirectBodyState2D.get_contact_local_position()`. @@ -422,7 +458,7 @@ Overridable version of :ref:`PhysicsDirectBodyState2D.get_contact_local_position .. rst-class:: classref-method -:ref:`int` **_get_contact_local_shape**\ (\ contact_idx\: :ref:`int`\ ) |virtual| |const| :ref:`🔗` +:ref:`int` **_get_contact_local_shape**\ (\ contact_idx\: :ref:`int`\ ) |virtual| |required| |const| :ref:`🔗` Overridable version of :ref:`PhysicsDirectBodyState2D.get_contact_local_shape()`. @@ -434,7 +470,7 @@ Overridable version of :ref:`PhysicsDirectBodyState2D.get_contact_local_shape()< .. rst-class:: classref-method -:ref:`Vector2` **_get_contact_local_velocity_at_position**\ (\ contact_idx\: :ref:`int`\ ) |virtual| |const| :ref:`🔗` +:ref:`Vector2` **_get_contact_local_velocity_at_position**\ (\ contact_idx\: :ref:`int`\ ) |virtual| |required| |const| :ref:`🔗` Overridable version of :ref:`PhysicsDirectBodyState2D.get_contact_local_velocity_at_position()`. @@ -446,7 +482,7 @@ Overridable version of :ref:`PhysicsDirectBodyState2D.get_contact_local_velocity .. rst-class:: classref-method -:ref:`float` **_get_inverse_inertia**\ (\ ) |virtual| |const| :ref:`🔗` +:ref:`float` **_get_inverse_inertia**\ (\ ) |virtual| |required| |const| :ref:`🔗` Implement to override the behavior of :ref:`PhysicsDirectBodyState2D.inverse_inertia` and its respective getter. @@ -458,7 +494,7 @@ Implement to override the behavior of :ref:`PhysicsDirectBodyState2D.inverse_ine .. rst-class:: classref-method -:ref:`float` **_get_inverse_mass**\ (\ ) |virtual| |const| :ref:`🔗` +:ref:`float` **_get_inverse_mass**\ (\ ) |virtual| |required| |const| :ref:`🔗` Implement to override the behavior of :ref:`PhysicsDirectBodyState2D.inverse_mass` and its respective getter. @@ -470,7 +506,7 @@ Implement to override the behavior of :ref:`PhysicsDirectBodyState2D.inverse_mas .. rst-class:: classref-method -:ref:`Vector2` **_get_linear_velocity**\ (\ ) |virtual| |const| :ref:`🔗` +:ref:`Vector2` **_get_linear_velocity**\ (\ ) |virtual| |required| |const| :ref:`🔗` Implement to override the behavior of :ref:`PhysicsDirectBodyState2D.linear_velocity` and its respective getter. @@ -482,7 +518,7 @@ Implement to override the behavior of :ref:`PhysicsDirectBodyState2D.linear_velo .. rst-class:: classref-method -:ref:`PhysicsDirectSpaceState2D` **_get_space_state**\ (\ ) |virtual| :ref:`🔗` +:ref:`PhysicsDirectSpaceState2D` **_get_space_state**\ (\ ) |virtual| |required| :ref:`🔗` Overridable version of :ref:`PhysicsDirectBodyState2D.get_space_state()`. @@ -494,7 +530,7 @@ Overridable version of :ref:`PhysicsDirectBodyState2D.get_space_state()` **_get_step**\ (\ ) |virtual| |const| :ref:`🔗` +:ref:`float` **_get_step**\ (\ ) |virtual| |required| |const| :ref:`🔗` Implement to override the behavior of :ref:`PhysicsDirectBodyState2D.step` and its respective getter. @@ -506,7 +542,7 @@ Implement to override the behavior of :ref:`PhysicsDirectBodyState2D.step` **_get_total_angular_damp**\ (\ ) |virtual| |const| :ref:`🔗` +:ref:`float` **_get_total_angular_damp**\ (\ ) |virtual| |required| |const| :ref:`🔗` Implement to override the behavior of :ref:`PhysicsDirectBodyState2D.total_angular_damp` and its respective getter. @@ -518,7 +554,7 @@ Implement to override the behavior of :ref:`PhysicsDirectBodyState2D.total_angul .. rst-class:: classref-method -:ref:`Vector2` **_get_total_gravity**\ (\ ) |virtual| |const| :ref:`🔗` +:ref:`Vector2` **_get_total_gravity**\ (\ ) |virtual| |required| |const| :ref:`🔗` Implement to override the behavior of :ref:`PhysicsDirectBodyState2D.total_gravity` and its respective getter. @@ -530,7 +566,7 @@ Implement to override the behavior of :ref:`PhysicsDirectBodyState2D.total_gravi .. rst-class:: classref-method -:ref:`float` **_get_total_linear_damp**\ (\ ) |virtual| |const| :ref:`🔗` +:ref:`float` **_get_total_linear_damp**\ (\ ) |virtual| |required| |const| :ref:`🔗` Implement to override the behavior of :ref:`PhysicsDirectBodyState2D.total_linear_damp` and its respective getter. @@ -542,7 +578,7 @@ Implement to override the behavior of :ref:`PhysicsDirectBodyState2D.total_linea .. rst-class:: classref-method -:ref:`Transform2D` **_get_transform**\ (\ ) |virtual| |const| :ref:`🔗` +:ref:`Transform2D` **_get_transform**\ (\ ) |virtual| |required| |const| :ref:`🔗` Implement to override the behavior of :ref:`PhysicsDirectBodyState2D.transform` and its respective getter. @@ -554,7 +590,7 @@ Implement to override the behavior of :ref:`PhysicsDirectBodyState2D.transform` **_get_velocity_at_local_position**\ (\ local_position\: :ref:`Vector2`\ ) |virtual| |const| :ref:`🔗` +:ref:`Vector2` **_get_velocity_at_local_position**\ (\ local_position\: :ref:`Vector2`\ ) |virtual| |required| |const| :ref:`🔗` Overridable version of :ref:`PhysicsDirectBodyState2D.get_velocity_at_local_position()`. @@ -566,7 +602,7 @@ Overridable version of :ref:`PhysicsDirectBodyState2D.get_velocity_at_local_posi .. rst-class:: classref-method -|void| **_integrate_forces**\ (\ ) |virtual| :ref:`🔗` +|void| **_integrate_forces**\ (\ ) |virtual| |required| :ref:`🔗` Overridable version of :ref:`PhysicsDirectBodyState2D.integrate_forces()`. @@ -578,7 +614,7 @@ Overridable version of :ref:`PhysicsDirectBodyState2D.integrate_forces()` **_is_sleeping**\ (\ ) |virtual| |const| :ref:`🔗` +:ref:`bool` **_is_sleeping**\ (\ ) |virtual| |required| |const| :ref:`🔗` Implement to override the behavior of :ref:`PhysicsDirectBodyState2D.sleeping` and its respective getter. @@ -590,7 +626,7 @@ Implement to override the behavior of :ref:`PhysicsDirectBodyState2D.sleeping`\ ) |virtual| :ref:`🔗` +|void| **_set_angular_velocity**\ (\ velocity\: :ref:`float`\ ) |virtual| |required| :ref:`🔗` Implement to override the behavior of :ref:`PhysicsDirectBodyState2D.angular_velocity` and its respective setter. @@ -598,11 +634,39 @@ Implement to override the behavior of :ref:`PhysicsDirectBodyState2D.angular_vel ---- +.. _class_PhysicsDirectBodyState2DExtension_private_method__set_collision_layer: + +.. rst-class:: classref-method + +|void| **_set_collision_layer**\ (\ layer\: :ref:`int`\ ) |virtual| |required| :ref:`🔗` + +.. container:: contribute + + There is currently no description for this method. Please help us by `contributing one `__! + +.. rst-class:: classref-item-separator + +---- + +.. _class_PhysicsDirectBodyState2DExtension_private_method__set_collision_mask: + +.. rst-class:: classref-method + +|void| **_set_collision_mask**\ (\ mask\: :ref:`int`\ ) |virtual| |required| :ref:`🔗` + +.. container:: contribute + + There is currently no description for this method. Please help us by `contributing one `__! + +.. rst-class:: classref-item-separator + +---- + .. _class_PhysicsDirectBodyState2DExtension_private_method__set_constant_force: .. rst-class:: classref-method -|void| **_set_constant_force**\ (\ force\: :ref:`Vector2`\ ) |virtual| :ref:`🔗` +|void| **_set_constant_force**\ (\ force\: :ref:`Vector2`\ ) |virtual| |required| :ref:`🔗` Overridable version of :ref:`PhysicsDirectBodyState2D.set_constant_force()`. @@ -614,7 +678,7 @@ Overridable version of :ref:`PhysicsDirectBodyState2D.set_constant_force()`\ ) |virtual| :ref:`🔗` +|void| **_set_constant_torque**\ (\ torque\: :ref:`float`\ ) |virtual| |required| :ref:`🔗` Overridable version of :ref:`PhysicsDirectBodyState2D.set_constant_torque()`. @@ -626,7 +690,7 @@ Overridable version of :ref:`PhysicsDirectBodyState2D.set_constant_torque()`\ ) |virtual| :ref:`🔗` +|void| **_set_linear_velocity**\ (\ velocity\: :ref:`Vector2`\ ) |virtual| |required| :ref:`🔗` Implement to override the behavior of :ref:`PhysicsDirectBodyState2D.linear_velocity` and its respective setter. @@ -638,7 +702,7 @@ Implement to override the behavior of :ref:`PhysicsDirectBodyState2D.linear_velo .. rst-class:: classref-method -|void| **_set_sleep_state**\ (\ enabled\: :ref:`bool`\ ) |virtual| :ref:`🔗` +|void| **_set_sleep_state**\ (\ enabled\: :ref:`bool`\ ) |virtual| |required| :ref:`🔗` Implement to override the behavior of :ref:`PhysicsDirectBodyState2D.sleeping` and its respective setter. @@ -650,11 +714,12 @@ Implement to override the behavior of :ref:`PhysicsDirectBodyState2D.sleeping`\ ) |virtual| :ref:`🔗` +|void| **_set_transform**\ (\ transform\: :ref:`Transform2D`\ ) |virtual| |required| :ref:`🔗` Implement to override the behavior of :ref:`PhysicsDirectBodyState2D.transform` and its respective setter. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_physicsdirectbodystate3d.rst b/classes/class_physicsdirectbodystate3d.rst index f3c5c75c2..94f1adc9b 100644 --- a/classes/class_physicsdirectbodystate3d.rst +++ b/classes/class_physicsdirectbodystate3d.rst @@ -47,6 +47,10 @@ Properties +---------------------------------------+-----------------------------------------------------------------------------------------------+ | :ref:`Vector3` | :ref:`center_of_mass_local` | +---------------------------------------+-----------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`collision_layer` | + +---------------------------------------+-----------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`collision_mask` | + +---------------------------------------+-----------------------------------------------------------------------------------------------+ | :ref:`Vector3` | :ref:`inverse_inertia` | +---------------------------------------+-----------------------------------------------------------------------------------------------+ | :ref:`Basis` | :ref:`inverse_inertia_tensor` | @@ -194,6 +198,40 @@ The body's center of mass position in the body's local coordinate system. ---- +.. _class_PhysicsDirectBodyState3D_property_collision_layer: + +.. rst-class:: classref-property + +:ref:`int` **collision_layer** :ref:`🔗` + +.. rst-class:: classref-property-setget + +- |void| **set_collision_layer**\ (\ value\: :ref:`int`\ ) +- :ref:`int` **get_collision_layer**\ (\ ) + +The body's collision layer. + +.. rst-class:: classref-item-separator + +---- + +.. _class_PhysicsDirectBodyState3D_property_collision_mask: + +.. rst-class:: classref-property + +:ref:`int` **collision_mask** :ref:`🔗` + +.. rst-class:: classref-property-setget + +- |void| **set_collision_mask**\ (\ value\: :ref:`int`\ ) +- :ref:`int` **get_collision_mask**\ (\ ) + +The body's collision mask. + +.. rst-class:: classref-item-separator + +---- + .. _class_PhysicsDirectBodyState3D_property_inverse_inertia: .. rst-class:: classref-property @@ -271,7 +309,7 @@ The body's linear velocity in units per second. .. container:: contribute - There is currently no description for this property. Please help us by :ref:`contributing one `! + There is currently no description for this property. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -745,6 +783,7 @@ Sets the body's total constant rotational forces applied during each physics upd See :ref:`add_constant_torque()`. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_physicsdirectbodystate3dextension.rst b/classes/class_physicsdirectbodystate3dextension.rst index c2b184ea9..fd7eb85db 100644 --- a/classes/class_physicsdirectbodystate3dextension.rst +++ b/classes/class_physicsdirectbodystate3dextension.rst @@ -31,99 +31,107 @@ Methods .. table:: :widths: auto - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_add_constant_central_force`\ (\ force\: :ref:`Vector3`\ ) |virtual| | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_add_constant_force`\ (\ force\: :ref:`Vector3`, position\: :ref:`Vector3`\ ) |virtual| | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_add_constant_torque`\ (\ torque\: :ref:`Vector3`\ ) |virtual| | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_apply_central_force`\ (\ force\: :ref:`Vector3`\ ) |virtual| | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_apply_central_impulse`\ (\ impulse\: :ref:`Vector3`\ ) |virtual| | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_apply_force`\ (\ force\: :ref:`Vector3`, position\: :ref:`Vector3`\ ) |virtual| | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_apply_impulse`\ (\ impulse\: :ref:`Vector3`, position\: :ref:`Vector3`\ ) |virtual| | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_apply_torque`\ (\ torque\: :ref:`Vector3`\ ) |virtual| | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_apply_torque_impulse`\ (\ impulse\: :ref:`Vector3`\ ) |virtual| | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Vector3` | :ref:`_get_angular_velocity`\ (\ ) |virtual| |const| | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Vector3` | :ref:`_get_center_of_mass`\ (\ ) |virtual| |const| | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Vector3` | :ref:`_get_center_of_mass_local`\ (\ ) |virtual| |const| | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Vector3` | :ref:`_get_constant_force`\ (\ ) |virtual| |const| | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Vector3` | :ref:`_get_constant_torque`\ (\ ) |virtual| |const| | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`RID` | :ref:`_get_contact_collider`\ (\ contact_idx\: :ref:`int`\ ) |virtual| |const| | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`_get_contact_collider_id`\ (\ contact_idx\: :ref:`int`\ ) |virtual| |const| | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Object` | :ref:`_get_contact_collider_object`\ (\ contact_idx\: :ref:`int`\ ) |virtual| |const| | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Vector3` | :ref:`_get_contact_collider_position`\ (\ contact_idx\: :ref:`int`\ ) |virtual| |const| | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`_get_contact_collider_shape`\ (\ contact_idx\: :ref:`int`\ ) |virtual| |const| | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Vector3` | :ref:`_get_contact_collider_velocity_at_position`\ (\ contact_idx\: :ref:`int`\ ) |virtual| |const| | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`_get_contact_count`\ (\ ) |virtual| |const| | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Vector3` | :ref:`_get_contact_impulse`\ (\ contact_idx\: :ref:`int`\ ) |virtual| |const| | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Vector3` | :ref:`_get_contact_local_normal`\ (\ contact_idx\: :ref:`int`\ ) |virtual| |const| | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Vector3` | :ref:`_get_contact_local_position`\ (\ contact_idx\: :ref:`int`\ ) |virtual| |const| | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`_get_contact_local_shape`\ (\ contact_idx\: :ref:`int`\ ) |virtual| |const| | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Vector3` | :ref:`_get_contact_local_velocity_at_position`\ (\ contact_idx\: :ref:`int`\ ) |virtual| |const| | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Vector3` | :ref:`_get_inverse_inertia`\ (\ ) |virtual| |const| | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Basis` | :ref:`_get_inverse_inertia_tensor`\ (\ ) |virtual| |const| | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`float` | :ref:`_get_inverse_mass`\ (\ ) |virtual| |const| | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Vector3` | :ref:`_get_linear_velocity`\ (\ ) |virtual| |const| | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Basis` | :ref:`_get_principal_inertia_axes`\ (\ ) |virtual| |const| | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`PhysicsDirectSpaceState3D` | :ref:`_get_space_state`\ (\ ) |virtual| | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`float` | :ref:`_get_step`\ (\ ) |virtual| |const| | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`float` | :ref:`_get_total_angular_damp`\ (\ ) |virtual| |const| | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Vector3` | :ref:`_get_total_gravity`\ (\ ) |virtual| |const| | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`float` | :ref:`_get_total_linear_damp`\ (\ ) |virtual| |const| | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Transform3D` | :ref:`_get_transform`\ (\ ) |virtual| |const| | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Vector3` | :ref:`_get_velocity_at_local_position`\ (\ local_position\: :ref:`Vector3`\ ) |virtual| |const| | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_integrate_forces`\ (\ ) |virtual| | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`_is_sleeping`\ (\ ) |virtual| |const| | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_set_angular_velocity`\ (\ velocity\: :ref:`Vector3`\ ) |virtual| | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_set_constant_force`\ (\ force\: :ref:`Vector3`\ ) |virtual| | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_set_constant_torque`\ (\ torque\: :ref:`Vector3`\ ) |virtual| | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_set_linear_velocity`\ (\ velocity\: :ref:`Vector3`\ ) |virtual| | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_set_sleep_state`\ (\ enabled\: :ref:`bool`\ ) |virtual| | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_set_transform`\ (\ transform\: :ref:`Transform3D`\ ) |virtual| | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + +-------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_add_constant_central_force`\ (\ force\: :ref:`Vector3`\ ) |virtual| |required| | + +-------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_add_constant_force`\ (\ force\: :ref:`Vector3`, position\: :ref:`Vector3`\ ) |virtual| |required| | + +-------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_add_constant_torque`\ (\ torque\: :ref:`Vector3`\ ) |virtual| |required| | + +-------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_apply_central_force`\ (\ force\: :ref:`Vector3`\ ) |virtual| |required| | + +-------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_apply_central_impulse`\ (\ impulse\: :ref:`Vector3`\ ) |virtual| |required| | + +-------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_apply_force`\ (\ force\: :ref:`Vector3`, position\: :ref:`Vector3`\ ) |virtual| |required| | + +-------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_apply_impulse`\ (\ impulse\: :ref:`Vector3`, position\: :ref:`Vector3`\ ) |virtual| |required| | + +-------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_apply_torque`\ (\ torque\: :ref:`Vector3`\ ) |virtual| |required| | + +-------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_apply_torque_impulse`\ (\ impulse\: :ref:`Vector3`\ ) |virtual| |required| | + +-------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Vector3` | :ref:`_get_angular_velocity`\ (\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Vector3` | :ref:`_get_center_of_mass`\ (\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Vector3` | :ref:`_get_center_of_mass_local`\ (\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`_get_collision_layer`\ (\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`_get_collision_mask`\ (\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Vector3` | :ref:`_get_constant_force`\ (\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Vector3` | :ref:`_get_constant_torque`\ (\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`RID` | :ref:`_get_contact_collider`\ (\ contact_idx\: :ref:`int`\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`_get_contact_collider_id`\ (\ contact_idx\: :ref:`int`\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Object` | :ref:`_get_contact_collider_object`\ (\ contact_idx\: :ref:`int`\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Vector3` | :ref:`_get_contact_collider_position`\ (\ contact_idx\: :ref:`int`\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`_get_contact_collider_shape`\ (\ contact_idx\: :ref:`int`\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Vector3` | :ref:`_get_contact_collider_velocity_at_position`\ (\ contact_idx\: :ref:`int`\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`_get_contact_count`\ (\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Vector3` | :ref:`_get_contact_impulse`\ (\ contact_idx\: :ref:`int`\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Vector3` | :ref:`_get_contact_local_normal`\ (\ contact_idx\: :ref:`int`\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Vector3` | :ref:`_get_contact_local_position`\ (\ contact_idx\: :ref:`int`\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`_get_contact_local_shape`\ (\ contact_idx\: :ref:`int`\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Vector3` | :ref:`_get_contact_local_velocity_at_position`\ (\ contact_idx\: :ref:`int`\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Vector3` | :ref:`_get_inverse_inertia`\ (\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Basis` | :ref:`_get_inverse_inertia_tensor`\ (\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`_get_inverse_mass`\ (\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Vector3` | :ref:`_get_linear_velocity`\ (\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Basis` | :ref:`_get_principal_inertia_axes`\ (\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`PhysicsDirectSpaceState3D` | :ref:`_get_space_state`\ (\ ) |virtual| |required| | + +-------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`_get_step`\ (\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`_get_total_angular_damp`\ (\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Vector3` | :ref:`_get_total_gravity`\ (\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`_get_total_linear_damp`\ (\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Transform3D` | :ref:`_get_transform`\ (\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Vector3` | :ref:`_get_velocity_at_local_position`\ (\ local_position\: :ref:`Vector3`\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_integrate_forces`\ (\ ) |virtual| |required| | + +-------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`_is_sleeping`\ (\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_set_angular_velocity`\ (\ velocity\: :ref:`Vector3`\ ) |virtual| |required| | + +-------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_set_collision_layer`\ (\ layer\: :ref:`int`\ ) |virtual| |required| | + +-------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_set_collision_mask`\ (\ mask\: :ref:`int`\ ) |virtual| |required| | + +-------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_set_constant_force`\ (\ force\: :ref:`Vector3`\ ) |virtual| |required| | + +-------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_set_constant_torque`\ (\ torque\: :ref:`Vector3`\ ) |virtual| |required| | + +-------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_set_linear_velocity`\ (\ velocity\: :ref:`Vector3`\ ) |virtual| |required| | + +-------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_set_sleep_state`\ (\ enabled\: :ref:`bool`\ ) |virtual| |required| | + +-------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_set_transform`\ (\ transform\: :ref:`Transform3D`\ ) |virtual| |required| | + +-------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ .. rst-class:: classref-section-separator @@ -138,11 +146,11 @@ Method Descriptions .. rst-class:: classref-method -|void| **_add_constant_central_force**\ (\ force\: :ref:`Vector3`\ ) |virtual| :ref:`🔗` +|void| **_add_constant_central_force**\ (\ force\: :ref:`Vector3`\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -152,11 +160,11 @@ Method Descriptions .. rst-class:: classref-method -|void| **_add_constant_force**\ (\ force\: :ref:`Vector3`, position\: :ref:`Vector3`\ ) |virtual| :ref:`🔗` +|void| **_add_constant_force**\ (\ force\: :ref:`Vector3`, position\: :ref:`Vector3`\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -166,11 +174,11 @@ Method Descriptions .. rst-class:: classref-method -|void| **_add_constant_torque**\ (\ torque\: :ref:`Vector3`\ ) |virtual| :ref:`🔗` +|void| **_add_constant_torque**\ (\ torque\: :ref:`Vector3`\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -180,11 +188,11 @@ Method Descriptions .. rst-class:: classref-method -|void| **_apply_central_force**\ (\ force\: :ref:`Vector3`\ ) |virtual| :ref:`🔗` +|void| **_apply_central_force**\ (\ force\: :ref:`Vector3`\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -194,11 +202,11 @@ Method Descriptions .. rst-class:: classref-method -|void| **_apply_central_impulse**\ (\ impulse\: :ref:`Vector3`\ ) |virtual| :ref:`🔗` +|void| **_apply_central_impulse**\ (\ impulse\: :ref:`Vector3`\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -208,11 +216,11 @@ Method Descriptions .. rst-class:: classref-method -|void| **_apply_force**\ (\ force\: :ref:`Vector3`, position\: :ref:`Vector3`\ ) |virtual| :ref:`🔗` +|void| **_apply_force**\ (\ force\: :ref:`Vector3`, position\: :ref:`Vector3`\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -222,11 +230,11 @@ Method Descriptions .. rst-class:: classref-method -|void| **_apply_impulse**\ (\ impulse\: :ref:`Vector3`, position\: :ref:`Vector3`\ ) |virtual| :ref:`🔗` +|void| **_apply_impulse**\ (\ impulse\: :ref:`Vector3`, position\: :ref:`Vector3`\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -236,11 +244,11 @@ Method Descriptions .. rst-class:: classref-method -|void| **_apply_torque**\ (\ torque\: :ref:`Vector3`\ ) |virtual| :ref:`🔗` +|void| **_apply_torque**\ (\ torque\: :ref:`Vector3`\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -250,11 +258,11 @@ Method Descriptions .. rst-class:: classref-method -|void| **_apply_torque_impulse**\ (\ impulse\: :ref:`Vector3`\ ) |virtual| :ref:`🔗` +|void| **_apply_torque_impulse**\ (\ impulse\: :ref:`Vector3`\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -264,11 +272,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`Vector3` **_get_angular_velocity**\ (\ ) |virtual| |const| :ref:`🔗` +:ref:`Vector3` **_get_angular_velocity**\ (\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -278,11 +286,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`Vector3` **_get_center_of_mass**\ (\ ) |virtual| |const| :ref:`🔗` +:ref:`Vector3` **_get_center_of_mass**\ (\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -292,11 +300,39 @@ Method Descriptions .. rst-class:: classref-method -:ref:`Vector3` **_get_center_of_mass_local**\ (\ ) |virtual| |const| :ref:`🔗` +:ref:`Vector3` **_get_center_of_mass_local**\ (\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! + +.. rst-class:: classref-item-separator + +---- + +.. _class_PhysicsDirectBodyState3DExtension_private_method__get_collision_layer: + +.. rst-class:: classref-method + +:ref:`int` **_get_collision_layer**\ (\ ) |virtual| |required| |const| :ref:`🔗` + +.. container:: contribute + + There is currently no description for this method. Please help us by `contributing one `__! + +.. rst-class:: classref-item-separator + +---- + +.. _class_PhysicsDirectBodyState3DExtension_private_method__get_collision_mask: + +.. rst-class:: classref-method + +:ref:`int` **_get_collision_mask**\ (\ ) |virtual| |required| |const| :ref:`🔗` + +.. container:: contribute + + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -306,11 +342,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`Vector3` **_get_constant_force**\ (\ ) |virtual| |const| :ref:`🔗` +:ref:`Vector3` **_get_constant_force**\ (\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -320,11 +356,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`Vector3` **_get_constant_torque**\ (\ ) |virtual| |const| :ref:`🔗` +:ref:`Vector3` **_get_constant_torque**\ (\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -334,11 +370,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`RID` **_get_contact_collider**\ (\ contact_idx\: :ref:`int`\ ) |virtual| |const| :ref:`🔗` +:ref:`RID` **_get_contact_collider**\ (\ contact_idx\: :ref:`int`\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -348,11 +384,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`int` **_get_contact_collider_id**\ (\ contact_idx\: :ref:`int`\ ) |virtual| |const| :ref:`🔗` +:ref:`int` **_get_contact_collider_id**\ (\ contact_idx\: :ref:`int`\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -362,11 +398,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`Object` **_get_contact_collider_object**\ (\ contact_idx\: :ref:`int`\ ) |virtual| |const| :ref:`🔗` +:ref:`Object` **_get_contact_collider_object**\ (\ contact_idx\: :ref:`int`\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -376,11 +412,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`Vector3` **_get_contact_collider_position**\ (\ contact_idx\: :ref:`int`\ ) |virtual| |const| :ref:`🔗` +:ref:`Vector3` **_get_contact_collider_position**\ (\ contact_idx\: :ref:`int`\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -390,11 +426,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`int` **_get_contact_collider_shape**\ (\ contact_idx\: :ref:`int`\ ) |virtual| |const| :ref:`🔗` +:ref:`int` **_get_contact_collider_shape**\ (\ contact_idx\: :ref:`int`\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -404,11 +440,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`Vector3` **_get_contact_collider_velocity_at_position**\ (\ contact_idx\: :ref:`int`\ ) |virtual| |const| :ref:`🔗` +:ref:`Vector3` **_get_contact_collider_velocity_at_position**\ (\ contact_idx\: :ref:`int`\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -418,11 +454,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`int` **_get_contact_count**\ (\ ) |virtual| |const| :ref:`🔗` +:ref:`int` **_get_contact_count**\ (\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -432,11 +468,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`Vector3` **_get_contact_impulse**\ (\ contact_idx\: :ref:`int`\ ) |virtual| |const| :ref:`🔗` +:ref:`Vector3` **_get_contact_impulse**\ (\ contact_idx\: :ref:`int`\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -446,11 +482,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`Vector3` **_get_contact_local_normal**\ (\ contact_idx\: :ref:`int`\ ) |virtual| |const| :ref:`🔗` +:ref:`Vector3` **_get_contact_local_normal**\ (\ contact_idx\: :ref:`int`\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -460,11 +496,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`Vector3` **_get_contact_local_position**\ (\ contact_idx\: :ref:`int`\ ) |virtual| |const| :ref:`🔗` +:ref:`Vector3` **_get_contact_local_position**\ (\ contact_idx\: :ref:`int`\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -474,11 +510,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`int` **_get_contact_local_shape**\ (\ contact_idx\: :ref:`int`\ ) |virtual| |const| :ref:`🔗` +:ref:`int` **_get_contact_local_shape**\ (\ contact_idx\: :ref:`int`\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -488,11 +524,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`Vector3` **_get_contact_local_velocity_at_position**\ (\ contact_idx\: :ref:`int`\ ) |virtual| |const| :ref:`🔗` +:ref:`Vector3` **_get_contact_local_velocity_at_position**\ (\ contact_idx\: :ref:`int`\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -502,11 +538,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`Vector3` **_get_inverse_inertia**\ (\ ) |virtual| |const| :ref:`🔗` +:ref:`Vector3` **_get_inverse_inertia**\ (\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -516,11 +552,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`Basis` **_get_inverse_inertia_tensor**\ (\ ) |virtual| |const| :ref:`🔗` +:ref:`Basis` **_get_inverse_inertia_tensor**\ (\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -530,11 +566,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`float` **_get_inverse_mass**\ (\ ) |virtual| |const| :ref:`🔗` +:ref:`float` **_get_inverse_mass**\ (\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -544,11 +580,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`Vector3` **_get_linear_velocity**\ (\ ) |virtual| |const| :ref:`🔗` +:ref:`Vector3` **_get_linear_velocity**\ (\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -558,11 +594,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`Basis` **_get_principal_inertia_axes**\ (\ ) |virtual| |const| :ref:`🔗` +:ref:`Basis` **_get_principal_inertia_axes**\ (\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -572,11 +608,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`PhysicsDirectSpaceState3D` **_get_space_state**\ (\ ) |virtual| :ref:`🔗` +:ref:`PhysicsDirectSpaceState3D` **_get_space_state**\ (\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -586,11 +622,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`float` **_get_step**\ (\ ) |virtual| |const| :ref:`🔗` +:ref:`float` **_get_step**\ (\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -600,11 +636,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`float` **_get_total_angular_damp**\ (\ ) |virtual| |const| :ref:`🔗` +:ref:`float` **_get_total_angular_damp**\ (\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -614,11 +650,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`Vector3` **_get_total_gravity**\ (\ ) |virtual| |const| :ref:`🔗` +:ref:`Vector3` **_get_total_gravity**\ (\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -628,11 +664,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`float` **_get_total_linear_damp**\ (\ ) |virtual| |const| :ref:`🔗` +:ref:`float` **_get_total_linear_damp**\ (\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -642,11 +678,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`Transform3D` **_get_transform**\ (\ ) |virtual| |const| :ref:`🔗` +:ref:`Transform3D` **_get_transform**\ (\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -656,11 +692,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`Vector3` **_get_velocity_at_local_position**\ (\ local_position\: :ref:`Vector3`\ ) |virtual| |const| :ref:`🔗` +:ref:`Vector3` **_get_velocity_at_local_position**\ (\ local_position\: :ref:`Vector3`\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -670,11 +706,11 @@ Method Descriptions .. rst-class:: classref-method -|void| **_integrate_forces**\ (\ ) |virtual| :ref:`🔗` +|void| **_integrate_forces**\ (\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -684,11 +720,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`bool` **_is_sleeping**\ (\ ) |virtual| |const| :ref:`🔗` +:ref:`bool` **_is_sleeping**\ (\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -698,11 +734,39 @@ Method Descriptions .. rst-class:: classref-method -|void| **_set_angular_velocity**\ (\ velocity\: :ref:`Vector3`\ ) |virtual| :ref:`🔗` +|void| **_set_angular_velocity**\ (\ velocity\: :ref:`Vector3`\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! + +.. rst-class:: classref-item-separator + +---- + +.. _class_PhysicsDirectBodyState3DExtension_private_method__set_collision_layer: + +.. rst-class:: classref-method + +|void| **_set_collision_layer**\ (\ layer\: :ref:`int`\ ) |virtual| |required| :ref:`🔗` + +.. container:: contribute + + There is currently no description for this method. Please help us by `contributing one `__! + +.. rst-class:: classref-item-separator + +---- + +.. _class_PhysicsDirectBodyState3DExtension_private_method__set_collision_mask: + +.. rst-class:: classref-method + +|void| **_set_collision_mask**\ (\ mask\: :ref:`int`\ ) |virtual| |required| :ref:`🔗` + +.. container:: contribute + + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -712,11 +776,11 @@ Method Descriptions .. rst-class:: classref-method -|void| **_set_constant_force**\ (\ force\: :ref:`Vector3`\ ) |virtual| :ref:`🔗` +|void| **_set_constant_force**\ (\ force\: :ref:`Vector3`\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -726,11 +790,11 @@ Method Descriptions .. rst-class:: classref-method -|void| **_set_constant_torque**\ (\ torque\: :ref:`Vector3`\ ) |virtual| :ref:`🔗` +|void| **_set_constant_torque**\ (\ torque\: :ref:`Vector3`\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -740,11 +804,11 @@ Method Descriptions .. rst-class:: classref-method -|void| **_set_linear_velocity**\ (\ velocity\: :ref:`Vector3`\ ) |virtual| :ref:`🔗` +|void| **_set_linear_velocity**\ (\ velocity\: :ref:`Vector3`\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -754,11 +818,11 @@ Method Descriptions .. rst-class:: classref-method -|void| **_set_sleep_state**\ (\ enabled\: :ref:`bool`\ ) |virtual| :ref:`🔗` +|void| **_set_sleep_state**\ (\ enabled\: :ref:`bool`\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -768,13 +832,14 @@ Method Descriptions .. rst-class:: classref-method -|void| **_set_transform**\ (\ transform\: :ref:`Transform3D`\ ) |virtual| :ref:`🔗` +|void| **_set_transform**\ (\ transform\: :ref:`Transform3D`\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_physicsdirectspacestate2d.rst b/classes/class_physicsdirectspacestate2d.rst index 46cbfc96c..91a464076 100644 --- a/classes/class_physicsdirectspacestate2d.rst +++ b/classes/class_physicsdirectspacestate2d.rst @@ -23,6 +23,8 @@ Description Provides direct access to a physics space in the :ref:`PhysicsServer2D`. It's used mainly to do queries against objects and areas residing in a given space. +\ **Note:** This class is not meant to be instantiated directly. Use :ref:`World2D.direct_space_state` to get the world's physics 2D space state. + .. rst-class:: classref-introduction-group Tutorials @@ -99,9 +101,7 @@ Returned points are a list of pairs of contact points. For each pair the first o :ref:`Dictionary` **get_rest_info**\ (\ parameters\: :ref:`PhysicsShapeQueryParameters2D`\ ) :ref:`🔗` -Checks the intersections of a shape, given through a :ref:`PhysicsShapeQueryParameters2D` object, against the space. If it collides with more than one shape, the nearest one is selected. If the shape did not intersect anything, then an empty dictionary is returned instead. - -\ **Note:** This method does not take into account the ``motion`` property of the object. The returned object is a dictionary containing the following fields: +Checks the intersections of a shape, given through a :ref:`PhysicsShapeQueryParameters2D` object, against the space. If it collides with more than one shape, the nearest one is selected. The returned object is a dictionary containing the following fields: \ ``collider_id``: The colliding object's ID. @@ -115,6 +115,8 @@ Checks the intersections of a shape, given through a :ref:`PhysicsShapeQueryPara \ ``shape``: The shape index of the colliding shape. +If the shape did not intersect anything, then an empty dictionary is returned instead. + .. rst-class:: classref-item-separator ---- @@ -188,6 +190,7 @@ Checks the intersections of a shape, given through a :ref:`PhysicsShapeQueryPara The number of intersections can be limited with the ``max_results`` parameter, to reduce the processing time. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_physicsdirectspacestate2dextension.rst b/classes/class_physicsdirectspacestate2dextension.rst index 956bbef26..c144a5107 100644 --- a/classes/class_physicsdirectspacestate2dextension.rst +++ b/classes/class_physicsdirectspacestate2dextension.rst @@ -31,21 +31,21 @@ Methods .. table:: :widths: auto - +-------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`_cast_motion`\ (\ shape_rid\: :ref:`RID`, transform\: :ref:`Transform2D`, motion\: :ref:`Vector2`, margin\: :ref:`float`, collision_mask\: :ref:`int`, collide_with_bodies\: :ref:`bool`, collide_with_areas\: :ref:`bool`, closest_safe\: ``float*``, closest_unsafe\: ``float*``\ ) |virtual| | - +-------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`_collide_shape`\ (\ shape_rid\: :ref:`RID`, transform\: :ref:`Transform2D`, motion\: :ref:`Vector2`, margin\: :ref:`float`, collision_mask\: :ref:`int`, collide_with_bodies\: :ref:`bool`, collide_with_areas\: :ref:`bool`, results\: ``void*``, max_results\: :ref:`int`, result_count\: ``int32_t*``\ ) |virtual| | - +-------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`_intersect_point`\ (\ position\: :ref:`Vector2`, canvas_instance_id\: :ref:`int`, collision_mask\: :ref:`int`, collide_with_bodies\: :ref:`bool`, collide_with_areas\: :ref:`bool`, results\: ``PhysicsServer2DExtensionShapeResult*``, max_results\: :ref:`int`\ ) |virtual| | - +-------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`_intersect_ray`\ (\ from\: :ref:`Vector2`, to\: :ref:`Vector2`, collision_mask\: :ref:`int`, collide_with_bodies\: :ref:`bool`, collide_with_areas\: :ref:`bool`, hit_from_inside\: :ref:`bool`, result\: ``PhysicsServer2DExtensionRayResult*``\ ) |virtual| | - +-------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`_intersect_shape`\ (\ shape_rid\: :ref:`RID`, transform\: :ref:`Transform2D`, motion\: :ref:`Vector2`, margin\: :ref:`float`, collision_mask\: :ref:`int`, collide_with_bodies\: :ref:`bool`, collide_with_areas\: :ref:`bool`, result\: ``PhysicsServer2DExtensionShapeResult*``, max_results\: :ref:`int`\ ) |virtual| | - +-------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`_rest_info`\ (\ shape_rid\: :ref:`RID`, transform\: :ref:`Transform2D`, motion\: :ref:`Vector2`, margin\: :ref:`float`, collision_mask\: :ref:`int`, collide_with_bodies\: :ref:`bool`, collide_with_areas\: :ref:`bool`, rest_info\: ``PhysicsServer2DExtensionShapeRestInfo*``\ ) |virtual| | - +-------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`is_body_excluded_from_query`\ (\ body\: :ref:`RID`\ ) |const| | - +-------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + +-------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`_cast_motion`\ (\ shape_rid\: :ref:`RID`, transform\: :ref:`Transform2D`, motion\: :ref:`Vector2`, margin\: :ref:`float`, collision_mask\: :ref:`int`, collide_with_bodies\: :ref:`bool`, collide_with_areas\: :ref:`bool`, closest_safe\: ``float*``, closest_unsafe\: ``float*``\ ) |virtual| |required| | + +-------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`_collide_shape`\ (\ shape_rid\: :ref:`RID`, transform\: :ref:`Transform2D`, motion\: :ref:`Vector2`, margin\: :ref:`float`, collision_mask\: :ref:`int`, collide_with_bodies\: :ref:`bool`, collide_with_areas\: :ref:`bool`, results\: ``void*``, max_results\: :ref:`int`, result_count\: ``int32_t*``\ ) |virtual| |required| | + +-------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`_intersect_point`\ (\ position\: :ref:`Vector2`, canvas_instance_id\: :ref:`int`, collision_mask\: :ref:`int`, collide_with_bodies\: :ref:`bool`, collide_with_areas\: :ref:`bool`, results\: ``PhysicsServer2DExtensionShapeResult*``, max_results\: :ref:`int`\ ) |virtual| |required| | + +-------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`_intersect_ray`\ (\ from\: :ref:`Vector2`, to\: :ref:`Vector2`, collision_mask\: :ref:`int`, collide_with_bodies\: :ref:`bool`, collide_with_areas\: :ref:`bool`, hit_from_inside\: :ref:`bool`, result\: ``PhysicsServer2DExtensionRayResult*``\ ) |virtual| |required| | + +-------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`_intersect_shape`\ (\ shape_rid\: :ref:`RID`, transform\: :ref:`Transform2D`, motion\: :ref:`Vector2`, margin\: :ref:`float`, collision_mask\: :ref:`int`, collide_with_bodies\: :ref:`bool`, collide_with_areas\: :ref:`bool`, result\: ``PhysicsServer2DExtensionShapeResult*``, max_results\: :ref:`int`\ ) |virtual| |required| | + +-------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`_rest_info`\ (\ shape_rid\: :ref:`RID`, transform\: :ref:`Transform2D`, motion\: :ref:`Vector2`, margin\: :ref:`float`, collision_mask\: :ref:`int`, collide_with_bodies\: :ref:`bool`, collide_with_areas\: :ref:`bool`, rest_info\: ``PhysicsServer2DExtensionShapeRestInfo*``\ ) |virtual| |required| | + +-------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`is_body_excluded_from_query`\ (\ body\: :ref:`RID`\ ) |const| | + +-------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ .. rst-class:: classref-section-separator @@ -60,11 +60,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`bool` **_cast_motion**\ (\ shape_rid\: :ref:`RID`, transform\: :ref:`Transform2D`, motion\: :ref:`Vector2`, margin\: :ref:`float`, collision_mask\: :ref:`int`, collide_with_bodies\: :ref:`bool`, collide_with_areas\: :ref:`bool`, closest_safe\: ``float*``, closest_unsafe\: ``float*``\ ) |virtual| :ref:`🔗` +:ref:`bool` **_cast_motion**\ (\ shape_rid\: :ref:`RID`, transform\: :ref:`Transform2D`, motion\: :ref:`Vector2`, margin\: :ref:`float`, collision_mask\: :ref:`int`, collide_with_bodies\: :ref:`bool`, collide_with_areas\: :ref:`bool`, closest_safe\: ``float*``, closest_unsafe\: ``float*``\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -74,11 +74,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`bool` **_collide_shape**\ (\ shape_rid\: :ref:`RID`, transform\: :ref:`Transform2D`, motion\: :ref:`Vector2`, margin\: :ref:`float`, collision_mask\: :ref:`int`, collide_with_bodies\: :ref:`bool`, collide_with_areas\: :ref:`bool`, results\: ``void*``, max_results\: :ref:`int`, result_count\: ``int32_t*``\ ) |virtual| :ref:`🔗` +:ref:`bool` **_collide_shape**\ (\ shape_rid\: :ref:`RID`, transform\: :ref:`Transform2D`, motion\: :ref:`Vector2`, margin\: :ref:`float`, collision_mask\: :ref:`int`, collide_with_bodies\: :ref:`bool`, collide_with_areas\: :ref:`bool`, results\: ``void*``, max_results\: :ref:`int`, result_count\: ``int32_t*``\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -88,11 +88,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`int` **_intersect_point**\ (\ position\: :ref:`Vector2`, canvas_instance_id\: :ref:`int`, collision_mask\: :ref:`int`, collide_with_bodies\: :ref:`bool`, collide_with_areas\: :ref:`bool`, results\: ``PhysicsServer2DExtensionShapeResult*``, max_results\: :ref:`int`\ ) |virtual| :ref:`🔗` +:ref:`int` **_intersect_point**\ (\ position\: :ref:`Vector2`, canvas_instance_id\: :ref:`int`, collision_mask\: :ref:`int`, collide_with_bodies\: :ref:`bool`, collide_with_areas\: :ref:`bool`, results\: ``PhysicsServer2DExtensionShapeResult*``, max_results\: :ref:`int`\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -102,11 +102,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`bool` **_intersect_ray**\ (\ from\: :ref:`Vector2`, to\: :ref:`Vector2`, collision_mask\: :ref:`int`, collide_with_bodies\: :ref:`bool`, collide_with_areas\: :ref:`bool`, hit_from_inside\: :ref:`bool`, result\: ``PhysicsServer2DExtensionRayResult*``\ ) |virtual| :ref:`🔗` +:ref:`bool` **_intersect_ray**\ (\ from\: :ref:`Vector2`, to\: :ref:`Vector2`, collision_mask\: :ref:`int`, collide_with_bodies\: :ref:`bool`, collide_with_areas\: :ref:`bool`, hit_from_inside\: :ref:`bool`, result\: ``PhysicsServer2DExtensionRayResult*``\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -116,11 +116,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`int` **_intersect_shape**\ (\ shape_rid\: :ref:`RID`, transform\: :ref:`Transform2D`, motion\: :ref:`Vector2`, margin\: :ref:`float`, collision_mask\: :ref:`int`, collide_with_bodies\: :ref:`bool`, collide_with_areas\: :ref:`bool`, result\: ``PhysicsServer2DExtensionShapeResult*``, max_results\: :ref:`int`\ ) |virtual| :ref:`🔗` +:ref:`int` **_intersect_shape**\ (\ shape_rid\: :ref:`RID`, transform\: :ref:`Transform2D`, motion\: :ref:`Vector2`, margin\: :ref:`float`, collision_mask\: :ref:`int`, collide_with_bodies\: :ref:`bool`, collide_with_areas\: :ref:`bool`, result\: ``PhysicsServer2DExtensionShapeResult*``, max_results\: :ref:`int`\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -130,11 +130,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`bool` **_rest_info**\ (\ shape_rid\: :ref:`RID`, transform\: :ref:`Transform2D`, motion\: :ref:`Vector2`, margin\: :ref:`float`, collision_mask\: :ref:`int`, collide_with_bodies\: :ref:`bool`, collide_with_areas\: :ref:`bool`, rest_info\: ``PhysicsServer2DExtensionShapeRestInfo*``\ ) |virtual| :ref:`🔗` +:ref:`bool` **_rest_info**\ (\ shape_rid\: :ref:`RID`, transform\: :ref:`Transform2D`, motion\: :ref:`Vector2`, margin\: :ref:`float`, collision_mask\: :ref:`int`, collide_with_bodies\: :ref:`bool`, collide_with_areas\: :ref:`bool`, rest_info\: ``PhysicsServer2DExtensionShapeRestInfo*``\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -148,9 +148,10 @@ Method Descriptions .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_physicsdirectspacestate3d.rst b/classes/class_physicsdirectspacestate3d.rst index 11d9e5f03..3406b81ca 100644 --- a/classes/class_physicsdirectspacestate3d.rst +++ b/classes/class_physicsdirectspacestate3d.rst @@ -23,6 +23,8 @@ Description Provides direct access to a physics space in the :ref:`PhysicsServer3D`. It's used mainly to do queries against objects and areas residing in a given space. +\ **Note:** This class is not meant to be instantiated directly. Use :ref:`World3D.direct_space_state` to get the world's physics 3D space state. + .. rst-class:: classref-introduction-group Tutorials @@ -69,7 +71,7 @@ Method Descriptions :ref:`PackedFloat32Array` **cast_motion**\ (\ parameters\: :ref:`PhysicsShapeQueryParameters3D`\ ) :ref:`🔗` -Checks how far a :ref:`Shape3D` can move without colliding. All the parameters for the query, including the shape, are supplied through a :ref:`PhysicsShapeQueryParameters3D` object. +Checks how far a :ref:`Shape3D` can move without colliding. All the parameters for the query, including the shape and the motion, are supplied through a :ref:`PhysicsShapeQueryParameters3D` object. Returns an array with the safe and unsafe proportions (between 0 and 1) of the motion. The safe proportion is the maximum fraction of the motion that can be made without a collision. The unsafe proportion is the minimum fraction of the distance that must be moved for a collision. If no collision is detected a result of ``[1.0, 1.0]`` will be returned. @@ -196,6 +198,7 @@ The number of intersections can be limited with the ``max_results`` parameter, t \ **Note:** This method does not take into account the ``motion`` property of the object. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_physicsdirectspacestate3dextension.rst b/classes/class_physicsdirectspacestate3dextension.rst index 81dc0b954..8b2a39cef 100644 --- a/classes/class_physicsdirectspacestate3dextension.rst +++ b/classes/class_physicsdirectspacestate3dextension.rst @@ -31,23 +31,23 @@ Methods .. table:: :widths: auto - +-------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`_cast_motion`\ (\ shape_rid\: :ref:`RID`, transform\: :ref:`Transform3D`, motion\: :ref:`Vector3`, margin\: :ref:`float`, collision_mask\: :ref:`int`, collide_with_bodies\: :ref:`bool`, collide_with_areas\: :ref:`bool`, closest_safe\: ``float*``, closest_unsafe\: ``float*``, info\: ``PhysicsServer3DExtensionShapeRestInfo*``\ ) |virtual| | - +-------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`_collide_shape`\ (\ shape_rid\: :ref:`RID`, transform\: :ref:`Transform3D`, motion\: :ref:`Vector3`, margin\: :ref:`float`, collision_mask\: :ref:`int`, collide_with_bodies\: :ref:`bool`, collide_with_areas\: :ref:`bool`, results\: ``void*``, max_results\: :ref:`int`, result_count\: ``int32_t*``\ ) |virtual| | - +-------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Vector3` | :ref:`_get_closest_point_to_object_volume`\ (\ object\: :ref:`RID`, point\: :ref:`Vector3`\ ) |virtual| |const| | - +-------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`_intersect_point`\ (\ position\: :ref:`Vector3`, collision_mask\: :ref:`int`, collide_with_bodies\: :ref:`bool`, collide_with_areas\: :ref:`bool`, results\: ``PhysicsServer3DExtensionShapeResult*``, max_results\: :ref:`int`\ ) |virtual| | - +-------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`_intersect_ray`\ (\ from\: :ref:`Vector3`, to\: :ref:`Vector3`, collision_mask\: :ref:`int`, collide_with_bodies\: :ref:`bool`, collide_with_areas\: :ref:`bool`, hit_from_inside\: :ref:`bool`, hit_back_faces\: :ref:`bool`, pick_ray\: :ref:`bool`, result\: ``PhysicsServer3DExtensionRayResult*``\ ) |virtual| | - +-------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`_intersect_shape`\ (\ shape_rid\: :ref:`RID`, transform\: :ref:`Transform3D`, motion\: :ref:`Vector3`, margin\: :ref:`float`, collision_mask\: :ref:`int`, collide_with_bodies\: :ref:`bool`, collide_with_areas\: :ref:`bool`, result_count\: ``PhysicsServer3DExtensionShapeResult*``, max_results\: :ref:`int`\ ) |virtual| | - +-------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`_rest_info`\ (\ shape_rid\: :ref:`RID`, transform\: :ref:`Transform3D`, motion\: :ref:`Vector3`, margin\: :ref:`float`, collision_mask\: :ref:`int`, collide_with_bodies\: :ref:`bool`, collide_with_areas\: :ref:`bool`, rest_info\: ``PhysicsServer3DExtensionShapeRestInfo*``\ ) |virtual| | - +-------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`is_body_excluded_from_query`\ (\ body\: :ref:`RID`\ ) |const| | - +-------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + +-------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`_cast_motion`\ (\ shape_rid\: :ref:`RID`, transform\: :ref:`Transform3D`, motion\: :ref:`Vector3`, margin\: :ref:`float`, collision_mask\: :ref:`int`, collide_with_bodies\: :ref:`bool`, collide_with_areas\: :ref:`bool`, closest_safe\: ``float*``, closest_unsafe\: ``float*``, info\: ``PhysicsServer3DExtensionShapeRestInfo*``\ ) |virtual| |required| | + +-------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`_collide_shape`\ (\ shape_rid\: :ref:`RID`, transform\: :ref:`Transform3D`, motion\: :ref:`Vector3`, margin\: :ref:`float`, collision_mask\: :ref:`int`, collide_with_bodies\: :ref:`bool`, collide_with_areas\: :ref:`bool`, results\: ``void*``, max_results\: :ref:`int`, result_count\: ``int32_t*``\ ) |virtual| |required| | + +-------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Vector3` | :ref:`_get_closest_point_to_object_volume`\ (\ object\: :ref:`RID`, point\: :ref:`Vector3`\ ) |virtual| |required| |const| | + +-------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`_intersect_point`\ (\ position\: :ref:`Vector3`, collision_mask\: :ref:`int`, collide_with_bodies\: :ref:`bool`, collide_with_areas\: :ref:`bool`, results\: ``PhysicsServer3DExtensionShapeResult*``, max_results\: :ref:`int`\ ) |virtual| |required| | + +-------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`_intersect_ray`\ (\ from\: :ref:`Vector3`, to\: :ref:`Vector3`, collision_mask\: :ref:`int`, collide_with_bodies\: :ref:`bool`, collide_with_areas\: :ref:`bool`, hit_from_inside\: :ref:`bool`, hit_back_faces\: :ref:`bool`, pick_ray\: :ref:`bool`, result\: ``PhysicsServer3DExtensionRayResult*``\ ) |virtual| |required| | + +-------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`_intersect_shape`\ (\ shape_rid\: :ref:`RID`, transform\: :ref:`Transform3D`, motion\: :ref:`Vector3`, margin\: :ref:`float`, collision_mask\: :ref:`int`, collide_with_bodies\: :ref:`bool`, collide_with_areas\: :ref:`bool`, result_count\: ``PhysicsServer3DExtensionShapeResult*``, max_results\: :ref:`int`\ ) |virtual| |required| | + +-------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`_rest_info`\ (\ shape_rid\: :ref:`RID`, transform\: :ref:`Transform3D`, motion\: :ref:`Vector3`, margin\: :ref:`float`, collision_mask\: :ref:`int`, collide_with_bodies\: :ref:`bool`, collide_with_areas\: :ref:`bool`, rest_info\: ``PhysicsServer3DExtensionShapeRestInfo*``\ ) |virtual| |required| | + +-------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`is_body_excluded_from_query`\ (\ body\: :ref:`RID`\ ) |const| | + +-------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ .. rst-class:: classref-section-separator @@ -62,11 +62,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`bool` **_cast_motion**\ (\ shape_rid\: :ref:`RID`, transform\: :ref:`Transform3D`, motion\: :ref:`Vector3`, margin\: :ref:`float`, collision_mask\: :ref:`int`, collide_with_bodies\: :ref:`bool`, collide_with_areas\: :ref:`bool`, closest_safe\: ``float*``, closest_unsafe\: ``float*``, info\: ``PhysicsServer3DExtensionShapeRestInfo*``\ ) |virtual| :ref:`🔗` +:ref:`bool` **_cast_motion**\ (\ shape_rid\: :ref:`RID`, transform\: :ref:`Transform3D`, motion\: :ref:`Vector3`, margin\: :ref:`float`, collision_mask\: :ref:`int`, collide_with_bodies\: :ref:`bool`, collide_with_areas\: :ref:`bool`, closest_safe\: ``float*``, closest_unsafe\: ``float*``, info\: ``PhysicsServer3DExtensionShapeRestInfo*``\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -76,11 +76,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`bool` **_collide_shape**\ (\ shape_rid\: :ref:`RID`, transform\: :ref:`Transform3D`, motion\: :ref:`Vector3`, margin\: :ref:`float`, collision_mask\: :ref:`int`, collide_with_bodies\: :ref:`bool`, collide_with_areas\: :ref:`bool`, results\: ``void*``, max_results\: :ref:`int`, result_count\: ``int32_t*``\ ) |virtual| :ref:`🔗` +:ref:`bool` **_collide_shape**\ (\ shape_rid\: :ref:`RID`, transform\: :ref:`Transform3D`, motion\: :ref:`Vector3`, margin\: :ref:`float`, collision_mask\: :ref:`int`, collide_with_bodies\: :ref:`bool`, collide_with_areas\: :ref:`bool`, results\: ``void*``, max_results\: :ref:`int`, result_count\: ``int32_t*``\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -90,11 +90,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`Vector3` **_get_closest_point_to_object_volume**\ (\ object\: :ref:`RID`, point\: :ref:`Vector3`\ ) |virtual| |const| :ref:`🔗` +:ref:`Vector3` **_get_closest_point_to_object_volume**\ (\ object\: :ref:`RID`, point\: :ref:`Vector3`\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -104,11 +104,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`int` **_intersect_point**\ (\ position\: :ref:`Vector3`, collision_mask\: :ref:`int`, collide_with_bodies\: :ref:`bool`, collide_with_areas\: :ref:`bool`, results\: ``PhysicsServer3DExtensionShapeResult*``, max_results\: :ref:`int`\ ) |virtual| :ref:`🔗` +:ref:`int` **_intersect_point**\ (\ position\: :ref:`Vector3`, collision_mask\: :ref:`int`, collide_with_bodies\: :ref:`bool`, collide_with_areas\: :ref:`bool`, results\: ``PhysicsServer3DExtensionShapeResult*``, max_results\: :ref:`int`\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -118,11 +118,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`bool` **_intersect_ray**\ (\ from\: :ref:`Vector3`, to\: :ref:`Vector3`, collision_mask\: :ref:`int`, collide_with_bodies\: :ref:`bool`, collide_with_areas\: :ref:`bool`, hit_from_inside\: :ref:`bool`, hit_back_faces\: :ref:`bool`, pick_ray\: :ref:`bool`, result\: ``PhysicsServer3DExtensionRayResult*``\ ) |virtual| :ref:`🔗` +:ref:`bool` **_intersect_ray**\ (\ from\: :ref:`Vector3`, to\: :ref:`Vector3`, collision_mask\: :ref:`int`, collide_with_bodies\: :ref:`bool`, collide_with_areas\: :ref:`bool`, hit_from_inside\: :ref:`bool`, hit_back_faces\: :ref:`bool`, pick_ray\: :ref:`bool`, result\: ``PhysicsServer3DExtensionRayResult*``\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -132,11 +132,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`int` **_intersect_shape**\ (\ shape_rid\: :ref:`RID`, transform\: :ref:`Transform3D`, motion\: :ref:`Vector3`, margin\: :ref:`float`, collision_mask\: :ref:`int`, collide_with_bodies\: :ref:`bool`, collide_with_areas\: :ref:`bool`, result_count\: ``PhysicsServer3DExtensionShapeResult*``, max_results\: :ref:`int`\ ) |virtual| :ref:`🔗` +:ref:`int` **_intersect_shape**\ (\ shape_rid\: :ref:`RID`, transform\: :ref:`Transform3D`, motion\: :ref:`Vector3`, margin\: :ref:`float`, collision_mask\: :ref:`int`, collide_with_bodies\: :ref:`bool`, collide_with_areas\: :ref:`bool`, result_count\: ``PhysicsServer3DExtensionShapeResult*``, max_results\: :ref:`int`\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -146,11 +146,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`bool` **_rest_info**\ (\ shape_rid\: :ref:`RID`, transform\: :ref:`Transform3D`, motion\: :ref:`Vector3`, margin\: :ref:`float`, collision_mask\: :ref:`int`, collide_with_bodies\: :ref:`bool`, collide_with_areas\: :ref:`bool`, rest_info\: ``PhysicsServer3DExtensionShapeRestInfo*``\ ) |virtual| :ref:`🔗` +:ref:`bool` **_rest_info**\ (\ shape_rid\: :ref:`RID`, transform\: :ref:`Transform3D`, motion\: :ref:`Vector3`, margin\: :ref:`float`, collision_mask\: :ref:`int`, collide_with_bodies\: :ref:`bool`, collide_with_areas\: :ref:`bool`, rest_info\: ``PhysicsServer3DExtensionShapeRestInfo*``\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -164,9 +164,10 @@ Method Descriptions .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_physicsmaterial.rst b/classes/class_physicsmaterial.rst index 4920b20e6..1098b620f 100644 --- a/classes/class_physicsmaterial.rst +++ b/classes/class_physicsmaterial.rst @@ -115,6 +115,7 @@ The body's friction. Values range from ``0`` (frictionless) to ``1`` (maximum fr If ``true``, the physics engine will use the friction of the object marked as "rough" when two objects collide. If ``false``, the physics engine will use the lowest friction of all colliding objects instead. If ``true`` for both colliding objects, the physics engine will use the highest friction. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_physicspointqueryparameters2d.rst b/classes/class_physicspointqueryparameters2d.rst index fe543c388..2690bcca4 100644 --- a/classes/class_physicspointqueryparameters2d.rst +++ b/classes/class_physicspointqueryparameters2d.rst @@ -155,6 +155,7 @@ The list of object :ref:`RID`\ s that will be excluded from collision The position being queried for, in global coordinates. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_physicspointqueryparameters3d.rst b/classes/class_physicspointqueryparameters3d.rst index a952e8cbc..506d1dff5 100644 --- a/classes/class_physicspointqueryparameters3d.rst +++ b/classes/class_physicspointqueryparameters3d.rst @@ -134,6 +134,7 @@ The list of object :ref:`RID`\ s that will be excluded from collision The position being queried for, in global coordinates. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_physicsrayqueryparameters2d.rst b/classes/class_physicsrayqueryparameters2d.rst index fff791843..450b91cb9 100644 --- a/classes/class_physicsrayqueryparameters2d.rst +++ b/classes/class_physicsrayqueryparameters2d.rst @@ -206,6 +206,7 @@ Returns a new, pre-configured **PhysicsRayQueryParameters2D** object. Use it to var collision = get_world_2d().direct_space_state.intersect_ray(query) .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_physicsrayqueryparameters3d.rst b/classes/class_physicsrayqueryparameters3d.rst index b308e652a..8408b74bf 100644 --- a/classes/class_physicsrayqueryparameters3d.rst +++ b/classes/class_physicsrayqueryparameters3d.rst @@ -225,6 +225,7 @@ Returns a new, pre-configured **PhysicsRayQueryParameters3D** object. Use it to var collision = get_world_3d().direct_space_state.intersect_ray(query) .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_physicsserver2d.rst b/classes/class_physicsserver2d.rst index fb43c02d6..86d5c521b 100644 --- a/classes/class_physicsserver2d.rst +++ b/classes/class_physicsserver2d.rst @@ -690,7 +690,7 @@ Constant to set/get a body's inertia. The default value of this parameter is ``0 :ref:`BodyParameter` **BODY_PARAM_CENTER_OF_MASS** = ``4`` -Constant to set/get a body's center of mass position in the body's local coordinate system. The default value of this parameter is ``Vector2(0,0)``. If this parameter is never set explicitly, then it is recalculated based on the body's shapes when setting the parameter :ref:`BODY_PARAM_MASS` or when calling :ref:`body_set_space()`. +Constant to set/get a body's center of mass position in the body's local coordinate system. The default value of this parameter is ``Vector2(0, 0)``. If this parameter is never set explicitly, then it is recalculated based on the body's shapes when setting the parameter :ref:`BODY_PARAM_MASS` or when calling :ref:`body_set_space()`. .. _class_PhysicsServer2D_constant_BODY_PARAM_GRAVITY_SCALE: @@ -1219,7 +1219,7 @@ Returns the ``ObjectID`` attached to the area. Use :ref:`@GlobalScope.instance_f :ref:`Variant` **area_get_param**\ (\ area\: :ref:`RID`, param\: :ref:`AreaParameter`\ ) |const| :ref:`🔗` -Returns the value of the given area parameter. See :ref:`AreaParameter` for the list of available parameters. +Returns the value of the given area parameter. .. rst-class:: classref-item-separator @@ -1387,7 +1387,7 @@ Sets whether the area is monitorable or not. If ``monitorable`` is ``true``, the |void| **area_set_param**\ (\ area\: :ref:`RID`, param\: :ref:`AreaParameter`, value\: :ref:`Variant`\ ) :ref:`🔗` -Sets the value of the given area parameter. See :ref:`AreaParameter` for the list of available parameters. +Sets the value of the given area parameter. .. rst-class:: classref-item-separator @@ -1737,7 +1737,7 @@ See :ref:`body_add_constant_torque()` **body_get_continuous_collision_detection_mode**\ (\ body\: :ref:`RID`\ ) |const| :ref:`🔗` -Returns the body's continuous collision detection mode (see :ref:`CCDMode`). +Returns the body's continuous collision detection mode. .. rst-class:: classref-item-separator @@ -1773,7 +1773,7 @@ Returns the maximum number of contacts that the body can report. See :ref:`body_ :ref:`BodyMode` **body_get_mode**\ (\ body\: :ref:`RID`\ ) |const| :ref:`🔗` -Returns the body's mode (see :ref:`BodyMode`). +Returns the body's mode. .. rst-class:: classref-item-separator @@ -1797,7 +1797,7 @@ Returns the ``ObjectID`` attached to the body. Use :ref:`@GlobalScope.instance_f :ref:`Variant` **body_get_param**\ (\ body\: :ref:`RID`, param\: :ref:`BodyParameter`\ ) |const| :ref:`🔗` -Returns the value of the given body parameter. See :ref:`BodyParameter` for the list of available parameters. +Returns the value of the given body parameter. .. rst-class:: classref-item-separator @@ -1857,7 +1857,7 @@ Returns the :ref:`RID` of the space assigned to the body. Returns an :ref:`Variant` **body_get_state**\ (\ body\: :ref:`RID`, state\: :ref:`BodyState`\ ) |const| :ref:`🔗` -Returns the value of the given state of the body. See :ref:`BodyState` for the list of available states. +Returns the value of the given state of the body. .. rst-class:: classref-item-separator @@ -1993,7 +1993,7 @@ See :ref:`body_add_constant_torque()`, mode\: :ref:`CCDMode`\ ) :ref:`🔗` -Sets the continuous collision detection mode using one of the :ref:`CCDMode` constants. +Sets the continuous collision detection mode. Continuous collision detection tries to predict where a moving body would collide in between physics updates, instead of moving it and correcting its movement if it collided. @@ -2041,7 +2041,7 @@ Sets the maximum number of contacts that the body can report. If ``amount`` is g |void| **body_set_mode**\ (\ body\: :ref:`RID`, mode\: :ref:`BodyMode`\ ) :ref:`🔗` -Sets the body's mode. See :ref:`BodyMode` for the list of available modes. +Sets the body's mode. .. rst-class:: classref-item-separator @@ -2067,7 +2067,7 @@ This method is called when the property :ref:`RigidBody2D.custom_integrator`, param\: :ref:`BodyParameter`, value\: :ref:`Variant`\ ) :ref:`🔗` -Sets the value of the given body parameter. See :ref:`BodyParameter` for the list of available parameters. +Sets the value of the given body parameter. .. rst-class:: classref-item-separator @@ -2145,7 +2145,7 @@ Adds the body to the given space, after removing the body from the previously as |void| **body_set_state**\ (\ body\: :ref:`RID`, state\: :ref:`BodyState`, value\: :ref:`Variant`\ ) :ref:`🔗` -Sets the value of a body's state. See :ref:`BodyState` for the list of available states. +Sets the value of a body's state. \ **Note:** The state change doesn't take effect immediately. The state will change on the next physics frame. @@ -2237,7 +2237,7 @@ Creates a 2D convex polygon shape in the physics server, and returns the :ref:`R :ref:`float` **damped_spring_joint_get_param**\ (\ joint\: :ref:`RID`, param\: :ref:`DampedSpringParam`\ ) |const| :ref:`🔗` -Returns the value of the given damped spring joint parameter. See :ref:`DampedSpringParam` for the list of available parameters. +Returns the value of the given damped spring joint parameter. .. rst-class:: classref-item-separator @@ -2249,7 +2249,7 @@ Returns the value of the given damped spring joint parameter. See :ref:`DampedSp |void| **damped_spring_joint_set_param**\ (\ joint\: :ref:`RID`, param\: :ref:`DampedSpringParam`, value\: :ref:`float`\ ) :ref:`🔗` -Sets the value of the given damped spring joint parameter. See :ref:`DampedSpringParam` for the list of available parameters. +Sets the value of the given damped spring joint parameter. .. rst-class:: classref-item-separator @@ -2273,7 +2273,7 @@ Destroys any of the objects created by PhysicsServer2D. If the :ref:`RID` **get_process_info**\ (\ process_info\: :ref:`ProcessInfo`\ ) :ref:`🔗` -Returns information about the current state of the 2D physics engine. See :ref:`ProcessInfo` for the list of available states. +Returns the value of a physics engine state specified by ``process_info``. .. rst-class:: classref-item-separator @@ -2321,7 +2321,7 @@ Sets whether the bodies attached to the :ref:`Joint2D` will colli :ref:`float` **joint_get_param**\ (\ joint\: :ref:`RID`, param\: :ref:`JointParam`\ ) |const| :ref:`🔗` -Returns the value of the given joint parameter. See :ref:`JointParam` for the list of available parameters. +Returns the value of the given joint parameter. .. rst-class:: classref-item-separator @@ -2333,7 +2333,7 @@ Returns the value of the given joint parameter. See :ref:`JointParam` **joint_get_type**\ (\ joint\: :ref:`RID`\ ) |const| :ref:`🔗` -Returns the joint's type (see :ref:`JointType`). +Returns the joint's type. .. rst-class:: classref-item-separator @@ -2393,7 +2393,7 @@ Makes the joint a pin joint. If ``body_b`` is an empty :ref:`RID`, th |void| **joint_set_param**\ (\ joint\: :ref:`RID`, param\: :ref:`JointParam`, value\: :ref:`float`\ ) :ref:`🔗` -Sets the value of the given joint parameter. See :ref:`JointParam` for the list of available parameters. +Sets the value of the given joint parameter. .. rst-class:: classref-item-separator @@ -2405,7 +2405,7 @@ Sets the value of the given joint parameter. See :ref:`JointParam` **pin_joint_get_flag**\ (\ joint\: :ref:`RID`, flag\: :ref:`PinJointFlag`\ ) |const| :ref:`🔗` -Gets a pin joint flag (see :ref:`PinJointFlag` constants). +Gets a pin joint flag. .. rst-class:: classref-item-separator @@ -2417,7 +2417,7 @@ Gets a pin joint flag (see :ref:`PinJointFlag :ref:`float` **pin_joint_get_param**\ (\ joint\: :ref:`RID`, param\: :ref:`PinJointParam`\ ) |const| :ref:`🔗` -Returns the value of a pin joint parameter. See :ref:`PinJointParam` for a list of available parameters. +Returns the value of a pin joint parameter. .. rst-class:: classref-item-separator @@ -2429,7 +2429,7 @@ Returns the value of a pin joint parameter. See :ref:`PinJointParam`, flag\: :ref:`PinJointFlag`, enabled\: :ref:`bool`\ ) :ref:`🔗` -Sets a pin joint flag (see :ref:`PinJointFlag` constants). +Sets a pin joint flag. .. rst-class:: classref-item-separator @@ -2441,7 +2441,7 @@ Sets a pin joint flag (see :ref:`PinJointFlag |void| **pin_joint_set_param**\ (\ joint\: :ref:`RID`, param\: :ref:`PinJointParam`, value\: :ref:`float`\ ) :ref:`🔗` -Sets a pin joint parameter. See :ref:`PinJointParam` for a list of available parameters. +Sets a pin joint parameter. .. rst-class:: classref-item-separator @@ -2513,7 +2513,7 @@ Returns the shape data that defines the configuration of the shape, such as the :ref:`ShapeType` **shape_get_type**\ (\ shape\: :ref:`RID`\ ) |const| :ref:`🔗` -Returns the shape's type (see :ref:`ShapeType`). +Returns the shape's type. .. rst-class:: classref-item-separator @@ -2579,7 +2579,7 @@ Returns the state of a space, a :ref:`PhysicsDirectSpaceState2D` **space_get_param**\ (\ space\: :ref:`RID`, param\: :ref:`SpaceParameter`\ ) |const| :ref:`🔗` -Returns the value of the given space parameter. See :ref:`SpaceParameter` for the list of available parameters. +Returns the value of the given space parameter. .. rst-class:: classref-item-separator @@ -2615,7 +2615,7 @@ Activates or deactivates the space. If ``active`` is ``false``, then the physics |void| **space_set_param**\ (\ space\: :ref:`RID`, param\: :ref:`SpaceParameter`, value\: :ref:`float`\ ) :ref:`🔗` -Sets the value of the given space parameter. See :ref:`SpaceParameter` for the list of available parameters. +Sets the value of the given space parameter. .. rst-class:: classref-item-separator @@ -2630,6 +2630,7 @@ Sets the value of the given space parameter. See :ref:`SpaceParameter` that identifies it. Use :ref:`shape_set_data()` to set the shape's normal direction and distance properties. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_physicsserver2dextension.rst b/classes/class_physicsserver2dextension.rst index 07fe2fa66..1ab40bc36 100644 --- a/classes/class_physicsserver2dextension.rst +++ b/classes/class_physicsserver2dextension.rst @@ -31,287 +31,287 @@ Methods .. table:: :widths: auto - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_area_add_shape`\ (\ area\: :ref:`RID`, shape\: :ref:`RID`, transform\: :ref:`Transform2D`, disabled\: :ref:`bool`\ ) |virtual| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_area_attach_canvas_instance_id`\ (\ area\: :ref:`RID`, id\: :ref:`int`\ ) |virtual| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_area_attach_object_instance_id`\ (\ area\: :ref:`RID`, id\: :ref:`int`\ ) |virtual| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_area_clear_shapes`\ (\ area\: :ref:`RID`\ ) |virtual| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`RID` | :ref:`_area_create`\ (\ ) |virtual| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`_area_get_canvas_instance_id`\ (\ area\: :ref:`RID`\ ) |virtual| |const| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`_area_get_collision_layer`\ (\ area\: :ref:`RID`\ ) |virtual| |const| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`_area_get_collision_mask`\ (\ area\: :ref:`RID`\ ) |virtual| |const| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`_area_get_object_instance_id`\ (\ area\: :ref:`RID`\ ) |virtual| |const| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Variant` | :ref:`_area_get_param`\ (\ area\: :ref:`RID`, param\: :ref:`AreaParameter`\ ) |virtual| |const| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`RID` | :ref:`_area_get_shape`\ (\ area\: :ref:`RID`, shape_idx\: :ref:`int`\ ) |virtual| |const| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`_area_get_shape_count`\ (\ area\: :ref:`RID`\ ) |virtual| |const| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Transform2D` | :ref:`_area_get_shape_transform`\ (\ area\: :ref:`RID`, shape_idx\: :ref:`int`\ ) |virtual| |const| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`RID` | :ref:`_area_get_space`\ (\ area\: :ref:`RID`\ ) |virtual| |const| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Transform2D` | :ref:`_area_get_transform`\ (\ area\: :ref:`RID`\ ) |virtual| |const| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_area_remove_shape`\ (\ area\: :ref:`RID`, shape_idx\: :ref:`int`\ ) |virtual| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_area_set_area_monitor_callback`\ (\ area\: :ref:`RID`, callback\: :ref:`Callable`\ ) |virtual| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_area_set_collision_layer`\ (\ area\: :ref:`RID`, layer\: :ref:`int`\ ) |virtual| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_area_set_collision_mask`\ (\ area\: :ref:`RID`, mask\: :ref:`int`\ ) |virtual| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_area_set_monitor_callback`\ (\ area\: :ref:`RID`, callback\: :ref:`Callable`\ ) |virtual| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_area_set_monitorable`\ (\ area\: :ref:`RID`, monitorable\: :ref:`bool`\ ) |virtual| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_area_set_param`\ (\ area\: :ref:`RID`, param\: :ref:`AreaParameter`, value\: :ref:`Variant`\ ) |virtual| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_area_set_pickable`\ (\ area\: :ref:`RID`, pickable\: :ref:`bool`\ ) |virtual| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_area_set_shape`\ (\ area\: :ref:`RID`, shape_idx\: :ref:`int`, shape\: :ref:`RID`\ ) |virtual| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_area_set_shape_disabled`\ (\ area\: :ref:`RID`, shape_idx\: :ref:`int`, disabled\: :ref:`bool`\ ) |virtual| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_area_set_shape_transform`\ (\ area\: :ref:`RID`, shape_idx\: :ref:`int`, transform\: :ref:`Transform2D`\ ) |virtual| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_area_set_space`\ (\ area\: :ref:`RID`, space\: :ref:`RID`\ ) |virtual| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_area_set_transform`\ (\ area\: :ref:`RID`, transform\: :ref:`Transform2D`\ ) |virtual| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_body_add_collision_exception`\ (\ body\: :ref:`RID`, excepted_body\: :ref:`RID`\ ) |virtual| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_body_add_constant_central_force`\ (\ body\: :ref:`RID`, force\: :ref:`Vector2`\ ) |virtual| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_body_add_constant_force`\ (\ body\: :ref:`RID`, force\: :ref:`Vector2`, position\: :ref:`Vector2`\ ) |virtual| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_body_add_constant_torque`\ (\ body\: :ref:`RID`, torque\: :ref:`float`\ ) |virtual| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_body_add_shape`\ (\ body\: :ref:`RID`, shape\: :ref:`RID`, transform\: :ref:`Transform2D`, disabled\: :ref:`bool`\ ) |virtual| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_body_apply_central_force`\ (\ body\: :ref:`RID`, force\: :ref:`Vector2`\ ) |virtual| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_body_apply_central_impulse`\ (\ body\: :ref:`RID`, impulse\: :ref:`Vector2`\ ) |virtual| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_body_apply_force`\ (\ body\: :ref:`RID`, force\: :ref:`Vector2`, position\: :ref:`Vector2`\ ) |virtual| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_body_apply_impulse`\ (\ body\: :ref:`RID`, impulse\: :ref:`Vector2`, position\: :ref:`Vector2`\ ) |virtual| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_body_apply_torque`\ (\ body\: :ref:`RID`, torque\: :ref:`float`\ ) |virtual| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_body_apply_torque_impulse`\ (\ body\: :ref:`RID`, impulse\: :ref:`float`\ ) |virtual| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_body_attach_canvas_instance_id`\ (\ body\: :ref:`RID`, id\: :ref:`int`\ ) |virtual| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_body_attach_object_instance_id`\ (\ body\: :ref:`RID`, id\: :ref:`int`\ ) |virtual| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_body_clear_shapes`\ (\ body\: :ref:`RID`\ ) |virtual| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`_body_collide_shape`\ (\ body\: :ref:`RID`, body_shape\: :ref:`int`, shape\: :ref:`RID`, shape_xform\: :ref:`Transform2D`, motion\: :ref:`Vector2`, results\: ``void*``, result_max\: :ref:`int`, result_count\: ``int32_t*``\ ) |virtual| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`RID` | :ref:`_body_create`\ (\ ) |virtual| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`_body_get_canvas_instance_id`\ (\ body\: :ref:`RID`\ ) |virtual| |const| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Array`\[:ref:`RID`\] | :ref:`_body_get_collision_exceptions`\ (\ body\: :ref:`RID`\ ) |virtual| |const| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`_body_get_collision_layer`\ (\ body\: :ref:`RID`\ ) |virtual| |const| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`_body_get_collision_mask`\ (\ body\: :ref:`RID`\ ) |virtual| |const| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`float` | :ref:`_body_get_collision_priority`\ (\ body\: :ref:`RID`\ ) |virtual| |const| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Vector2` | :ref:`_body_get_constant_force`\ (\ body\: :ref:`RID`\ ) |virtual| |const| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`float` | :ref:`_body_get_constant_torque`\ (\ body\: :ref:`RID`\ ) |virtual| |const| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`float` | :ref:`_body_get_contacts_reported_depth_threshold`\ (\ body\: :ref:`RID`\ ) |virtual| |const| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`CCDMode` | :ref:`_body_get_continuous_collision_detection_mode`\ (\ body\: :ref:`RID`\ ) |virtual| |const| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`PhysicsDirectBodyState2D` | :ref:`_body_get_direct_state`\ (\ body\: :ref:`RID`\ ) |virtual| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`_body_get_max_contacts_reported`\ (\ body\: :ref:`RID`\ ) |virtual| |const| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`BodyMode` | :ref:`_body_get_mode`\ (\ body\: :ref:`RID`\ ) |virtual| |const| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`_body_get_object_instance_id`\ (\ body\: :ref:`RID`\ ) |virtual| |const| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Variant` | :ref:`_body_get_param`\ (\ body\: :ref:`RID`, param\: :ref:`BodyParameter`\ ) |virtual| |const| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`RID` | :ref:`_body_get_shape`\ (\ body\: :ref:`RID`, shape_idx\: :ref:`int`\ ) |virtual| |const| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`_body_get_shape_count`\ (\ body\: :ref:`RID`\ ) |virtual| |const| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Transform2D` | :ref:`_body_get_shape_transform`\ (\ body\: :ref:`RID`, shape_idx\: :ref:`int`\ ) |virtual| |const| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`RID` | :ref:`_body_get_space`\ (\ body\: :ref:`RID`\ ) |virtual| |const| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Variant` | :ref:`_body_get_state`\ (\ body\: :ref:`RID`, state\: :ref:`BodyState`\ ) |virtual| |const| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`_body_is_omitting_force_integration`\ (\ body\: :ref:`RID`\ ) |virtual| |const| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_body_remove_collision_exception`\ (\ body\: :ref:`RID`, excepted_body\: :ref:`RID`\ ) |virtual| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_body_remove_shape`\ (\ body\: :ref:`RID`, shape_idx\: :ref:`int`\ ) |virtual| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_body_reset_mass_properties`\ (\ body\: :ref:`RID`\ ) |virtual| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_body_set_axis_velocity`\ (\ body\: :ref:`RID`, axis_velocity\: :ref:`Vector2`\ ) |virtual| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_body_set_collision_layer`\ (\ body\: :ref:`RID`, layer\: :ref:`int`\ ) |virtual| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_body_set_collision_mask`\ (\ body\: :ref:`RID`, mask\: :ref:`int`\ ) |virtual| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_body_set_collision_priority`\ (\ body\: :ref:`RID`, priority\: :ref:`float`\ ) |virtual| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_body_set_constant_force`\ (\ body\: :ref:`RID`, force\: :ref:`Vector2`\ ) |virtual| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_body_set_constant_torque`\ (\ body\: :ref:`RID`, torque\: :ref:`float`\ ) |virtual| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_body_set_contacts_reported_depth_threshold`\ (\ body\: :ref:`RID`, threshold\: :ref:`float`\ ) |virtual| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_body_set_continuous_collision_detection_mode`\ (\ body\: :ref:`RID`, mode\: :ref:`CCDMode`\ ) |virtual| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_body_set_force_integration_callback`\ (\ body\: :ref:`RID`, callable\: :ref:`Callable`, userdata\: :ref:`Variant`\ ) |virtual| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_body_set_max_contacts_reported`\ (\ body\: :ref:`RID`, amount\: :ref:`int`\ ) |virtual| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_body_set_mode`\ (\ body\: :ref:`RID`, mode\: :ref:`BodyMode`\ ) |virtual| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_body_set_omit_force_integration`\ (\ body\: :ref:`RID`, enable\: :ref:`bool`\ ) |virtual| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_body_set_param`\ (\ body\: :ref:`RID`, param\: :ref:`BodyParameter`, value\: :ref:`Variant`\ ) |virtual| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_body_set_pickable`\ (\ body\: :ref:`RID`, pickable\: :ref:`bool`\ ) |virtual| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_body_set_shape`\ (\ body\: :ref:`RID`, shape_idx\: :ref:`int`, shape\: :ref:`RID`\ ) |virtual| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_body_set_shape_as_one_way_collision`\ (\ body\: :ref:`RID`, shape_idx\: :ref:`int`, enable\: :ref:`bool`, margin\: :ref:`float`\ ) |virtual| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_body_set_shape_disabled`\ (\ body\: :ref:`RID`, shape_idx\: :ref:`int`, disabled\: :ref:`bool`\ ) |virtual| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_body_set_shape_transform`\ (\ body\: :ref:`RID`, shape_idx\: :ref:`int`, transform\: :ref:`Transform2D`\ ) |virtual| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_body_set_space`\ (\ body\: :ref:`RID`, space\: :ref:`RID`\ ) |virtual| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_body_set_state`\ (\ body\: :ref:`RID`, state\: :ref:`BodyState`, value\: :ref:`Variant`\ ) |virtual| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_body_set_state_sync_callback`\ (\ body\: :ref:`RID`, callable\: :ref:`Callable`\ ) |virtual| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`_body_test_motion`\ (\ body\: :ref:`RID`, from\: :ref:`Transform2D`, motion\: :ref:`Vector2`, margin\: :ref:`float`, collide_separation_ray\: :ref:`bool`, recovery_as_collision\: :ref:`bool`, result\: ``PhysicsServer2DExtensionMotionResult*``\ ) |virtual| |const| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`RID` | :ref:`_capsule_shape_create`\ (\ ) |virtual| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`RID` | :ref:`_circle_shape_create`\ (\ ) |virtual| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`RID` | :ref:`_concave_polygon_shape_create`\ (\ ) |virtual| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`RID` | :ref:`_convex_polygon_shape_create`\ (\ ) |virtual| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`float` | :ref:`_damped_spring_joint_get_param`\ (\ joint\: :ref:`RID`, param\: :ref:`DampedSpringParam`\ ) |virtual| |const| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_damped_spring_joint_set_param`\ (\ joint\: :ref:`RID`, param\: :ref:`DampedSpringParam`, value\: :ref:`float`\ ) |virtual| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_end_sync`\ (\ ) |virtual| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_finish`\ (\ ) |virtual| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_flush_queries`\ (\ ) |virtual| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_free_rid`\ (\ rid\: :ref:`RID`\ ) |virtual| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`_get_process_info`\ (\ process_info\: :ref:`ProcessInfo`\ ) |virtual| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_init`\ (\ ) |virtual| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`_is_flushing_queries`\ (\ ) |virtual| |const| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_joint_clear`\ (\ joint\: :ref:`RID`\ ) |virtual| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`RID` | :ref:`_joint_create`\ (\ ) |virtual| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_joint_disable_collisions_between_bodies`\ (\ joint\: :ref:`RID`, disable\: :ref:`bool`\ ) |virtual| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`float` | :ref:`_joint_get_param`\ (\ joint\: :ref:`RID`, param\: :ref:`JointParam`\ ) |virtual| |const| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`JointType` | :ref:`_joint_get_type`\ (\ joint\: :ref:`RID`\ ) |virtual| |const| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`_joint_is_disabled_collisions_between_bodies`\ (\ joint\: :ref:`RID`\ ) |virtual| |const| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_joint_make_damped_spring`\ (\ joint\: :ref:`RID`, anchor_a\: :ref:`Vector2`, anchor_b\: :ref:`Vector2`, body_a\: :ref:`RID`, body_b\: :ref:`RID`\ ) |virtual| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_joint_make_groove`\ (\ joint\: :ref:`RID`, a_groove1\: :ref:`Vector2`, a_groove2\: :ref:`Vector2`, b_anchor\: :ref:`Vector2`, body_a\: :ref:`RID`, body_b\: :ref:`RID`\ ) |virtual| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_joint_make_pin`\ (\ joint\: :ref:`RID`, anchor\: :ref:`Vector2`, body_a\: :ref:`RID`, body_b\: :ref:`RID`\ ) |virtual| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_joint_set_param`\ (\ joint\: :ref:`RID`, param\: :ref:`JointParam`, value\: :ref:`float`\ ) |virtual| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`_pin_joint_get_flag`\ (\ joint\: :ref:`RID`, flag\: :ref:`PinJointFlag`\ ) |virtual| |const| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`float` | :ref:`_pin_joint_get_param`\ (\ joint\: :ref:`RID`, param\: :ref:`PinJointParam`\ ) |virtual| |const| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_pin_joint_set_flag`\ (\ joint\: :ref:`RID`, flag\: :ref:`PinJointFlag`, enabled\: :ref:`bool`\ ) |virtual| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_pin_joint_set_param`\ (\ joint\: :ref:`RID`, param\: :ref:`PinJointParam`, value\: :ref:`float`\ ) |virtual| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`RID` | :ref:`_rectangle_shape_create`\ (\ ) |virtual| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`RID` | :ref:`_segment_shape_create`\ (\ ) |virtual| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`RID` | :ref:`_separation_ray_shape_create`\ (\ ) |virtual| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_set_active`\ (\ active\: :ref:`bool`\ ) |virtual| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`_shape_collide`\ (\ shape_A\: :ref:`RID`, xform_A\: :ref:`Transform2D`, motion_A\: :ref:`Vector2`, shape_B\: :ref:`RID`, xform_B\: :ref:`Transform2D`, motion_B\: :ref:`Vector2`, results\: ``void*``, result_max\: :ref:`int`, result_count\: ``int32_t*``\ ) |virtual| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`float` | :ref:`_shape_get_custom_solver_bias`\ (\ shape\: :ref:`RID`\ ) |virtual| |const| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Variant` | :ref:`_shape_get_data`\ (\ shape\: :ref:`RID`\ ) |virtual| |const| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`ShapeType` | :ref:`_shape_get_type`\ (\ shape\: :ref:`RID`\ ) |virtual| |const| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_shape_set_custom_solver_bias`\ (\ shape\: :ref:`RID`, bias\: :ref:`float`\ ) |virtual| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_shape_set_data`\ (\ shape\: :ref:`RID`, data\: :ref:`Variant`\ ) |virtual| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`RID` | :ref:`_space_create`\ (\ ) |virtual| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`_space_get_contact_count`\ (\ space\: :ref:`RID`\ ) |virtual| |const| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`PackedVector2Array` | :ref:`_space_get_contacts`\ (\ space\: :ref:`RID`\ ) |virtual| |const| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`PhysicsDirectSpaceState2D` | :ref:`_space_get_direct_state`\ (\ space\: :ref:`RID`\ ) |virtual| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`float` | :ref:`_space_get_param`\ (\ space\: :ref:`RID`, param\: :ref:`SpaceParameter`\ ) |virtual| |const| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`_space_is_active`\ (\ space\: :ref:`RID`\ ) |virtual| |const| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_space_set_active`\ (\ space\: :ref:`RID`, active\: :ref:`bool`\ ) |virtual| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_space_set_debug_contacts`\ (\ space\: :ref:`RID`, max_contacts\: :ref:`int`\ ) |virtual| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_space_set_param`\ (\ space\: :ref:`RID`, param\: :ref:`SpaceParameter`, value\: :ref:`float`\ ) |virtual| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_step`\ (\ step\: :ref:`float`\ ) |virtual| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_sync`\ (\ ) |virtual| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`RID` | :ref:`_world_boundary_shape_create`\ (\ ) |virtual| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`body_test_motion_is_excluding_body`\ (\ body\: :ref:`RID`\ ) |const| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`body_test_motion_is_excluding_object`\ (\ object\: :ref:`int`\ ) |const| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_area_add_shape`\ (\ area\: :ref:`RID`, shape\: :ref:`RID`, transform\: :ref:`Transform2D`, disabled\: :ref:`bool`\ ) |virtual| |required| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_area_attach_canvas_instance_id`\ (\ area\: :ref:`RID`, id\: :ref:`int`\ ) |virtual| |required| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_area_attach_object_instance_id`\ (\ area\: :ref:`RID`, id\: :ref:`int`\ ) |virtual| |required| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_area_clear_shapes`\ (\ area\: :ref:`RID`\ ) |virtual| |required| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`RID` | :ref:`_area_create`\ (\ ) |virtual| |required| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`_area_get_canvas_instance_id`\ (\ area\: :ref:`RID`\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`_area_get_collision_layer`\ (\ area\: :ref:`RID`\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`_area_get_collision_mask`\ (\ area\: :ref:`RID`\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`_area_get_object_instance_id`\ (\ area\: :ref:`RID`\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Variant` | :ref:`_area_get_param`\ (\ area\: :ref:`RID`, param\: :ref:`AreaParameter`\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`RID` | :ref:`_area_get_shape`\ (\ area\: :ref:`RID`, shape_idx\: :ref:`int`\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`_area_get_shape_count`\ (\ area\: :ref:`RID`\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Transform2D` | :ref:`_area_get_shape_transform`\ (\ area\: :ref:`RID`, shape_idx\: :ref:`int`\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`RID` | :ref:`_area_get_space`\ (\ area\: :ref:`RID`\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Transform2D` | :ref:`_area_get_transform`\ (\ area\: :ref:`RID`\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_area_remove_shape`\ (\ area\: :ref:`RID`, shape_idx\: :ref:`int`\ ) |virtual| |required| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_area_set_area_monitor_callback`\ (\ area\: :ref:`RID`, callback\: :ref:`Callable`\ ) |virtual| |required| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_area_set_collision_layer`\ (\ area\: :ref:`RID`, layer\: :ref:`int`\ ) |virtual| |required| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_area_set_collision_mask`\ (\ area\: :ref:`RID`, mask\: :ref:`int`\ ) |virtual| |required| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_area_set_monitor_callback`\ (\ area\: :ref:`RID`, callback\: :ref:`Callable`\ ) |virtual| |required| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_area_set_monitorable`\ (\ area\: :ref:`RID`, monitorable\: :ref:`bool`\ ) |virtual| |required| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_area_set_param`\ (\ area\: :ref:`RID`, param\: :ref:`AreaParameter`, value\: :ref:`Variant`\ ) |virtual| |required| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_area_set_pickable`\ (\ area\: :ref:`RID`, pickable\: :ref:`bool`\ ) |virtual| |required| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_area_set_shape`\ (\ area\: :ref:`RID`, shape_idx\: :ref:`int`, shape\: :ref:`RID`\ ) |virtual| |required| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_area_set_shape_disabled`\ (\ area\: :ref:`RID`, shape_idx\: :ref:`int`, disabled\: :ref:`bool`\ ) |virtual| |required| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_area_set_shape_transform`\ (\ area\: :ref:`RID`, shape_idx\: :ref:`int`, transform\: :ref:`Transform2D`\ ) |virtual| |required| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_area_set_space`\ (\ area\: :ref:`RID`, space\: :ref:`RID`\ ) |virtual| |required| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_area_set_transform`\ (\ area\: :ref:`RID`, transform\: :ref:`Transform2D`\ ) |virtual| |required| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_body_add_collision_exception`\ (\ body\: :ref:`RID`, excepted_body\: :ref:`RID`\ ) |virtual| |required| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_body_add_constant_central_force`\ (\ body\: :ref:`RID`, force\: :ref:`Vector2`\ ) |virtual| |required| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_body_add_constant_force`\ (\ body\: :ref:`RID`, force\: :ref:`Vector2`, position\: :ref:`Vector2`\ ) |virtual| |required| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_body_add_constant_torque`\ (\ body\: :ref:`RID`, torque\: :ref:`float`\ ) |virtual| |required| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_body_add_shape`\ (\ body\: :ref:`RID`, shape\: :ref:`RID`, transform\: :ref:`Transform2D`, disabled\: :ref:`bool`\ ) |virtual| |required| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_body_apply_central_force`\ (\ body\: :ref:`RID`, force\: :ref:`Vector2`\ ) |virtual| |required| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_body_apply_central_impulse`\ (\ body\: :ref:`RID`, impulse\: :ref:`Vector2`\ ) |virtual| |required| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_body_apply_force`\ (\ body\: :ref:`RID`, force\: :ref:`Vector2`, position\: :ref:`Vector2`\ ) |virtual| |required| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_body_apply_impulse`\ (\ body\: :ref:`RID`, impulse\: :ref:`Vector2`, position\: :ref:`Vector2`\ ) |virtual| |required| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_body_apply_torque`\ (\ body\: :ref:`RID`, torque\: :ref:`float`\ ) |virtual| |required| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_body_apply_torque_impulse`\ (\ body\: :ref:`RID`, impulse\: :ref:`float`\ ) |virtual| |required| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_body_attach_canvas_instance_id`\ (\ body\: :ref:`RID`, id\: :ref:`int`\ ) |virtual| |required| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_body_attach_object_instance_id`\ (\ body\: :ref:`RID`, id\: :ref:`int`\ ) |virtual| |required| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_body_clear_shapes`\ (\ body\: :ref:`RID`\ ) |virtual| |required| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`_body_collide_shape`\ (\ body\: :ref:`RID`, body_shape\: :ref:`int`, shape\: :ref:`RID`, shape_xform\: :ref:`Transform2D`, motion\: :ref:`Vector2`, results\: ``void*``, result_max\: :ref:`int`, result_count\: ``int32_t*``\ ) |virtual| |required| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`RID` | :ref:`_body_create`\ (\ ) |virtual| |required| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`_body_get_canvas_instance_id`\ (\ body\: :ref:`RID`\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Array`\[:ref:`RID`\] | :ref:`_body_get_collision_exceptions`\ (\ body\: :ref:`RID`\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`_body_get_collision_layer`\ (\ body\: :ref:`RID`\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`_body_get_collision_mask`\ (\ body\: :ref:`RID`\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`_body_get_collision_priority`\ (\ body\: :ref:`RID`\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Vector2` | :ref:`_body_get_constant_force`\ (\ body\: :ref:`RID`\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`_body_get_constant_torque`\ (\ body\: :ref:`RID`\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`_body_get_contacts_reported_depth_threshold`\ (\ body\: :ref:`RID`\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`CCDMode` | :ref:`_body_get_continuous_collision_detection_mode`\ (\ body\: :ref:`RID`\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`PhysicsDirectBodyState2D` | :ref:`_body_get_direct_state`\ (\ body\: :ref:`RID`\ ) |virtual| |required| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`_body_get_max_contacts_reported`\ (\ body\: :ref:`RID`\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`BodyMode` | :ref:`_body_get_mode`\ (\ body\: :ref:`RID`\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`_body_get_object_instance_id`\ (\ body\: :ref:`RID`\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Variant` | :ref:`_body_get_param`\ (\ body\: :ref:`RID`, param\: :ref:`BodyParameter`\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`RID` | :ref:`_body_get_shape`\ (\ body\: :ref:`RID`, shape_idx\: :ref:`int`\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`_body_get_shape_count`\ (\ body\: :ref:`RID`\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Transform2D` | :ref:`_body_get_shape_transform`\ (\ body\: :ref:`RID`, shape_idx\: :ref:`int`\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`RID` | :ref:`_body_get_space`\ (\ body\: :ref:`RID`\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Variant` | :ref:`_body_get_state`\ (\ body\: :ref:`RID`, state\: :ref:`BodyState`\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`_body_is_omitting_force_integration`\ (\ body\: :ref:`RID`\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_body_remove_collision_exception`\ (\ body\: :ref:`RID`, excepted_body\: :ref:`RID`\ ) |virtual| |required| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_body_remove_shape`\ (\ body\: :ref:`RID`, shape_idx\: :ref:`int`\ ) |virtual| |required| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_body_reset_mass_properties`\ (\ body\: :ref:`RID`\ ) |virtual| |required| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_body_set_axis_velocity`\ (\ body\: :ref:`RID`, axis_velocity\: :ref:`Vector2`\ ) |virtual| |required| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_body_set_collision_layer`\ (\ body\: :ref:`RID`, layer\: :ref:`int`\ ) |virtual| |required| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_body_set_collision_mask`\ (\ body\: :ref:`RID`, mask\: :ref:`int`\ ) |virtual| |required| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_body_set_collision_priority`\ (\ body\: :ref:`RID`, priority\: :ref:`float`\ ) |virtual| |required| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_body_set_constant_force`\ (\ body\: :ref:`RID`, force\: :ref:`Vector2`\ ) |virtual| |required| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_body_set_constant_torque`\ (\ body\: :ref:`RID`, torque\: :ref:`float`\ ) |virtual| |required| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_body_set_contacts_reported_depth_threshold`\ (\ body\: :ref:`RID`, threshold\: :ref:`float`\ ) |virtual| |required| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_body_set_continuous_collision_detection_mode`\ (\ body\: :ref:`RID`, mode\: :ref:`CCDMode`\ ) |virtual| |required| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_body_set_force_integration_callback`\ (\ body\: :ref:`RID`, callable\: :ref:`Callable`, userdata\: :ref:`Variant`\ ) |virtual| |required| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_body_set_max_contacts_reported`\ (\ body\: :ref:`RID`, amount\: :ref:`int`\ ) |virtual| |required| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_body_set_mode`\ (\ body\: :ref:`RID`, mode\: :ref:`BodyMode`\ ) |virtual| |required| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_body_set_omit_force_integration`\ (\ body\: :ref:`RID`, enable\: :ref:`bool`\ ) |virtual| |required| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_body_set_param`\ (\ body\: :ref:`RID`, param\: :ref:`BodyParameter`, value\: :ref:`Variant`\ ) |virtual| |required| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_body_set_pickable`\ (\ body\: :ref:`RID`, pickable\: :ref:`bool`\ ) |virtual| |required| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_body_set_shape`\ (\ body\: :ref:`RID`, shape_idx\: :ref:`int`, shape\: :ref:`RID`\ ) |virtual| |required| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_body_set_shape_as_one_way_collision`\ (\ body\: :ref:`RID`, shape_idx\: :ref:`int`, enable\: :ref:`bool`, margin\: :ref:`float`\ ) |virtual| |required| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_body_set_shape_disabled`\ (\ body\: :ref:`RID`, shape_idx\: :ref:`int`, disabled\: :ref:`bool`\ ) |virtual| |required| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_body_set_shape_transform`\ (\ body\: :ref:`RID`, shape_idx\: :ref:`int`, transform\: :ref:`Transform2D`\ ) |virtual| |required| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_body_set_space`\ (\ body\: :ref:`RID`, space\: :ref:`RID`\ ) |virtual| |required| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_body_set_state`\ (\ body\: :ref:`RID`, state\: :ref:`BodyState`, value\: :ref:`Variant`\ ) |virtual| |required| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_body_set_state_sync_callback`\ (\ body\: :ref:`RID`, callable\: :ref:`Callable`\ ) |virtual| |required| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`_body_test_motion`\ (\ body\: :ref:`RID`, from\: :ref:`Transform2D`, motion\: :ref:`Vector2`, margin\: :ref:`float`, collide_separation_ray\: :ref:`bool`, recovery_as_collision\: :ref:`bool`, result\: ``PhysicsServer2DExtensionMotionResult*``\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`RID` | :ref:`_capsule_shape_create`\ (\ ) |virtual| |required| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`RID` | :ref:`_circle_shape_create`\ (\ ) |virtual| |required| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`RID` | :ref:`_concave_polygon_shape_create`\ (\ ) |virtual| |required| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`RID` | :ref:`_convex_polygon_shape_create`\ (\ ) |virtual| |required| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`_damped_spring_joint_get_param`\ (\ joint\: :ref:`RID`, param\: :ref:`DampedSpringParam`\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_damped_spring_joint_set_param`\ (\ joint\: :ref:`RID`, param\: :ref:`DampedSpringParam`, value\: :ref:`float`\ ) |virtual| |required| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_end_sync`\ (\ ) |virtual| |required| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_finish`\ (\ ) |virtual| |required| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_flush_queries`\ (\ ) |virtual| |required| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_free_rid`\ (\ rid\: :ref:`RID`\ ) |virtual| |required| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`_get_process_info`\ (\ process_info\: :ref:`ProcessInfo`\ ) |virtual| |required| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_init`\ (\ ) |virtual| |required| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`_is_flushing_queries`\ (\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_joint_clear`\ (\ joint\: :ref:`RID`\ ) |virtual| |required| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`RID` | :ref:`_joint_create`\ (\ ) |virtual| |required| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_joint_disable_collisions_between_bodies`\ (\ joint\: :ref:`RID`, disable\: :ref:`bool`\ ) |virtual| |required| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`_joint_get_param`\ (\ joint\: :ref:`RID`, param\: :ref:`JointParam`\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`JointType` | :ref:`_joint_get_type`\ (\ joint\: :ref:`RID`\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`_joint_is_disabled_collisions_between_bodies`\ (\ joint\: :ref:`RID`\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_joint_make_damped_spring`\ (\ joint\: :ref:`RID`, anchor_a\: :ref:`Vector2`, anchor_b\: :ref:`Vector2`, body_a\: :ref:`RID`, body_b\: :ref:`RID`\ ) |virtual| |required| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_joint_make_groove`\ (\ joint\: :ref:`RID`, a_groove1\: :ref:`Vector2`, a_groove2\: :ref:`Vector2`, b_anchor\: :ref:`Vector2`, body_a\: :ref:`RID`, body_b\: :ref:`RID`\ ) |virtual| |required| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_joint_make_pin`\ (\ joint\: :ref:`RID`, anchor\: :ref:`Vector2`, body_a\: :ref:`RID`, body_b\: :ref:`RID`\ ) |virtual| |required| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_joint_set_param`\ (\ joint\: :ref:`RID`, param\: :ref:`JointParam`, value\: :ref:`float`\ ) |virtual| |required| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`_pin_joint_get_flag`\ (\ joint\: :ref:`RID`, flag\: :ref:`PinJointFlag`\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`_pin_joint_get_param`\ (\ joint\: :ref:`RID`, param\: :ref:`PinJointParam`\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_pin_joint_set_flag`\ (\ joint\: :ref:`RID`, flag\: :ref:`PinJointFlag`, enabled\: :ref:`bool`\ ) |virtual| |required| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_pin_joint_set_param`\ (\ joint\: :ref:`RID`, param\: :ref:`PinJointParam`, value\: :ref:`float`\ ) |virtual| |required| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`RID` | :ref:`_rectangle_shape_create`\ (\ ) |virtual| |required| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`RID` | :ref:`_segment_shape_create`\ (\ ) |virtual| |required| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`RID` | :ref:`_separation_ray_shape_create`\ (\ ) |virtual| |required| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_set_active`\ (\ active\: :ref:`bool`\ ) |virtual| |required| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`_shape_collide`\ (\ shape_A\: :ref:`RID`, xform_A\: :ref:`Transform2D`, motion_A\: :ref:`Vector2`, shape_B\: :ref:`RID`, xform_B\: :ref:`Transform2D`, motion_B\: :ref:`Vector2`, results\: ``void*``, result_max\: :ref:`int`, result_count\: ``int32_t*``\ ) |virtual| |required| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`_shape_get_custom_solver_bias`\ (\ shape\: :ref:`RID`\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Variant` | :ref:`_shape_get_data`\ (\ shape\: :ref:`RID`\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`ShapeType` | :ref:`_shape_get_type`\ (\ shape\: :ref:`RID`\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_shape_set_custom_solver_bias`\ (\ shape\: :ref:`RID`, bias\: :ref:`float`\ ) |virtual| |required| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_shape_set_data`\ (\ shape\: :ref:`RID`, data\: :ref:`Variant`\ ) |virtual| |required| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`RID` | :ref:`_space_create`\ (\ ) |virtual| |required| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`_space_get_contact_count`\ (\ space\: :ref:`RID`\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`PackedVector2Array` | :ref:`_space_get_contacts`\ (\ space\: :ref:`RID`\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`PhysicsDirectSpaceState2D` | :ref:`_space_get_direct_state`\ (\ space\: :ref:`RID`\ ) |virtual| |required| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`_space_get_param`\ (\ space\: :ref:`RID`, param\: :ref:`SpaceParameter`\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`_space_is_active`\ (\ space\: :ref:`RID`\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_space_set_active`\ (\ space\: :ref:`RID`, active\: :ref:`bool`\ ) |virtual| |required| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_space_set_debug_contacts`\ (\ space\: :ref:`RID`, max_contacts\: :ref:`int`\ ) |virtual| |required| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_space_set_param`\ (\ space\: :ref:`RID`, param\: :ref:`SpaceParameter`, value\: :ref:`float`\ ) |virtual| |required| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_step`\ (\ step\: :ref:`float`\ ) |virtual| |required| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_sync`\ (\ ) |virtual| |required| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`RID` | :ref:`_world_boundary_shape_create`\ (\ ) |virtual| |required| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`body_test_motion_is_excluding_body`\ (\ body\: :ref:`RID`\ ) |const| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`body_test_motion_is_excluding_object`\ (\ object\: :ref:`int`\ ) |const| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ .. rst-class:: classref-section-separator @@ -326,7 +326,7 @@ Method Descriptions .. rst-class:: classref-method -|void| **_area_add_shape**\ (\ area\: :ref:`RID`, shape\: :ref:`RID`, transform\: :ref:`Transform2D`, disabled\: :ref:`bool`\ ) |virtual| :ref:`🔗` +|void| **_area_add_shape**\ (\ area\: :ref:`RID`, shape\: :ref:`RID`, transform\: :ref:`Transform2D`, disabled\: :ref:`bool`\ ) |virtual| |required| :ref:`🔗` Overridable version of :ref:`PhysicsServer2D.area_add_shape()`. @@ -338,7 +338,7 @@ Overridable version of :ref:`PhysicsServer2D.area_add_shape()`, id\: :ref:`int`\ ) |virtual| :ref:`🔗` +|void| **_area_attach_canvas_instance_id**\ (\ area\: :ref:`RID`, id\: :ref:`int`\ ) |virtual| |required| :ref:`🔗` Overridable version of :ref:`PhysicsServer2D.area_attach_canvas_instance_id()`. @@ -350,7 +350,7 @@ Overridable version of :ref:`PhysicsServer2D.area_attach_canvas_instance_id()`, id\: :ref:`int`\ ) |virtual| :ref:`🔗` +|void| **_area_attach_object_instance_id**\ (\ area\: :ref:`RID`, id\: :ref:`int`\ ) |virtual| |required| :ref:`🔗` Overridable version of :ref:`PhysicsServer2D.area_attach_object_instance_id()`. @@ -362,7 +362,7 @@ Overridable version of :ref:`PhysicsServer2D.area_attach_object_instance_id()`\ ) |virtual| :ref:`🔗` +|void| **_area_clear_shapes**\ (\ area\: :ref:`RID`\ ) |virtual| |required| :ref:`🔗` Overridable version of :ref:`PhysicsServer2D.area_clear_shapes()`. @@ -374,7 +374,7 @@ Overridable version of :ref:`PhysicsServer2D.area_clear_shapes()` **_area_create**\ (\ ) |virtual| :ref:`🔗` +:ref:`RID` **_area_create**\ (\ ) |virtual| |required| :ref:`🔗` Overridable version of :ref:`PhysicsServer2D.area_create()`. @@ -386,7 +386,7 @@ Overridable version of :ref:`PhysicsServer2D.area_create()` **_area_get_canvas_instance_id**\ (\ area\: :ref:`RID`\ ) |virtual| |const| :ref:`🔗` +:ref:`int` **_area_get_canvas_instance_id**\ (\ area\: :ref:`RID`\ ) |virtual| |required| |const| :ref:`🔗` Overridable version of :ref:`PhysicsServer2D.area_get_canvas_instance_id()`. @@ -398,7 +398,7 @@ Overridable version of :ref:`PhysicsServer2D.area_get_canvas_instance_id()` **_area_get_collision_layer**\ (\ area\: :ref:`RID`\ ) |virtual| |const| :ref:`🔗` +:ref:`int` **_area_get_collision_layer**\ (\ area\: :ref:`RID`\ ) |virtual| |required| |const| :ref:`🔗` Overridable version of :ref:`PhysicsServer2D.area_get_collision_layer()`. @@ -410,7 +410,7 @@ Overridable version of :ref:`PhysicsServer2D.area_get_collision_layer()` **_area_get_collision_mask**\ (\ area\: :ref:`RID`\ ) |virtual| |const| :ref:`🔗` +:ref:`int` **_area_get_collision_mask**\ (\ area\: :ref:`RID`\ ) |virtual| |required| |const| :ref:`🔗` Overridable version of :ref:`PhysicsServer2D.area_get_collision_mask()`. @@ -422,7 +422,7 @@ Overridable version of :ref:`PhysicsServer2D.area_get_collision_mask()` **_area_get_object_instance_id**\ (\ area\: :ref:`RID`\ ) |virtual| |const| :ref:`🔗` +:ref:`int` **_area_get_object_instance_id**\ (\ area\: :ref:`RID`\ ) |virtual| |required| |const| :ref:`🔗` Overridable version of :ref:`PhysicsServer2D.area_get_object_instance_id()`. @@ -434,7 +434,7 @@ Overridable version of :ref:`PhysicsServer2D.area_get_object_instance_id()` **_area_get_param**\ (\ area\: :ref:`RID`, param\: :ref:`AreaParameter`\ ) |virtual| |const| :ref:`🔗` +:ref:`Variant` **_area_get_param**\ (\ area\: :ref:`RID`, param\: :ref:`AreaParameter`\ ) |virtual| |required| |const| :ref:`🔗` Overridable version of :ref:`PhysicsServer2D.area_get_param()`. @@ -446,7 +446,7 @@ Overridable version of :ref:`PhysicsServer2D.area_get_param()` **_area_get_shape**\ (\ area\: :ref:`RID`, shape_idx\: :ref:`int`\ ) |virtual| |const| :ref:`🔗` +:ref:`RID` **_area_get_shape**\ (\ area\: :ref:`RID`, shape_idx\: :ref:`int`\ ) |virtual| |required| |const| :ref:`🔗` Overridable version of :ref:`PhysicsServer2D.area_get_shape()`. @@ -458,7 +458,7 @@ Overridable version of :ref:`PhysicsServer2D.area_get_shape()` **_area_get_shape_count**\ (\ area\: :ref:`RID`\ ) |virtual| |const| :ref:`🔗` +:ref:`int` **_area_get_shape_count**\ (\ area\: :ref:`RID`\ ) |virtual| |required| |const| :ref:`🔗` Overridable version of :ref:`PhysicsServer2D.area_get_shape_count()`. @@ -470,7 +470,7 @@ Overridable version of :ref:`PhysicsServer2D.area_get_shape_count()` **_area_get_shape_transform**\ (\ area\: :ref:`RID`, shape_idx\: :ref:`int`\ ) |virtual| |const| :ref:`🔗` +:ref:`Transform2D` **_area_get_shape_transform**\ (\ area\: :ref:`RID`, shape_idx\: :ref:`int`\ ) |virtual| |required| |const| :ref:`🔗` Overridable version of :ref:`PhysicsServer2D.area_get_shape_transform()`. @@ -482,7 +482,7 @@ Overridable version of :ref:`PhysicsServer2D.area_get_shape_transform()` **_area_get_space**\ (\ area\: :ref:`RID`\ ) |virtual| |const| :ref:`🔗` +:ref:`RID` **_area_get_space**\ (\ area\: :ref:`RID`\ ) |virtual| |required| |const| :ref:`🔗` Overridable version of :ref:`PhysicsServer2D.area_get_space()`. @@ -494,7 +494,7 @@ Overridable version of :ref:`PhysicsServer2D.area_get_space()` **_area_get_transform**\ (\ area\: :ref:`RID`\ ) |virtual| |const| :ref:`🔗` +:ref:`Transform2D` **_area_get_transform**\ (\ area\: :ref:`RID`\ ) |virtual| |required| |const| :ref:`🔗` Overridable version of :ref:`PhysicsServer2D.area_get_transform()`. @@ -506,7 +506,7 @@ Overridable version of :ref:`PhysicsServer2D.area_get_transform()`, shape_idx\: :ref:`int`\ ) |virtual| :ref:`🔗` +|void| **_area_remove_shape**\ (\ area\: :ref:`RID`, shape_idx\: :ref:`int`\ ) |virtual| |required| :ref:`🔗` Overridable version of :ref:`PhysicsServer2D.area_remove_shape()`. @@ -518,7 +518,7 @@ Overridable version of :ref:`PhysicsServer2D.area_remove_shape()`, callback\: :ref:`Callable`\ ) |virtual| :ref:`🔗` +|void| **_area_set_area_monitor_callback**\ (\ area\: :ref:`RID`, callback\: :ref:`Callable`\ ) |virtual| |required| :ref:`🔗` Overridable version of :ref:`PhysicsServer2D.area_set_area_monitor_callback()`. @@ -530,7 +530,7 @@ Overridable version of :ref:`PhysicsServer2D.area_set_area_monitor_callback()`, layer\: :ref:`int`\ ) |virtual| :ref:`🔗` +|void| **_area_set_collision_layer**\ (\ area\: :ref:`RID`, layer\: :ref:`int`\ ) |virtual| |required| :ref:`🔗` Overridable version of :ref:`PhysicsServer2D.area_set_collision_layer()`. @@ -542,7 +542,7 @@ Overridable version of :ref:`PhysicsServer2D.area_set_collision_layer()`, mask\: :ref:`int`\ ) |virtual| :ref:`🔗` +|void| **_area_set_collision_mask**\ (\ area\: :ref:`RID`, mask\: :ref:`int`\ ) |virtual| |required| :ref:`🔗` Overridable version of :ref:`PhysicsServer2D.area_set_collision_mask()`. @@ -554,7 +554,7 @@ Overridable version of :ref:`PhysicsServer2D.area_set_collision_mask()`, callback\: :ref:`Callable`\ ) |virtual| :ref:`🔗` +|void| **_area_set_monitor_callback**\ (\ area\: :ref:`RID`, callback\: :ref:`Callable`\ ) |virtual| |required| :ref:`🔗` Overridable version of :ref:`PhysicsServer2D.area_set_monitor_callback()`. @@ -566,7 +566,7 @@ Overridable version of :ref:`PhysicsServer2D.area_set_monitor_callback()`, monitorable\: :ref:`bool`\ ) |virtual| :ref:`🔗` +|void| **_area_set_monitorable**\ (\ area\: :ref:`RID`, monitorable\: :ref:`bool`\ ) |virtual| |required| :ref:`🔗` Overridable version of :ref:`PhysicsServer2D.area_set_monitorable()`. @@ -578,7 +578,7 @@ Overridable version of :ref:`PhysicsServer2D.area_set_monitorable()`, param\: :ref:`AreaParameter`, value\: :ref:`Variant`\ ) |virtual| :ref:`🔗` +|void| **_area_set_param**\ (\ area\: :ref:`RID`, param\: :ref:`AreaParameter`, value\: :ref:`Variant`\ ) |virtual| |required| :ref:`🔗` Overridable version of :ref:`PhysicsServer2D.area_set_param()`. @@ -590,7 +590,7 @@ Overridable version of :ref:`PhysicsServer2D.area_set_param()`, pickable\: :ref:`bool`\ ) |virtual| :ref:`🔗` +|void| **_area_set_pickable**\ (\ area\: :ref:`RID`, pickable\: :ref:`bool`\ ) |virtual| |required| :ref:`🔗` If set to ``true``, allows the area with the given :ref:`RID` to detect mouse inputs when the mouse cursor is hovering on it. @@ -604,7 +604,7 @@ Overridable version of :ref:`PhysicsServer2D`'s internal .. rst-class:: classref-method -|void| **_area_set_shape**\ (\ area\: :ref:`RID`, shape_idx\: :ref:`int`, shape\: :ref:`RID`\ ) |virtual| :ref:`🔗` +|void| **_area_set_shape**\ (\ area\: :ref:`RID`, shape_idx\: :ref:`int`, shape\: :ref:`RID`\ ) |virtual| |required| :ref:`🔗` Overridable version of :ref:`PhysicsServer2D.area_set_shape()`. @@ -616,7 +616,7 @@ Overridable version of :ref:`PhysicsServer2D.area_set_shape()`, shape_idx\: :ref:`int`, disabled\: :ref:`bool`\ ) |virtual| :ref:`🔗` +|void| **_area_set_shape_disabled**\ (\ area\: :ref:`RID`, shape_idx\: :ref:`int`, disabled\: :ref:`bool`\ ) |virtual| |required| :ref:`🔗` Overridable version of :ref:`PhysicsServer2D.area_set_shape_disabled()`. @@ -628,7 +628,7 @@ Overridable version of :ref:`PhysicsServer2D.area_set_shape_disabled()`, shape_idx\: :ref:`int`, transform\: :ref:`Transform2D`\ ) |virtual| :ref:`🔗` +|void| **_area_set_shape_transform**\ (\ area\: :ref:`RID`, shape_idx\: :ref:`int`, transform\: :ref:`Transform2D`\ ) |virtual| |required| :ref:`🔗` Overridable version of :ref:`PhysicsServer2D.area_set_shape_transform()`. @@ -640,7 +640,7 @@ Overridable version of :ref:`PhysicsServer2D.area_set_shape_transform()`, space\: :ref:`RID`\ ) |virtual| :ref:`🔗` +|void| **_area_set_space**\ (\ area\: :ref:`RID`, space\: :ref:`RID`\ ) |virtual| |required| :ref:`🔗` Overridable version of :ref:`PhysicsServer2D.area_set_space()`. @@ -652,7 +652,7 @@ Overridable version of :ref:`PhysicsServer2D.area_set_space()`, transform\: :ref:`Transform2D`\ ) |virtual| :ref:`🔗` +|void| **_area_set_transform**\ (\ area\: :ref:`RID`, transform\: :ref:`Transform2D`\ ) |virtual| |required| :ref:`🔗` Overridable version of :ref:`PhysicsServer2D.area_set_transform()`. @@ -664,7 +664,7 @@ Overridable version of :ref:`PhysicsServer2D.area_set_transform()`, excepted_body\: :ref:`RID`\ ) |virtual| :ref:`🔗` +|void| **_body_add_collision_exception**\ (\ body\: :ref:`RID`, excepted_body\: :ref:`RID`\ ) |virtual| |required| :ref:`🔗` Overridable version of :ref:`PhysicsServer2D.body_add_collision_exception()`. @@ -676,7 +676,7 @@ Overridable version of :ref:`PhysicsServer2D.body_add_collision_exception()`, force\: :ref:`Vector2`\ ) |virtual| :ref:`🔗` +|void| **_body_add_constant_central_force**\ (\ body\: :ref:`RID`, force\: :ref:`Vector2`\ ) |virtual| |required| :ref:`🔗` Overridable version of :ref:`PhysicsServer2D.body_add_constant_central_force()`. @@ -688,7 +688,7 @@ Overridable version of :ref:`PhysicsServer2D.body_add_constant_central_force()`, force\: :ref:`Vector2`, position\: :ref:`Vector2`\ ) |virtual| :ref:`🔗` +|void| **_body_add_constant_force**\ (\ body\: :ref:`RID`, force\: :ref:`Vector2`, position\: :ref:`Vector2`\ ) |virtual| |required| :ref:`🔗` Overridable version of :ref:`PhysicsServer2D.body_add_constant_force()`. @@ -700,7 +700,7 @@ Overridable version of :ref:`PhysicsServer2D.body_add_constant_force()`, torque\: :ref:`float`\ ) |virtual| :ref:`🔗` +|void| **_body_add_constant_torque**\ (\ body\: :ref:`RID`, torque\: :ref:`float`\ ) |virtual| |required| :ref:`🔗` Overridable version of :ref:`PhysicsServer2D.body_add_constant_torque()`. @@ -712,7 +712,7 @@ Overridable version of :ref:`PhysicsServer2D.body_add_constant_torque()`, shape\: :ref:`RID`, transform\: :ref:`Transform2D`, disabled\: :ref:`bool`\ ) |virtual| :ref:`🔗` +|void| **_body_add_shape**\ (\ body\: :ref:`RID`, shape\: :ref:`RID`, transform\: :ref:`Transform2D`, disabled\: :ref:`bool`\ ) |virtual| |required| :ref:`🔗` Overridable version of :ref:`PhysicsServer2D.body_add_shape()`. @@ -724,7 +724,7 @@ Overridable version of :ref:`PhysicsServer2D.body_add_shape()`, force\: :ref:`Vector2`\ ) |virtual| :ref:`🔗` +|void| **_body_apply_central_force**\ (\ body\: :ref:`RID`, force\: :ref:`Vector2`\ ) |virtual| |required| :ref:`🔗` Overridable version of :ref:`PhysicsServer2D.body_apply_central_force()`. @@ -736,7 +736,7 @@ Overridable version of :ref:`PhysicsServer2D.body_apply_central_force()`, impulse\: :ref:`Vector2`\ ) |virtual| :ref:`🔗` +|void| **_body_apply_central_impulse**\ (\ body\: :ref:`RID`, impulse\: :ref:`Vector2`\ ) |virtual| |required| :ref:`🔗` Overridable version of :ref:`PhysicsServer2D.body_apply_central_impulse()`. @@ -748,7 +748,7 @@ Overridable version of :ref:`PhysicsServer2D.body_apply_central_impulse()`, force\: :ref:`Vector2`, position\: :ref:`Vector2`\ ) |virtual| :ref:`🔗` +|void| **_body_apply_force**\ (\ body\: :ref:`RID`, force\: :ref:`Vector2`, position\: :ref:`Vector2`\ ) |virtual| |required| :ref:`🔗` Overridable version of :ref:`PhysicsServer2D.body_apply_force()`. @@ -760,7 +760,7 @@ Overridable version of :ref:`PhysicsServer2D.body_apply_force()`, impulse\: :ref:`Vector2`, position\: :ref:`Vector2`\ ) |virtual| :ref:`🔗` +|void| **_body_apply_impulse**\ (\ body\: :ref:`RID`, impulse\: :ref:`Vector2`, position\: :ref:`Vector2`\ ) |virtual| |required| :ref:`🔗` Overridable version of :ref:`PhysicsServer2D.body_apply_impulse()`. @@ -772,7 +772,7 @@ Overridable version of :ref:`PhysicsServer2D.body_apply_impulse()`, torque\: :ref:`float`\ ) |virtual| :ref:`🔗` +|void| **_body_apply_torque**\ (\ body\: :ref:`RID`, torque\: :ref:`float`\ ) |virtual| |required| :ref:`🔗` Overridable version of :ref:`PhysicsServer2D.body_apply_torque()`. @@ -784,7 +784,7 @@ Overridable version of :ref:`PhysicsServer2D.body_apply_torque()`, impulse\: :ref:`float`\ ) |virtual| :ref:`🔗` +|void| **_body_apply_torque_impulse**\ (\ body\: :ref:`RID`, impulse\: :ref:`float`\ ) |virtual| |required| :ref:`🔗` Overridable version of :ref:`PhysicsServer2D.body_apply_torque_impulse()`. @@ -796,7 +796,7 @@ Overridable version of :ref:`PhysicsServer2D.body_apply_torque_impulse()`, id\: :ref:`int`\ ) |virtual| :ref:`🔗` +|void| **_body_attach_canvas_instance_id**\ (\ body\: :ref:`RID`, id\: :ref:`int`\ ) |virtual| |required| :ref:`🔗` Overridable version of :ref:`PhysicsServer2D.body_attach_canvas_instance_id()`. @@ -808,7 +808,7 @@ Overridable version of :ref:`PhysicsServer2D.body_attach_canvas_instance_id()`, id\: :ref:`int`\ ) |virtual| :ref:`🔗` +|void| **_body_attach_object_instance_id**\ (\ body\: :ref:`RID`, id\: :ref:`int`\ ) |virtual| |required| :ref:`🔗` Overridable version of :ref:`PhysicsServer2D.body_attach_object_instance_id()`. @@ -820,7 +820,7 @@ Overridable version of :ref:`PhysicsServer2D.body_attach_object_instance_id()`\ ) |virtual| :ref:`🔗` +|void| **_body_clear_shapes**\ (\ body\: :ref:`RID`\ ) |virtual| |required| :ref:`🔗` Overridable version of :ref:`PhysicsServer2D.body_clear_shapes()`. @@ -832,7 +832,7 @@ Overridable version of :ref:`PhysicsServer2D.body_clear_shapes()` **_body_collide_shape**\ (\ body\: :ref:`RID`, body_shape\: :ref:`int`, shape\: :ref:`RID`, shape_xform\: :ref:`Transform2D`, motion\: :ref:`Vector2`, results\: ``void*``, result_max\: :ref:`int`, result_count\: ``int32_t*``\ ) |virtual| :ref:`🔗` +:ref:`bool` **_body_collide_shape**\ (\ body\: :ref:`RID`, body_shape\: :ref:`int`, shape\: :ref:`RID`, shape_xform\: :ref:`Transform2D`, motion\: :ref:`Vector2`, results\: ``void*``, result_max\: :ref:`int`, result_count\: ``int32_t*``\ ) |virtual| |required| :ref:`🔗` Given a ``body``, a ``shape``, and their respective parameters, this method should return ``true`` if a collision between the two would occur, with additional details passed in ``results``. @@ -846,7 +846,7 @@ Overridable version of :ref:`PhysicsServer2D`'s internal .. rst-class:: classref-method -:ref:`RID` **_body_create**\ (\ ) |virtual| :ref:`🔗` +:ref:`RID` **_body_create**\ (\ ) |virtual| |required| :ref:`🔗` Overridable version of :ref:`PhysicsServer2D.body_create()`. @@ -858,7 +858,7 @@ Overridable version of :ref:`PhysicsServer2D.body_create()` **_body_get_canvas_instance_id**\ (\ body\: :ref:`RID`\ ) |virtual| |const| :ref:`🔗` +:ref:`int` **_body_get_canvas_instance_id**\ (\ body\: :ref:`RID`\ ) |virtual| |required| |const| :ref:`🔗` Overridable version of :ref:`PhysicsServer2D.body_get_canvas_instance_id()`. @@ -870,7 +870,7 @@ Overridable version of :ref:`PhysicsServer2D.body_get_canvas_instance_id()`\[:ref:`RID`\] **_body_get_collision_exceptions**\ (\ body\: :ref:`RID`\ ) |virtual| |const| :ref:`🔗` +:ref:`Array`\[:ref:`RID`\] **_body_get_collision_exceptions**\ (\ body\: :ref:`RID`\ ) |virtual| |required| |const| :ref:`🔗` Returns the :ref:`RID`\ s of all bodies added as collision exceptions for the given ``body``. See also :ref:`_body_add_collision_exception()` and :ref:`_body_remove_collision_exception()`. @@ -884,7 +884,7 @@ Overridable version of :ref:`PhysicsServer2D`'s internal .. rst-class:: classref-method -:ref:`int` **_body_get_collision_layer**\ (\ body\: :ref:`RID`\ ) |virtual| |const| :ref:`🔗` +:ref:`int` **_body_get_collision_layer**\ (\ body\: :ref:`RID`\ ) |virtual| |required| |const| :ref:`🔗` Overridable version of :ref:`PhysicsServer2D.body_get_collision_layer()`. @@ -896,7 +896,7 @@ Overridable version of :ref:`PhysicsServer2D.body_get_collision_layer()` **_body_get_collision_mask**\ (\ body\: :ref:`RID`\ ) |virtual| |const| :ref:`🔗` +:ref:`int` **_body_get_collision_mask**\ (\ body\: :ref:`RID`\ ) |virtual| |required| |const| :ref:`🔗` Overridable version of :ref:`PhysicsServer2D.body_get_collision_mask()`. @@ -908,7 +908,7 @@ Overridable version of :ref:`PhysicsServer2D.body_get_collision_mask()` **_body_get_collision_priority**\ (\ body\: :ref:`RID`\ ) |virtual| |const| :ref:`🔗` +:ref:`float` **_body_get_collision_priority**\ (\ body\: :ref:`RID`\ ) |virtual| |required| |const| :ref:`🔗` Overridable version of :ref:`PhysicsServer2D.body_get_collision_priority()`. @@ -920,7 +920,7 @@ Overridable version of :ref:`PhysicsServer2D.body_get_collision_priority()` **_body_get_constant_force**\ (\ body\: :ref:`RID`\ ) |virtual| |const| :ref:`🔗` +:ref:`Vector2` **_body_get_constant_force**\ (\ body\: :ref:`RID`\ ) |virtual| |required| |const| :ref:`🔗` Overridable version of :ref:`PhysicsServer2D.body_get_constant_force()`. @@ -932,7 +932,7 @@ Overridable version of :ref:`PhysicsServer2D.body_get_constant_force()` **_body_get_constant_torque**\ (\ body\: :ref:`RID`\ ) |virtual| |const| :ref:`🔗` +:ref:`float` **_body_get_constant_torque**\ (\ body\: :ref:`RID`\ ) |virtual| |required| |const| :ref:`🔗` Overridable version of :ref:`PhysicsServer2D.body_get_constant_torque()`. @@ -944,7 +944,7 @@ Overridable version of :ref:`PhysicsServer2D.body_get_constant_torque()` **_body_get_contacts_reported_depth_threshold**\ (\ body\: :ref:`RID`\ ) |virtual| |const| :ref:`🔗` +:ref:`float` **_body_get_contacts_reported_depth_threshold**\ (\ body\: :ref:`RID`\ ) |virtual| |required| |const| :ref:`🔗` Overridable version of :ref:`PhysicsServer2D`'s internal ``body_get_contacts_reported_depth_threshold`` method. @@ -958,7 +958,7 @@ Overridable version of :ref:`PhysicsServer2D`'s internal .. rst-class:: classref-method -:ref:`CCDMode` **_body_get_continuous_collision_detection_mode**\ (\ body\: :ref:`RID`\ ) |virtual| |const| :ref:`🔗` +:ref:`CCDMode` **_body_get_continuous_collision_detection_mode**\ (\ body\: :ref:`RID`\ ) |virtual| |required| |const| :ref:`🔗` Overridable version of :ref:`PhysicsServer2D.body_get_continuous_collision_detection_mode()`. @@ -970,7 +970,7 @@ Overridable version of :ref:`PhysicsServer2D.body_get_continuous_collision_detec .. rst-class:: classref-method -:ref:`PhysicsDirectBodyState2D` **_body_get_direct_state**\ (\ body\: :ref:`RID`\ ) |virtual| :ref:`🔗` +:ref:`PhysicsDirectBodyState2D` **_body_get_direct_state**\ (\ body\: :ref:`RID`\ ) |virtual| |required| :ref:`🔗` Overridable version of :ref:`PhysicsServer2D.body_get_direct_state()`. @@ -982,7 +982,7 @@ Overridable version of :ref:`PhysicsServer2D.body_get_direct_state()` **_body_get_max_contacts_reported**\ (\ body\: :ref:`RID`\ ) |virtual| |const| :ref:`🔗` +:ref:`int` **_body_get_max_contacts_reported**\ (\ body\: :ref:`RID`\ ) |virtual| |required| |const| :ref:`🔗` Overridable version of :ref:`PhysicsServer2D.body_get_max_contacts_reported()`. @@ -994,7 +994,7 @@ Overridable version of :ref:`PhysicsServer2D.body_get_max_contacts_reported()` **_body_get_mode**\ (\ body\: :ref:`RID`\ ) |virtual| |const| :ref:`🔗` +:ref:`BodyMode` **_body_get_mode**\ (\ body\: :ref:`RID`\ ) |virtual| |required| |const| :ref:`🔗` Overridable version of :ref:`PhysicsServer2D.body_get_mode()`. @@ -1006,7 +1006,7 @@ Overridable version of :ref:`PhysicsServer2D.body_get_mode()` **_body_get_object_instance_id**\ (\ body\: :ref:`RID`\ ) |virtual| |const| :ref:`🔗` +:ref:`int` **_body_get_object_instance_id**\ (\ body\: :ref:`RID`\ ) |virtual| |required| |const| :ref:`🔗` Overridable version of :ref:`PhysicsServer2D.body_get_object_instance_id()`. @@ -1018,7 +1018,7 @@ Overridable version of :ref:`PhysicsServer2D.body_get_object_instance_id()` **_body_get_param**\ (\ body\: :ref:`RID`, param\: :ref:`BodyParameter`\ ) |virtual| |const| :ref:`🔗` +:ref:`Variant` **_body_get_param**\ (\ body\: :ref:`RID`, param\: :ref:`BodyParameter`\ ) |virtual| |required| |const| :ref:`🔗` Overridable version of :ref:`PhysicsServer2D.body_get_param()`. @@ -1030,7 +1030,7 @@ Overridable version of :ref:`PhysicsServer2D.body_get_param()` **_body_get_shape**\ (\ body\: :ref:`RID`, shape_idx\: :ref:`int`\ ) |virtual| |const| :ref:`🔗` +:ref:`RID` **_body_get_shape**\ (\ body\: :ref:`RID`, shape_idx\: :ref:`int`\ ) |virtual| |required| |const| :ref:`🔗` Overridable version of :ref:`PhysicsServer2D.body_get_shape()`. @@ -1042,7 +1042,7 @@ Overridable version of :ref:`PhysicsServer2D.body_get_shape()` **_body_get_shape_count**\ (\ body\: :ref:`RID`\ ) |virtual| |const| :ref:`🔗` +:ref:`int` **_body_get_shape_count**\ (\ body\: :ref:`RID`\ ) |virtual| |required| |const| :ref:`🔗` Overridable version of :ref:`PhysicsServer2D.body_get_shape_count()`. @@ -1054,7 +1054,7 @@ Overridable version of :ref:`PhysicsServer2D.body_get_shape_count()` **_body_get_shape_transform**\ (\ body\: :ref:`RID`, shape_idx\: :ref:`int`\ ) |virtual| |const| :ref:`🔗` +:ref:`Transform2D` **_body_get_shape_transform**\ (\ body\: :ref:`RID`, shape_idx\: :ref:`int`\ ) |virtual| |required| |const| :ref:`🔗` Overridable version of :ref:`PhysicsServer2D.body_get_shape_transform()`. @@ -1066,7 +1066,7 @@ Overridable version of :ref:`PhysicsServer2D.body_get_shape_transform()` **_body_get_space**\ (\ body\: :ref:`RID`\ ) |virtual| |const| :ref:`🔗` +:ref:`RID` **_body_get_space**\ (\ body\: :ref:`RID`\ ) |virtual| |required| |const| :ref:`🔗` Overridable version of :ref:`PhysicsServer2D.body_get_space()`. @@ -1078,7 +1078,7 @@ Overridable version of :ref:`PhysicsServer2D.body_get_space()` **_body_get_state**\ (\ body\: :ref:`RID`, state\: :ref:`BodyState`\ ) |virtual| |const| :ref:`🔗` +:ref:`Variant` **_body_get_state**\ (\ body\: :ref:`RID`, state\: :ref:`BodyState`\ ) |virtual| |required| |const| :ref:`🔗` Overridable version of :ref:`PhysicsServer2D.body_get_state()`. @@ -1090,7 +1090,7 @@ Overridable version of :ref:`PhysicsServer2D.body_get_state()` **_body_is_omitting_force_integration**\ (\ body\: :ref:`RID`\ ) |virtual| |const| :ref:`🔗` +:ref:`bool` **_body_is_omitting_force_integration**\ (\ body\: :ref:`RID`\ ) |virtual| |required| |const| :ref:`🔗` Overridable version of :ref:`PhysicsServer2D.body_is_omitting_force_integration()`. @@ -1102,7 +1102,7 @@ Overridable version of :ref:`PhysicsServer2D.body_is_omitting_force_integration( .. rst-class:: classref-method -|void| **_body_remove_collision_exception**\ (\ body\: :ref:`RID`, excepted_body\: :ref:`RID`\ ) |virtual| :ref:`🔗` +|void| **_body_remove_collision_exception**\ (\ body\: :ref:`RID`, excepted_body\: :ref:`RID`\ ) |virtual| |required| :ref:`🔗` Overridable version of :ref:`PhysicsServer2D.body_remove_collision_exception()`. @@ -1114,7 +1114,7 @@ Overridable version of :ref:`PhysicsServer2D.body_remove_collision_exception()`, shape_idx\: :ref:`int`\ ) |virtual| :ref:`🔗` +|void| **_body_remove_shape**\ (\ body\: :ref:`RID`, shape_idx\: :ref:`int`\ ) |virtual| |required| :ref:`🔗` Overridable version of :ref:`PhysicsServer2D.body_remove_shape()`. @@ -1126,7 +1126,7 @@ Overridable version of :ref:`PhysicsServer2D.body_remove_shape()`\ ) |virtual| :ref:`🔗` +|void| **_body_reset_mass_properties**\ (\ body\: :ref:`RID`\ ) |virtual| |required| :ref:`🔗` Overridable version of :ref:`PhysicsServer2D.body_reset_mass_properties()`. @@ -1138,7 +1138,7 @@ Overridable version of :ref:`PhysicsServer2D.body_reset_mass_properties()`, axis_velocity\: :ref:`Vector2`\ ) |virtual| :ref:`🔗` +|void| **_body_set_axis_velocity**\ (\ body\: :ref:`RID`, axis_velocity\: :ref:`Vector2`\ ) |virtual| |required| :ref:`🔗` Overridable version of :ref:`PhysicsServer2D.body_set_axis_velocity()`. @@ -1150,7 +1150,7 @@ Overridable version of :ref:`PhysicsServer2D.body_set_axis_velocity()`, layer\: :ref:`int`\ ) |virtual| :ref:`🔗` +|void| **_body_set_collision_layer**\ (\ body\: :ref:`RID`, layer\: :ref:`int`\ ) |virtual| |required| :ref:`🔗` Overridable version of :ref:`PhysicsServer2D.body_set_collision_layer()`. @@ -1162,7 +1162,7 @@ Overridable version of :ref:`PhysicsServer2D.body_set_collision_layer()`, mask\: :ref:`int`\ ) |virtual| :ref:`🔗` +|void| **_body_set_collision_mask**\ (\ body\: :ref:`RID`, mask\: :ref:`int`\ ) |virtual| |required| :ref:`🔗` Overridable version of :ref:`PhysicsServer2D.body_set_collision_mask()`. @@ -1174,7 +1174,7 @@ Overridable version of :ref:`PhysicsServer2D.body_set_collision_mask()`, priority\: :ref:`float`\ ) |virtual| :ref:`🔗` +|void| **_body_set_collision_priority**\ (\ body\: :ref:`RID`, priority\: :ref:`float`\ ) |virtual| |required| :ref:`🔗` Overridable version of :ref:`PhysicsServer2D.body_set_collision_priority()`. @@ -1186,7 +1186,7 @@ Overridable version of :ref:`PhysicsServer2D.body_set_collision_priority()`, force\: :ref:`Vector2`\ ) |virtual| :ref:`🔗` +|void| **_body_set_constant_force**\ (\ body\: :ref:`RID`, force\: :ref:`Vector2`\ ) |virtual| |required| :ref:`🔗` Overridable version of :ref:`PhysicsServer2D.body_set_constant_force()`. @@ -1198,7 +1198,7 @@ Overridable version of :ref:`PhysicsServer2D.body_set_constant_force()`, torque\: :ref:`float`\ ) |virtual| :ref:`🔗` +|void| **_body_set_constant_torque**\ (\ body\: :ref:`RID`, torque\: :ref:`float`\ ) |virtual| |required| :ref:`🔗` Overridable version of :ref:`PhysicsServer2D.body_set_constant_torque()`. @@ -1210,7 +1210,7 @@ Overridable version of :ref:`PhysicsServer2D.body_set_constant_torque()`, threshold\: :ref:`float`\ ) |virtual| :ref:`🔗` +|void| **_body_set_contacts_reported_depth_threshold**\ (\ body\: :ref:`RID`, threshold\: :ref:`float`\ ) |virtual| |required| :ref:`🔗` Overridable version of :ref:`PhysicsServer2D`'s internal ``body_set_contacts_reported_depth_threshold`` method. @@ -1224,7 +1224,7 @@ Overridable version of :ref:`PhysicsServer2D`'s internal .. rst-class:: classref-method -|void| **_body_set_continuous_collision_detection_mode**\ (\ body\: :ref:`RID`, mode\: :ref:`CCDMode`\ ) |virtual| :ref:`🔗` +|void| **_body_set_continuous_collision_detection_mode**\ (\ body\: :ref:`RID`, mode\: :ref:`CCDMode`\ ) |virtual| |required| :ref:`🔗` Overridable version of :ref:`PhysicsServer2D.body_set_continuous_collision_detection_mode()`. @@ -1236,7 +1236,7 @@ Overridable version of :ref:`PhysicsServer2D.body_set_continuous_collision_detec .. rst-class:: classref-method -|void| **_body_set_force_integration_callback**\ (\ body\: :ref:`RID`, callable\: :ref:`Callable`, userdata\: :ref:`Variant`\ ) |virtual| :ref:`🔗` +|void| **_body_set_force_integration_callback**\ (\ body\: :ref:`RID`, callable\: :ref:`Callable`, userdata\: :ref:`Variant`\ ) |virtual| |required| :ref:`🔗` Overridable version of :ref:`PhysicsServer2D.body_set_force_integration_callback()`. @@ -1248,7 +1248,7 @@ Overridable version of :ref:`PhysicsServer2D.body_set_force_integration_callback .. rst-class:: classref-method -|void| **_body_set_max_contacts_reported**\ (\ body\: :ref:`RID`, amount\: :ref:`int`\ ) |virtual| :ref:`🔗` +|void| **_body_set_max_contacts_reported**\ (\ body\: :ref:`RID`, amount\: :ref:`int`\ ) |virtual| |required| :ref:`🔗` Overridable version of :ref:`PhysicsServer2D.body_set_max_contacts_reported()`. @@ -1260,7 +1260,7 @@ Overridable version of :ref:`PhysicsServer2D.body_set_max_contacts_reported()`, mode\: :ref:`BodyMode`\ ) |virtual| :ref:`🔗` +|void| **_body_set_mode**\ (\ body\: :ref:`RID`, mode\: :ref:`BodyMode`\ ) |virtual| |required| :ref:`🔗` Overridable version of :ref:`PhysicsServer2D.body_set_mode()`. @@ -1272,7 +1272,7 @@ Overridable version of :ref:`PhysicsServer2D.body_set_mode()`, enable\: :ref:`bool`\ ) |virtual| :ref:`🔗` +|void| **_body_set_omit_force_integration**\ (\ body\: :ref:`RID`, enable\: :ref:`bool`\ ) |virtual| |required| :ref:`🔗` Overridable version of :ref:`PhysicsServer2D.body_set_omit_force_integration()`. @@ -1284,7 +1284,7 @@ Overridable version of :ref:`PhysicsServer2D.body_set_omit_force_integration()`, param\: :ref:`BodyParameter`, value\: :ref:`Variant`\ ) |virtual| :ref:`🔗` +|void| **_body_set_param**\ (\ body\: :ref:`RID`, param\: :ref:`BodyParameter`, value\: :ref:`Variant`\ ) |virtual| |required| :ref:`🔗` Overridable version of :ref:`PhysicsServer2D.body_set_param()`. @@ -1296,7 +1296,7 @@ Overridable version of :ref:`PhysicsServer2D.body_set_param()`, pickable\: :ref:`bool`\ ) |virtual| :ref:`🔗` +|void| **_body_set_pickable**\ (\ body\: :ref:`RID`, pickable\: :ref:`bool`\ ) |virtual| |required| :ref:`🔗` If set to ``true``, allows the body with the given :ref:`RID` to detect mouse inputs when the mouse cursor is hovering on it. @@ -1310,7 +1310,7 @@ Overridable version of :ref:`PhysicsServer2D`'s internal .. rst-class:: classref-method -|void| **_body_set_shape**\ (\ body\: :ref:`RID`, shape_idx\: :ref:`int`, shape\: :ref:`RID`\ ) |virtual| :ref:`🔗` +|void| **_body_set_shape**\ (\ body\: :ref:`RID`, shape_idx\: :ref:`int`, shape\: :ref:`RID`\ ) |virtual| |required| :ref:`🔗` Overridable version of :ref:`PhysicsServer2D.body_set_shape()`. @@ -1322,7 +1322,7 @@ Overridable version of :ref:`PhysicsServer2D.body_set_shape()`, shape_idx\: :ref:`int`, enable\: :ref:`bool`, margin\: :ref:`float`\ ) |virtual| :ref:`🔗` +|void| **_body_set_shape_as_one_way_collision**\ (\ body\: :ref:`RID`, shape_idx\: :ref:`int`, enable\: :ref:`bool`, margin\: :ref:`float`\ ) |virtual| |required| :ref:`🔗` Overridable version of :ref:`PhysicsServer2D.body_set_shape_as_one_way_collision()`. @@ -1334,7 +1334,7 @@ Overridable version of :ref:`PhysicsServer2D.body_set_shape_as_one_way_collision .. rst-class:: classref-method -|void| **_body_set_shape_disabled**\ (\ body\: :ref:`RID`, shape_idx\: :ref:`int`, disabled\: :ref:`bool`\ ) |virtual| :ref:`🔗` +|void| **_body_set_shape_disabled**\ (\ body\: :ref:`RID`, shape_idx\: :ref:`int`, disabled\: :ref:`bool`\ ) |virtual| |required| :ref:`🔗` Overridable version of :ref:`PhysicsServer2D.body_set_shape_disabled()`. @@ -1346,7 +1346,7 @@ Overridable version of :ref:`PhysicsServer2D.body_set_shape_disabled()`, shape_idx\: :ref:`int`, transform\: :ref:`Transform2D`\ ) |virtual| :ref:`🔗` +|void| **_body_set_shape_transform**\ (\ body\: :ref:`RID`, shape_idx\: :ref:`int`, transform\: :ref:`Transform2D`\ ) |virtual| |required| :ref:`🔗` Overridable version of :ref:`PhysicsServer2D.body_set_shape_transform()`. @@ -1358,7 +1358,7 @@ Overridable version of :ref:`PhysicsServer2D.body_set_shape_transform()`, space\: :ref:`RID`\ ) |virtual| :ref:`🔗` +|void| **_body_set_space**\ (\ body\: :ref:`RID`, space\: :ref:`RID`\ ) |virtual| |required| :ref:`🔗` Overridable version of :ref:`PhysicsServer2D.body_set_space()`. @@ -1370,7 +1370,7 @@ Overridable version of :ref:`PhysicsServer2D.body_set_space()`, state\: :ref:`BodyState`, value\: :ref:`Variant`\ ) |virtual| :ref:`🔗` +|void| **_body_set_state**\ (\ body\: :ref:`RID`, state\: :ref:`BodyState`, value\: :ref:`Variant`\ ) |virtual| |required| :ref:`🔗` Overridable version of :ref:`PhysicsServer2D.body_set_state()`. @@ -1382,7 +1382,7 @@ Overridable version of :ref:`PhysicsServer2D.body_set_state()`, callable\: :ref:`Callable`\ ) |virtual| :ref:`🔗` +|void| **_body_set_state_sync_callback**\ (\ body\: :ref:`RID`, callable\: :ref:`Callable`\ ) |virtual| |required| :ref:`🔗` Assigns the ``body`` to call the given ``callable`` during the synchronization phase of the loop, before :ref:`_step()` is called. See also :ref:`_sync()`. @@ -1396,7 +1396,7 @@ Overridable version of :ref:`PhysicsServer2D.body_set_state_sync_callback()` **_body_test_motion**\ (\ body\: :ref:`RID`, from\: :ref:`Transform2D`, motion\: :ref:`Vector2`, margin\: :ref:`float`, collide_separation_ray\: :ref:`bool`, recovery_as_collision\: :ref:`bool`, result\: ``PhysicsServer2DExtensionMotionResult*``\ ) |virtual| |const| :ref:`🔗` +:ref:`bool` **_body_test_motion**\ (\ body\: :ref:`RID`, from\: :ref:`Transform2D`, motion\: :ref:`Vector2`, margin\: :ref:`float`, collide_separation_ray\: :ref:`bool`, recovery_as_collision\: :ref:`bool`, result\: ``PhysicsServer2DExtensionMotionResult*``\ ) |virtual| |required| |const| :ref:`🔗` Overridable version of :ref:`PhysicsServer2D.body_test_motion()`. Unlike the exposed implementation, this method does not receive all of the arguments inside a :ref:`PhysicsTestMotionParameters2D`. @@ -1408,7 +1408,7 @@ Overridable version of :ref:`PhysicsServer2D.body_test_motion()` **_capsule_shape_create**\ (\ ) |virtual| :ref:`🔗` +:ref:`RID` **_capsule_shape_create**\ (\ ) |virtual| |required| :ref:`🔗` Overridable version of :ref:`PhysicsServer2D.capsule_shape_create()`. @@ -1420,7 +1420,7 @@ Overridable version of :ref:`PhysicsServer2D.capsule_shape_create()` **_circle_shape_create**\ (\ ) |virtual| :ref:`🔗` +:ref:`RID` **_circle_shape_create**\ (\ ) |virtual| |required| :ref:`🔗` Overridable version of :ref:`PhysicsServer2D.circle_shape_create()`. @@ -1432,7 +1432,7 @@ Overridable version of :ref:`PhysicsServer2D.circle_shape_create()` **_concave_polygon_shape_create**\ (\ ) |virtual| :ref:`🔗` +:ref:`RID` **_concave_polygon_shape_create**\ (\ ) |virtual| |required| :ref:`🔗` Overridable version of :ref:`PhysicsServer2D.concave_polygon_shape_create()`. @@ -1444,7 +1444,7 @@ Overridable version of :ref:`PhysicsServer2D.concave_polygon_shape_create()` **_convex_polygon_shape_create**\ (\ ) |virtual| :ref:`🔗` +:ref:`RID` **_convex_polygon_shape_create**\ (\ ) |virtual| |required| :ref:`🔗` Overridable version of :ref:`PhysicsServer2D.convex_polygon_shape_create()`. @@ -1456,7 +1456,7 @@ Overridable version of :ref:`PhysicsServer2D.convex_polygon_shape_create()` **_damped_spring_joint_get_param**\ (\ joint\: :ref:`RID`, param\: :ref:`DampedSpringParam`\ ) |virtual| |const| :ref:`🔗` +:ref:`float` **_damped_spring_joint_get_param**\ (\ joint\: :ref:`RID`, param\: :ref:`DampedSpringParam`\ ) |virtual| |required| |const| :ref:`🔗` Overridable version of :ref:`PhysicsServer2D.damped_spring_joint_get_param()`. @@ -1468,7 +1468,7 @@ Overridable version of :ref:`PhysicsServer2D.damped_spring_joint_get_param()`, param\: :ref:`DampedSpringParam`, value\: :ref:`float`\ ) |virtual| :ref:`🔗` +|void| **_damped_spring_joint_set_param**\ (\ joint\: :ref:`RID`, param\: :ref:`DampedSpringParam`, value\: :ref:`float`\ ) |virtual| |required| :ref:`🔗` Overridable version of :ref:`PhysicsServer2D.damped_spring_joint_set_param()`. @@ -1480,7 +1480,7 @@ Overridable version of :ref:`PhysicsServer2D.damped_spring_joint_set_param()` +|void| **_end_sync**\ (\ ) |virtual| |required| :ref:`🔗` Called to indicate that the physics server has stopped synchronizing. It is in the loop's iteration/physics phase, and can access physics objects even if running on a separate thread. See also :ref:`_sync()`. @@ -1494,7 +1494,7 @@ Overridable version of :ref:`PhysicsServer2D`'s internal .. rst-class:: classref-method -|void| **_finish**\ (\ ) |virtual| :ref:`🔗` +|void| **_finish**\ (\ ) |virtual| |required| :ref:`🔗` Called when the main loop finalizes to shut down the physics server. See also :ref:`MainLoop._finalize()` and :ref:`_init()`. @@ -1508,7 +1508,7 @@ Overridable version of :ref:`PhysicsServer2D`'s internal .. rst-class:: classref-method -|void| **_flush_queries**\ (\ ) |virtual| :ref:`🔗` +|void| **_flush_queries**\ (\ ) |virtual| |required| :ref:`🔗` Called every physics step before :ref:`_step()` to process all remaining queries. @@ -1522,7 +1522,7 @@ Overridable version of :ref:`PhysicsServer2D`'s internal .. rst-class:: classref-method -|void| **_free_rid**\ (\ rid\: :ref:`RID`\ ) |virtual| :ref:`🔗` +|void| **_free_rid**\ (\ rid\: :ref:`RID`\ ) |virtual| |required| :ref:`🔗` Overridable version of :ref:`PhysicsServer2D.free_rid()`. @@ -1534,7 +1534,7 @@ Overridable version of :ref:`PhysicsServer2D.free_rid()` **_get_process_info**\ (\ process_info\: :ref:`ProcessInfo`\ ) |virtual| :ref:`🔗` +:ref:`int` **_get_process_info**\ (\ process_info\: :ref:`ProcessInfo`\ ) |virtual| |required| :ref:`🔗` Overridable version of :ref:`PhysicsServer2D.get_process_info()`. @@ -1546,7 +1546,7 @@ Overridable version of :ref:`PhysicsServer2D.get_process_info()` +|void| **_init**\ (\ ) |virtual| |required| :ref:`🔗` Called when the main loop is initialized and creates a new instance of this physics server. See also :ref:`MainLoop._initialize()` and :ref:`_finish()`. @@ -1560,7 +1560,7 @@ Overridable version of :ref:`PhysicsServer2D`'s internal .. rst-class:: classref-method -:ref:`bool` **_is_flushing_queries**\ (\ ) |virtual| |const| :ref:`🔗` +:ref:`bool` **_is_flushing_queries**\ (\ ) |virtual| |required| |const| :ref:`🔗` Overridable method that should return ``true`` when the physics server is processing queries. See also :ref:`_flush_queries()`. @@ -1574,7 +1574,7 @@ Overridable version of :ref:`PhysicsServer2D`'s internal .. rst-class:: classref-method -|void| **_joint_clear**\ (\ joint\: :ref:`RID`\ ) |virtual| :ref:`🔗` +|void| **_joint_clear**\ (\ joint\: :ref:`RID`\ ) |virtual| |required| :ref:`🔗` Overridable version of :ref:`PhysicsServer2D.joint_clear()`. @@ -1586,7 +1586,7 @@ Overridable version of :ref:`PhysicsServer2D.joint_clear()` **_joint_create**\ (\ ) |virtual| :ref:`🔗` +:ref:`RID` **_joint_create**\ (\ ) |virtual| |required| :ref:`🔗` Overridable version of :ref:`PhysicsServer2D.joint_create()`. @@ -1598,7 +1598,7 @@ Overridable version of :ref:`PhysicsServer2D.joint_create()`, disable\: :ref:`bool`\ ) |virtual| :ref:`🔗` +|void| **_joint_disable_collisions_between_bodies**\ (\ joint\: :ref:`RID`, disable\: :ref:`bool`\ ) |virtual| |required| :ref:`🔗` Overridable version of :ref:`PhysicsServer2D.joint_disable_collisions_between_bodies()`. @@ -1610,7 +1610,7 @@ Overridable version of :ref:`PhysicsServer2D.joint_disable_collisions_between_bo .. rst-class:: classref-method -:ref:`float` **_joint_get_param**\ (\ joint\: :ref:`RID`, param\: :ref:`JointParam`\ ) |virtual| |const| :ref:`🔗` +:ref:`float` **_joint_get_param**\ (\ joint\: :ref:`RID`, param\: :ref:`JointParam`\ ) |virtual| |required| |const| :ref:`🔗` Overridable version of :ref:`PhysicsServer2D.joint_get_param()`. @@ -1622,7 +1622,7 @@ Overridable version of :ref:`PhysicsServer2D.joint_get_param()` **_joint_get_type**\ (\ joint\: :ref:`RID`\ ) |virtual| |const| :ref:`🔗` +:ref:`JointType` **_joint_get_type**\ (\ joint\: :ref:`RID`\ ) |virtual| |required| |const| :ref:`🔗` Overridable version of :ref:`PhysicsServer2D.joint_get_type()`. @@ -1634,7 +1634,7 @@ Overridable version of :ref:`PhysicsServer2D.joint_get_type()` **_joint_is_disabled_collisions_between_bodies**\ (\ joint\: :ref:`RID`\ ) |virtual| |const| :ref:`🔗` +:ref:`bool` **_joint_is_disabled_collisions_between_bodies**\ (\ joint\: :ref:`RID`\ ) |virtual| |required| |const| :ref:`🔗` Overridable version of :ref:`PhysicsServer2D.joint_is_disabled_collisions_between_bodies()`. @@ -1646,7 +1646,7 @@ Overridable version of :ref:`PhysicsServer2D.joint_is_disabled_collisions_betwee .. rst-class:: classref-method -|void| **_joint_make_damped_spring**\ (\ joint\: :ref:`RID`, anchor_a\: :ref:`Vector2`, anchor_b\: :ref:`Vector2`, body_a\: :ref:`RID`, body_b\: :ref:`RID`\ ) |virtual| :ref:`🔗` +|void| **_joint_make_damped_spring**\ (\ joint\: :ref:`RID`, anchor_a\: :ref:`Vector2`, anchor_b\: :ref:`Vector2`, body_a\: :ref:`RID`, body_b\: :ref:`RID`\ ) |virtual| |required| :ref:`🔗` Overridable version of :ref:`PhysicsServer2D.joint_make_damped_spring()`. @@ -1658,7 +1658,7 @@ Overridable version of :ref:`PhysicsServer2D.joint_make_damped_spring()`, a_groove1\: :ref:`Vector2`, a_groove2\: :ref:`Vector2`, b_anchor\: :ref:`Vector2`, body_a\: :ref:`RID`, body_b\: :ref:`RID`\ ) |virtual| :ref:`🔗` +|void| **_joint_make_groove**\ (\ joint\: :ref:`RID`, a_groove1\: :ref:`Vector2`, a_groove2\: :ref:`Vector2`, b_anchor\: :ref:`Vector2`, body_a\: :ref:`RID`, body_b\: :ref:`RID`\ ) |virtual| |required| :ref:`🔗` Overridable version of :ref:`PhysicsServer2D.joint_make_groove()`. @@ -1670,7 +1670,7 @@ Overridable version of :ref:`PhysicsServer2D.joint_make_groove()`, anchor\: :ref:`Vector2`, body_a\: :ref:`RID`, body_b\: :ref:`RID`\ ) |virtual| :ref:`🔗` +|void| **_joint_make_pin**\ (\ joint\: :ref:`RID`, anchor\: :ref:`Vector2`, body_a\: :ref:`RID`, body_b\: :ref:`RID`\ ) |virtual| |required| :ref:`🔗` Overridable version of :ref:`PhysicsServer2D.joint_make_pin()`. @@ -1682,7 +1682,7 @@ Overridable version of :ref:`PhysicsServer2D.joint_make_pin()`, param\: :ref:`JointParam`, value\: :ref:`float`\ ) |virtual| :ref:`🔗` +|void| **_joint_set_param**\ (\ joint\: :ref:`RID`, param\: :ref:`JointParam`, value\: :ref:`float`\ ) |virtual| |required| :ref:`🔗` Overridable version of :ref:`PhysicsServer2D.joint_set_param()`. @@ -1694,7 +1694,7 @@ Overridable version of :ref:`PhysicsServer2D.joint_set_param()` **_pin_joint_get_flag**\ (\ joint\: :ref:`RID`, flag\: :ref:`PinJointFlag`\ ) |virtual| |const| :ref:`🔗` +:ref:`bool` **_pin_joint_get_flag**\ (\ joint\: :ref:`RID`, flag\: :ref:`PinJointFlag`\ ) |virtual| |required| |const| :ref:`🔗` Overridable version of :ref:`PhysicsServer2D.pin_joint_get_flag()`. @@ -1706,7 +1706,7 @@ Overridable version of :ref:`PhysicsServer2D.pin_joint_get_flag()` **_pin_joint_get_param**\ (\ joint\: :ref:`RID`, param\: :ref:`PinJointParam`\ ) |virtual| |const| :ref:`🔗` +:ref:`float` **_pin_joint_get_param**\ (\ joint\: :ref:`RID`, param\: :ref:`PinJointParam`\ ) |virtual| |required| |const| :ref:`🔗` Overridable version of :ref:`PhysicsServer2D.pin_joint_get_param()`. @@ -1718,7 +1718,7 @@ Overridable version of :ref:`PhysicsServer2D.pin_joint_get_param()`, flag\: :ref:`PinJointFlag`, enabled\: :ref:`bool`\ ) |virtual| :ref:`🔗` +|void| **_pin_joint_set_flag**\ (\ joint\: :ref:`RID`, flag\: :ref:`PinJointFlag`, enabled\: :ref:`bool`\ ) |virtual| |required| :ref:`🔗` Overridable version of :ref:`PhysicsServer2D.pin_joint_set_flag()`. @@ -1730,7 +1730,7 @@ Overridable version of :ref:`PhysicsServer2D.pin_joint_set_flag()`, param\: :ref:`PinJointParam`, value\: :ref:`float`\ ) |virtual| :ref:`🔗` +|void| **_pin_joint_set_param**\ (\ joint\: :ref:`RID`, param\: :ref:`PinJointParam`, value\: :ref:`float`\ ) |virtual| |required| :ref:`🔗` Overridable version of :ref:`PhysicsServer2D.pin_joint_set_param()`. @@ -1742,7 +1742,7 @@ Overridable version of :ref:`PhysicsServer2D.pin_joint_set_param()` **_rectangle_shape_create**\ (\ ) |virtual| :ref:`🔗` +:ref:`RID` **_rectangle_shape_create**\ (\ ) |virtual| |required| :ref:`🔗` Overridable version of :ref:`PhysicsServer2D.rectangle_shape_create()`. @@ -1754,7 +1754,7 @@ Overridable version of :ref:`PhysicsServer2D.rectangle_shape_create()` **_segment_shape_create**\ (\ ) |virtual| :ref:`🔗` +:ref:`RID` **_segment_shape_create**\ (\ ) |virtual| |required| :ref:`🔗` Overridable version of :ref:`PhysicsServer2D.segment_shape_create()`. @@ -1766,7 +1766,7 @@ Overridable version of :ref:`PhysicsServer2D.segment_shape_create()` **_separation_ray_shape_create**\ (\ ) |virtual| :ref:`🔗` +:ref:`RID` **_separation_ray_shape_create**\ (\ ) |virtual| |required| :ref:`🔗` Overridable version of :ref:`PhysicsServer2D.separation_ray_shape_create()`. @@ -1778,7 +1778,7 @@ Overridable version of :ref:`PhysicsServer2D.separation_ray_shape_create()`\ ) |virtual| :ref:`🔗` +|void| **_set_active**\ (\ active\: :ref:`bool`\ ) |virtual| |required| :ref:`🔗` Overridable version of :ref:`PhysicsServer2D.set_active()`. @@ -1790,7 +1790,7 @@ Overridable version of :ref:`PhysicsServer2D.set_active()` **_shape_collide**\ (\ shape_A\: :ref:`RID`, xform_A\: :ref:`Transform2D`, motion_A\: :ref:`Vector2`, shape_B\: :ref:`RID`, xform_B\: :ref:`Transform2D`, motion_B\: :ref:`Vector2`, results\: ``void*``, result_max\: :ref:`int`, result_count\: ``int32_t*``\ ) |virtual| :ref:`🔗` +:ref:`bool` **_shape_collide**\ (\ shape_A\: :ref:`RID`, xform_A\: :ref:`Transform2D`, motion_A\: :ref:`Vector2`, shape_B\: :ref:`RID`, xform_B\: :ref:`Transform2D`, motion_B\: :ref:`Vector2`, results\: ``void*``, result_max\: :ref:`int`, result_count\: ``int32_t*``\ ) |virtual| |required| :ref:`🔗` Given two shapes and their parameters, should return ``true`` if a collision between the two would occur, with additional details passed in ``results``. @@ -1804,7 +1804,7 @@ Overridable version of :ref:`PhysicsServer2D`'s internal .. rst-class:: classref-method -:ref:`float` **_shape_get_custom_solver_bias**\ (\ shape\: :ref:`RID`\ ) |virtual| |const| :ref:`🔗` +:ref:`float` **_shape_get_custom_solver_bias**\ (\ shape\: :ref:`RID`\ ) |virtual| |required| |const| :ref:`🔗` Should return the custom solver bias of the given ``shape``, which defines how much bodies are forced to separate on contact when this shape is involved. @@ -1818,7 +1818,7 @@ Overridable version of :ref:`PhysicsServer2D`'s internal .. rst-class:: classref-method -:ref:`Variant` **_shape_get_data**\ (\ shape\: :ref:`RID`\ ) |virtual| |const| :ref:`🔗` +:ref:`Variant` **_shape_get_data**\ (\ shape\: :ref:`RID`\ ) |virtual| |required| |const| :ref:`🔗` Overridable version of :ref:`PhysicsServer2D.shape_get_data()`. @@ -1830,7 +1830,7 @@ Overridable version of :ref:`PhysicsServer2D.shape_get_data()` **_shape_get_type**\ (\ shape\: :ref:`RID`\ ) |virtual| |const| :ref:`🔗` +:ref:`ShapeType` **_shape_get_type**\ (\ shape\: :ref:`RID`\ ) |virtual| |required| |const| :ref:`🔗` Overridable version of :ref:`PhysicsServer2D.shape_get_type()`. @@ -1842,7 +1842,7 @@ Overridable version of :ref:`PhysicsServer2D.shape_get_type()`, bias\: :ref:`float`\ ) |virtual| :ref:`🔗` +|void| **_shape_set_custom_solver_bias**\ (\ shape\: :ref:`RID`, bias\: :ref:`float`\ ) |virtual| |required| :ref:`🔗` Should set the custom solver bias for the given ``shape``. It defines how much bodies are forced to separate on contact. @@ -1856,7 +1856,7 @@ Overridable version of :ref:`PhysicsServer2D`'s internal .. rst-class:: classref-method -|void| **_shape_set_data**\ (\ shape\: :ref:`RID`, data\: :ref:`Variant`\ ) |virtual| :ref:`🔗` +|void| **_shape_set_data**\ (\ shape\: :ref:`RID`, data\: :ref:`Variant`\ ) |virtual| |required| :ref:`🔗` Overridable version of :ref:`PhysicsServer2D.shape_set_data()`. @@ -1868,7 +1868,7 @@ Overridable version of :ref:`PhysicsServer2D.shape_set_data()` **_space_create**\ (\ ) |virtual| :ref:`🔗` +:ref:`RID` **_space_create**\ (\ ) |virtual| |required| :ref:`🔗` Overridable version of :ref:`PhysicsServer2D.space_create()`. @@ -1880,7 +1880,7 @@ Overridable version of :ref:`PhysicsServer2D.space_create()` **_space_get_contact_count**\ (\ space\: :ref:`RID`\ ) |virtual| |const| :ref:`🔗` +:ref:`int` **_space_get_contact_count**\ (\ space\: :ref:`RID`\ ) |virtual| |required| |const| :ref:`🔗` Should return how many contacts have occurred during the last physics step in the given ``space``. See also :ref:`_space_get_contacts()` and :ref:`_space_set_debug_contacts()`. @@ -1894,7 +1894,7 @@ Overridable version of :ref:`PhysicsServer2D`'s internal .. rst-class:: classref-method -:ref:`PackedVector2Array` **_space_get_contacts**\ (\ space\: :ref:`RID`\ ) |virtual| |const| :ref:`🔗` +:ref:`PackedVector2Array` **_space_get_contacts**\ (\ space\: :ref:`RID`\ ) |virtual| |required| |const| :ref:`🔗` Should return the positions of all contacts that have occurred during the last physics step in the given ``space``. See also :ref:`_space_get_contact_count()` and :ref:`_space_set_debug_contacts()`. @@ -1908,7 +1908,7 @@ Overridable version of :ref:`PhysicsServer2D`'s internal .. rst-class:: classref-method -:ref:`PhysicsDirectSpaceState2D` **_space_get_direct_state**\ (\ space\: :ref:`RID`\ ) |virtual| :ref:`🔗` +:ref:`PhysicsDirectSpaceState2D` **_space_get_direct_state**\ (\ space\: :ref:`RID`\ ) |virtual| |required| :ref:`🔗` Overridable version of :ref:`PhysicsServer2D.space_get_direct_state()`. @@ -1920,7 +1920,7 @@ Overridable version of :ref:`PhysicsServer2D.space_get_direct_state()` **_space_get_param**\ (\ space\: :ref:`RID`, param\: :ref:`SpaceParameter`\ ) |virtual| |const| :ref:`🔗` +:ref:`float` **_space_get_param**\ (\ space\: :ref:`RID`, param\: :ref:`SpaceParameter`\ ) |virtual| |required| |const| :ref:`🔗` Overridable version of :ref:`PhysicsServer2D.space_get_param()`. @@ -1932,7 +1932,7 @@ Overridable version of :ref:`PhysicsServer2D.space_get_param()` **_space_is_active**\ (\ space\: :ref:`RID`\ ) |virtual| |const| :ref:`🔗` +:ref:`bool` **_space_is_active**\ (\ space\: :ref:`RID`\ ) |virtual| |required| |const| :ref:`🔗` Overridable version of :ref:`PhysicsServer2D.space_is_active()`. @@ -1944,7 +1944,7 @@ Overridable version of :ref:`PhysicsServer2D.space_is_active()`, active\: :ref:`bool`\ ) |virtual| :ref:`🔗` +|void| **_space_set_active**\ (\ space\: :ref:`RID`, active\: :ref:`bool`\ ) |virtual| |required| :ref:`🔗` Overridable version of :ref:`PhysicsServer2D.space_set_active()`. @@ -1956,7 +1956,7 @@ Overridable version of :ref:`PhysicsServer2D.space_set_active()`, max_contacts\: :ref:`int`\ ) |virtual| :ref:`🔗` +|void| **_space_set_debug_contacts**\ (\ space\: :ref:`RID`, max_contacts\: :ref:`int`\ ) |virtual| |required| :ref:`🔗` Used internally to allow the given ``space`` to store contact points, up to ``max_contacts``. This is automatically set for the main :ref:`World2D`'s space when :ref:`SceneTree.debug_collisions_hint` is ``true``, or by checking "Visible Collision Shapes" in the editor. Only works in debug builds. @@ -1970,7 +1970,7 @@ Overridable version of :ref:`PhysicsServer2D`'s internal .. rst-class:: classref-method -|void| **_space_set_param**\ (\ space\: :ref:`RID`, param\: :ref:`SpaceParameter`, value\: :ref:`float`\ ) |virtual| :ref:`🔗` +|void| **_space_set_param**\ (\ space\: :ref:`RID`, param\: :ref:`SpaceParameter`, value\: :ref:`float`\ ) |virtual| |required| :ref:`🔗` Overridable version of :ref:`PhysicsServer2D.space_set_param()`. @@ -1982,9 +1982,9 @@ Overridable version of :ref:`PhysicsServer2D.space_set_param()`\ ) |virtual| :ref:`🔗` +|void| **_step**\ (\ step\: :ref:`float`\ ) |virtual| |required| :ref:`🔗` -Called every physics step to process the physics simulation. ``step`` is the time elapsed since the last physics step, in seconds. It is usually the same as :ref:`Node.get_physics_process_delta_time()`. +Called every physics step to process the physics simulation. ``step`` is the time elapsed since the last physics step, in seconds. It is usually the same as the value returned by :ref:`Node.get_physics_process_delta_time()`. Overridable version of :ref:`PhysicsServer2D`'s internal ``step`` method. @@ -1996,7 +1996,7 @@ Overridable version of :ref:`PhysicsServer2D`'s internal .. rst-class:: classref-method -|void| **_sync**\ (\ ) |virtual| :ref:`🔗` +|void| **_sync**\ (\ ) |virtual| |required| :ref:`🔗` Called to indicate that the physics server is synchronizing and cannot access physics states if running on a separate thread. See also :ref:`_end_sync()`. @@ -2010,7 +2010,7 @@ Overridable version of :ref:`PhysicsServer2D`'s internal .. rst-class:: classref-method -:ref:`RID` **_world_boundary_shape_create**\ (\ ) |virtual| :ref:`🔗` +:ref:`RID` **_world_boundary_shape_create**\ (\ ) |virtual| |required| :ref:`🔗` Overridable version of :ref:`PhysicsServer2D.world_boundary_shape_create()`. @@ -2039,6 +2039,7 @@ Returns ``true`` if the body with the given :ref:`RID` is being exclu Returns ``true`` if the object with the given instance ID is being excluded from :ref:`_body_test_motion()`. See also :ref:`Object.get_instance_id()`. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_physicsserver2dmanager.rst b/classes/class_physicsserver2dmanager.rst index 68e12e909..76e6aa4ab 100644 --- a/classes/class_physicsserver2dmanager.rst +++ b/classes/class_physicsserver2dmanager.rst @@ -67,6 +67,7 @@ Register a :ref:`PhysicsServer2D` implementation by passi Set the default :ref:`PhysicsServer2D` implementation to the one identified by ``name``, if ``priority`` is greater than the priority of the current default implementation. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_physicsserver3d.rst b/classes/class_physicsserver3d.rst index 6448f31f5..1be72a6b8 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`\ ) | @@ -536,7 +548,7 @@ The speed with which the rotation across the axis perpendicular to the hinge get .. container:: contribute - There is currently no description for this enum. Please help us by :ref:`contributing one `! + There is currently no description for this enum. Please help us by `contributing one `__! @@ -918,7 +930,7 @@ The maximum force that the linear motor can apply while trying to reach the targ .. container:: contribute - There is currently no description for this enum. Please help us by :ref:`contributing one `! + There is currently no description for this enum. Please help us by `contributing one `__! @@ -930,7 +942,7 @@ The maximum force that the linear motor can apply while trying to reach the targ .. container:: contribute - There is currently no description for this enum. Please help us by :ref:`contributing one `! + There is currently no description for this enum. Please help us by `contributing one `__! @@ -942,7 +954,7 @@ The maximum force that the linear motor can apply while trying to reach the targ .. container:: contribute - There is currently no description for this enum. Please help us by :ref:`contributing one `! + There is currently no description for this enum. Please help us by `contributing one `__! @@ -1026,7 +1038,7 @@ Maximum acceleration for the motor at the axes. .. container:: contribute - There is currently no description for this enum. Please help us by :ref:`contributing one `! + There is currently no description for this enum. Please help us by `contributing one `__! @@ -1038,7 +1050,7 @@ Maximum acceleration for the motor at the axes. .. container:: contribute - There is currently no description for this enum. Please help us by :ref:`contributing one `! + There is currently no description for this enum. Please help us by `contributing one `__! @@ -1050,7 +1062,7 @@ Maximum acceleration for the motor at the axes. .. container:: contribute - There is currently no description for this enum. Please help us by :ref:`contributing one `! + There is currently no description for this enum. Please help us by `contributing one `__! @@ -1096,7 +1108,7 @@ If set, rotational motion is possible. .. container:: contribute - There is currently no description for this enum. Please help us by :ref:`contributing one `! + There is currently no description for this enum. Please help us by `contributing one `__! @@ -1108,7 +1120,7 @@ If set, rotational motion is possible. .. container:: contribute - There is currently no description for this enum. Please help us by :ref:`contributing one `! + There is currently no description for this enum. Please help us by `contributing one `__! @@ -1776,7 +1788,7 @@ enum **BodyAxis**: :ref:`🔗` .. container:: contribute - There is currently no description for this enum. Please help us by :ref:`contributing one `! + There is currently no description for this enum. Please help us by `contributing one `__! @@ -1788,7 +1800,7 @@ enum **BodyAxis**: :ref:`🔗` .. container:: contribute - There is currently no description for this enum. Please help us by :ref:`contributing one `! + There is currently no description for this enum. Please help us by `contributing one `__! @@ -1800,7 +1812,7 @@ enum **BodyAxis**: :ref:`🔗` .. container:: contribute - There is currently no description for this enum. Please help us by :ref:`contributing one `! + There is currently no description for this enum. Please help us by `contributing one `__! @@ -1812,7 +1824,7 @@ enum **BodyAxis**: :ref:`🔗` .. container:: contribute - There is currently no description for this enum. Please help us by :ref:`contributing one `! + There is currently no description for this enum. Please help us by `contributing one `__! @@ -1824,7 +1836,7 @@ enum **BodyAxis**: :ref:`🔗` .. container:: contribute - There is currently no description for this enum. Please help us by :ref:`contributing one `! + There is currently no description for this enum. Please help us by `contributing one `__! @@ -1836,7 +1848,7 @@ enum **BodyAxis**: :ref:`🔗` .. container:: contribute - There is currently no description for this enum. Please help us by :ref:`contributing one `! + There is currently no description for this enum. Please help us by `contributing one `__! @@ -2099,7 +2111,7 @@ By counting (or keeping track of) the shapes that enter and exit, it can be dete .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -2149,7 +2161,7 @@ Substitutes a given area shape by another. The old shape is selected by its inde .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -2571,7 +2583,7 @@ Returns a body state. .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -2647,7 +2659,7 @@ Restores the default inertia and center of mass based on shapes to cancel any cu .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -2783,7 +2795,7 @@ Sets the maximum contacts to report. Bodies can keep a log of the contacts with |void| **body_set_mode**\ (\ body\: :ref:`RID`, mode\: :ref:`BodyMode`\ ) :ref:`🔗` -Sets the body mode, from one of the :ref:`BodyMode` constants. +Sets the body mode. .. rst-class:: classref-item-separator @@ -2847,7 +2859,7 @@ Substitutes a given body shape by another. The old shape is selected by its inde .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -2883,7 +2895,7 @@ Assigns a space to the body (see :ref:`space_create()`, state\: :ref:`BodyState`, value\: :ref:`Variant`\ ) :ref:`🔗` -Sets a body state (see :ref:`BodyState` constants). +Sets a body state. .. rst-class:: classref-item-separator @@ -2927,7 +2939,7 @@ Returns ``true`` if a collision would result from moving along a motion vector f .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -2941,7 +2953,7 @@ Returns ``true`` if a collision would result from moving along a motion vector f .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -2955,7 +2967,7 @@ Returns ``true`` if a collision would result from moving along a motion vector f .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -2967,7 +2979,7 @@ Returns ``true`` if a collision would result from moving along a motion vector f :ref:`float` **cone_twist_joint_get_param**\ (\ joint\: :ref:`RID`, param\: :ref:`ConeTwistJointParam`\ ) |const| :ref:`🔗` -Gets a cone_twist_joint parameter (see :ref:`ConeTwistJointParam` constants). +Gets a cone twist joint parameter. .. rst-class:: classref-item-separator @@ -2979,7 +2991,7 @@ Gets a cone_twist_joint parameter (see :ref:`ConeTwistJointParam`, param\: :ref:`ConeTwistJointParam`, value\: :ref:`float`\ ) :ref:`🔗` -Sets a cone_twist_joint parameter (see :ref:`ConeTwistJointParam` constants). +Sets a cone twist joint parameter. .. rst-class:: classref-item-separator @@ -2993,7 +3005,7 @@ Sets a cone_twist_joint parameter (see :ref:`ConeTwistJointParam`! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -3007,7 +3019,7 @@ Sets a cone_twist_joint parameter (see :ref:`ConeTwistJointParam`! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -3021,7 +3033,7 @@ Sets a cone_twist_joint parameter (see :ref:`ConeTwistJointParam`! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -3045,7 +3057,7 @@ Destroys any of the objects created by PhysicsServer3D. If the :ref:`RID` **generic_6dof_joint_get_flag**\ (\ joint\: :ref:`RID`, axis\: :ref:`Axis`, flag\: :ref:`G6DOFJointAxisFlag`\ ) |const| :ref:`🔗` -Returns the value of a generic 6DOF joint flag. See :ref:`G6DOFJointAxisFlag` for the list of available flags. +Returns the value of a generic 6DOF joint flag. .. rst-class:: classref-item-separator @@ -3057,7 +3069,7 @@ Returns the value of a generic 6DOF joint flag. See :ref:`G6DOFJointAxisFlag` **generic_6dof_joint_get_param**\ (\ joint\: :ref:`RID`, axis\: :ref:`Axis`, param\: :ref:`G6DOFJointAxisParam`\ ) |const| :ref:`🔗` -Returns the value of a generic 6DOF joint parameter. See :ref:`G6DOFJointAxisParam` for the list of available parameters. +Returns the value of a generic 6DOF joint parameter. .. rst-class:: classref-item-separator @@ -3069,7 +3081,7 @@ Returns the value of a generic 6DOF joint parameter. See :ref:`G6DOFJointAxisPar |void| **generic_6dof_joint_set_flag**\ (\ joint\: :ref:`RID`, axis\: :ref:`Axis`, flag\: :ref:`G6DOFJointAxisFlag`, enable\: :ref:`bool`\ ) :ref:`🔗` -Sets the value of a given generic 6DOF joint flag. See :ref:`G6DOFJointAxisFlag` for the list of available flags. +Sets the value of a given generic 6DOF joint flag. .. rst-class:: classref-item-separator @@ -3081,7 +3093,7 @@ Sets the value of a given generic 6DOF joint flag. See :ref:`G6DOFJointAxisFlag< |void| **generic_6dof_joint_set_param**\ (\ joint\: :ref:`RID`, axis\: :ref:`Axis`, param\: :ref:`G6DOFJointAxisParam`, value\: :ref:`float`\ ) :ref:`🔗` -Sets the value of a given generic 6DOF joint parameter. See :ref:`G6DOFJointAxisParam` for the list of available parameters. +Sets the value of a given generic 6DOF joint parameter. .. rst-class:: classref-item-separator @@ -3093,7 +3105,7 @@ Sets the value of a given generic 6DOF joint parameter. See :ref:`G6DOFJointAxis :ref:`int` **get_process_info**\ (\ process_info\: :ref:`ProcessInfo`\ ) :ref:`🔗` -Returns information about the current state of the 3D physics engine. See :ref:`ProcessInfo` for a list of available states. +Returns the value of a physics engine state specified by ``process_info``. .. rst-class:: classref-item-separator @@ -3107,7 +3119,7 @@ Returns information about the current state of the 3D physics engine. See :ref:` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -3119,7 +3131,7 @@ Returns information about the current state of the 3D physics engine. See :ref:` :ref:`bool` **hinge_joint_get_flag**\ (\ joint\: :ref:`RID`, flag\: :ref:`HingeJointFlag`\ ) |const| :ref:`🔗` -Gets a hinge_joint flag (see :ref:`HingeJointFlag` constants). +Gets a hinge joint flag. .. rst-class:: classref-item-separator @@ -3131,7 +3143,7 @@ Gets a hinge_joint flag (see :ref:`HingeJointFlag` **hinge_joint_get_param**\ (\ joint\: :ref:`RID`, param\: :ref:`HingeJointParam`\ ) |const| :ref:`🔗` -Gets a hinge_joint parameter (see :ref:`HingeJointParam`). +Gets a hinge joint parameter. .. rst-class:: classref-item-separator @@ -3143,7 +3155,7 @@ Gets a hinge_joint parameter (see :ref:`HingeJointParam`, flag\: :ref:`HingeJointFlag`, enabled\: :ref:`bool`\ ) :ref:`🔗` -Sets a hinge_joint flag (see :ref:`HingeJointFlag` constants). +Sets a hinge joint flag. .. rst-class:: classref-item-separator @@ -3155,7 +3167,7 @@ Sets a hinge_joint flag (see :ref:`HingeJointFlag`, param\: :ref:`HingeJointParam`, value\: :ref:`float`\ ) :ref:`🔗` -Sets a hinge_joint parameter (see :ref:`HingeJointParam` constants). +Sets a hinge joint parameter. .. rst-class:: classref-item-separator @@ -3169,7 +3181,7 @@ Sets a hinge_joint parameter (see :ref:`HingeJointParam`! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -3183,7 +3195,7 @@ Sets a hinge_joint parameter (see :ref:`HingeJointParam`! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -3245,7 +3257,7 @@ Returns whether the bodies attached to the :ref:`Joint3D` will co .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -3271,7 +3283,7 @@ Make the joint a generic six degrees of freedom (6DOF) joint. Use :ref:`generic_ .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -3285,7 +3297,7 @@ Make the joint a generic six degrees of freedom (6DOF) joint. Use :ref:`generic_ .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -3299,7 +3311,7 @@ Make the joint a generic six degrees of freedom (6DOF) joint. Use :ref:`generic_ .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -3347,7 +3359,7 @@ Returns position of the joint in the local space of body b of the joint. :ref:`float` **pin_joint_get_param**\ (\ joint\: :ref:`RID`, param\: :ref:`PinJointParam`\ ) |const| :ref:`🔗` -Gets a pin_joint parameter (see :ref:`PinJointParam` constants). +Gets a pin joint parameter. .. rst-class:: classref-item-separator @@ -3383,7 +3395,7 @@ Sets position of the joint in the local space of body b of the joint. |void| **pin_joint_set_param**\ (\ joint\: :ref:`RID`, param\: :ref:`PinJointParam`, value\: :ref:`float`\ ) :ref:`🔗` -Sets a pin_joint parameter (see :ref:`PinJointParam` constants). +Sets a pin joint parameter. .. rst-class:: classref-item-separator @@ -3397,7 +3409,7 @@ Sets a pin_joint parameter (see :ref:`PinJointParam`! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -3447,7 +3459,7 @@ Returns the collision margin for the shape. :ref:`ShapeType` **shape_get_type**\ (\ shape\: :ref:`RID`\ ) |const| :ref:`🔗` -Returns the type of shape (see :ref:`ShapeType` constants). +Returns the type of shape. .. rst-class:: classref-item-separator @@ -3485,7 +3497,7 @@ Sets the collision margin for the shape. :ref:`float` **slider_joint_get_param**\ (\ joint\: :ref:`RID`, param\: :ref:`SliderJointParam`\ ) |const| :ref:`🔗` -Gets a slider_joint parameter (see :ref:`SliderJointParam` constants). +Gets a slider joint parameter. .. rst-class:: classref-item-separator @@ -3497,7 +3509,7 @@ Gets a slider_joint parameter (see :ref:`SliderJointParam`, param\: :ref:`SliderJointParam`, value\: :ref:`float`\ ) :ref:`🔗` -Gets a slider_joint parameter (see :ref:`SliderJointParam` constants). +Gets a slider joint parameter. .. rst-class:: classref-item-separator @@ -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 @@ -3653,7 +3729,7 @@ Returns the :ref:`RID` of the space assigned to the given soft body. :ref:`Variant` **soft_body_get_state**\ (\ body\: :ref:`RID`, state\: :ref:`BodyState`\ ) |const| :ref:`🔗` -Returns the given soft body state (see :ref:`BodyState` constants). +Returns the given soft body state. \ **Note:** Godot's default physics implementation does not support :ref:`BODY_STATE_LINEAR_VELOCITY`, :ref:`BODY_STATE_ANGULAR_VELOCITY`, :ref:`BODY_STATE_SLEEPING`, or :ref:`BODY_STATE_CAN_SLEEP`. @@ -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 @@ -3863,7 +3951,7 @@ Assigns a space to the given soft body (see :ref:`space_create()`, state\: :ref:`BodyState`, variant\: :ref:`Variant`\ ) :ref:`🔗` -Sets the given body state for the given body (see :ref:`BodyState` constants). +Sets the given body state for the given body. \ **Note:** Godot's default physics implementation does not support :ref:`BODY_STATE_LINEAR_VELOCITY`, :ref:`BODY_STATE_ANGULAR_VELOCITY`, :ref:`BODY_STATE_SLEEPING`, or :ref:`BODY_STATE_CAN_SLEEP`. @@ -3987,7 +4075,7 @@ Sets the value for a space parameter. A list of available parameters is on the : .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -4001,9 +4089,10 @@ Sets the value for a space parameter. A list of available parameters is on the : .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_physicsserver3dextension.rst b/classes/class_physicsserver3dextension.rst index a0ec519d5..30e4265ff 100644 --- a/classes/class_physicsserver3dextension.rst +++ b/classes/class_physicsserver3dextension.rst @@ -31,387 +31,399 @@ Methods .. table:: :widths: auto - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_area_add_shape`\ (\ area\: :ref:`RID`, shape\: :ref:`RID`, transform\: :ref:`Transform3D`, disabled\: :ref:`bool`\ ) |virtual| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_area_attach_object_instance_id`\ (\ area\: :ref:`RID`, id\: :ref:`int`\ ) |virtual| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_area_clear_shapes`\ (\ area\: :ref:`RID`\ ) |virtual| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`RID` | :ref:`_area_create`\ (\ ) |virtual| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`_area_get_collision_layer`\ (\ area\: :ref:`RID`\ ) |virtual| |const| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`_area_get_collision_mask`\ (\ area\: :ref:`RID`\ ) |virtual| |const| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`_area_get_object_instance_id`\ (\ area\: :ref:`RID`\ ) |virtual| |const| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Variant` | :ref:`_area_get_param`\ (\ area\: :ref:`RID`, param\: :ref:`AreaParameter`\ ) |virtual| |const| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`RID` | :ref:`_area_get_shape`\ (\ area\: :ref:`RID`, shape_idx\: :ref:`int`\ ) |virtual| |const| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`_area_get_shape_count`\ (\ area\: :ref:`RID`\ ) |virtual| |const| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Transform3D` | :ref:`_area_get_shape_transform`\ (\ area\: :ref:`RID`, shape_idx\: :ref:`int`\ ) |virtual| |const| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`RID` | :ref:`_area_get_space`\ (\ area\: :ref:`RID`\ ) |virtual| |const| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Transform3D` | :ref:`_area_get_transform`\ (\ area\: :ref:`RID`\ ) |virtual| |const| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_area_remove_shape`\ (\ area\: :ref:`RID`, shape_idx\: :ref:`int`\ ) |virtual| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_area_set_area_monitor_callback`\ (\ area\: :ref:`RID`, callback\: :ref:`Callable`\ ) |virtual| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_area_set_collision_layer`\ (\ area\: :ref:`RID`, layer\: :ref:`int`\ ) |virtual| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_area_set_collision_mask`\ (\ area\: :ref:`RID`, mask\: :ref:`int`\ ) |virtual| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_area_set_monitor_callback`\ (\ area\: :ref:`RID`, callback\: :ref:`Callable`\ ) |virtual| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_area_set_monitorable`\ (\ area\: :ref:`RID`, monitorable\: :ref:`bool`\ ) |virtual| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_area_set_param`\ (\ area\: :ref:`RID`, param\: :ref:`AreaParameter`, value\: :ref:`Variant`\ ) |virtual| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_area_set_ray_pickable`\ (\ area\: :ref:`RID`, enable\: :ref:`bool`\ ) |virtual| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_area_set_shape`\ (\ area\: :ref:`RID`, shape_idx\: :ref:`int`, shape\: :ref:`RID`\ ) |virtual| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_area_set_shape_disabled`\ (\ area\: :ref:`RID`, shape_idx\: :ref:`int`, disabled\: :ref:`bool`\ ) |virtual| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_area_set_shape_transform`\ (\ area\: :ref:`RID`, shape_idx\: :ref:`int`, transform\: :ref:`Transform3D`\ ) |virtual| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_area_set_space`\ (\ area\: :ref:`RID`, space\: :ref:`RID`\ ) |virtual| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_area_set_transform`\ (\ area\: :ref:`RID`, transform\: :ref:`Transform3D`\ ) |virtual| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_body_add_collision_exception`\ (\ body\: :ref:`RID`, excepted_body\: :ref:`RID`\ ) |virtual| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_body_add_constant_central_force`\ (\ body\: :ref:`RID`, force\: :ref:`Vector3`\ ) |virtual| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_body_add_constant_force`\ (\ body\: :ref:`RID`, force\: :ref:`Vector3`, position\: :ref:`Vector3`\ ) |virtual| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_body_add_constant_torque`\ (\ body\: :ref:`RID`, torque\: :ref:`Vector3`\ ) |virtual| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_body_add_shape`\ (\ body\: :ref:`RID`, shape\: :ref:`RID`, transform\: :ref:`Transform3D`, disabled\: :ref:`bool`\ ) |virtual| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_body_apply_central_force`\ (\ body\: :ref:`RID`, force\: :ref:`Vector3`\ ) |virtual| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_body_apply_central_impulse`\ (\ body\: :ref:`RID`, impulse\: :ref:`Vector3`\ ) |virtual| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_body_apply_force`\ (\ body\: :ref:`RID`, force\: :ref:`Vector3`, position\: :ref:`Vector3`\ ) |virtual| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_body_apply_impulse`\ (\ body\: :ref:`RID`, impulse\: :ref:`Vector3`, position\: :ref:`Vector3`\ ) |virtual| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_body_apply_torque`\ (\ body\: :ref:`RID`, torque\: :ref:`Vector3`\ ) |virtual| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_body_apply_torque_impulse`\ (\ body\: :ref:`RID`, impulse\: :ref:`Vector3`\ ) |virtual| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_body_attach_object_instance_id`\ (\ body\: :ref:`RID`, id\: :ref:`int`\ ) |virtual| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_body_clear_shapes`\ (\ body\: :ref:`RID`\ ) |virtual| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`RID` | :ref:`_body_create`\ (\ ) |virtual| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Array`\[:ref:`RID`\] | :ref:`_body_get_collision_exceptions`\ (\ body\: :ref:`RID`\ ) |virtual| |const| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`_body_get_collision_layer`\ (\ body\: :ref:`RID`\ ) |virtual| |const| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`_body_get_collision_mask`\ (\ body\: :ref:`RID`\ ) |virtual| |const| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`float` | :ref:`_body_get_collision_priority`\ (\ body\: :ref:`RID`\ ) |virtual| |const| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Vector3` | :ref:`_body_get_constant_force`\ (\ body\: :ref:`RID`\ ) |virtual| |const| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Vector3` | :ref:`_body_get_constant_torque`\ (\ body\: :ref:`RID`\ ) |virtual| |const| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`float` | :ref:`_body_get_contacts_reported_depth_threshold`\ (\ body\: :ref:`RID`\ ) |virtual| |const| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`PhysicsDirectBodyState3D` | :ref:`_body_get_direct_state`\ (\ body\: :ref:`RID`\ ) |virtual| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`_body_get_max_contacts_reported`\ (\ body\: :ref:`RID`\ ) |virtual| |const| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`BodyMode` | :ref:`_body_get_mode`\ (\ body\: :ref:`RID`\ ) |virtual| |const| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`_body_get_object_instance_id`\ (\ body\: :ref:`RID`\ ) |virtual| |const| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Variant` | :ref:`_body_get_param`\ (\ body\: :ref:`RID`, param\: :ref:`BodyParameter`\ ) |virtual| |const| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`RID` | :ref:`_body_get_shape`\ (\ body\: :ref:`RID`, shape_idx\: :ref:`int`\ ) |virtual| |const| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`_body_get_shape_count`\ (\ body\: :ref:`RID`\ ) |virtual| |const| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Transform3D` | :ref:`_body_get_shape_transform`\ (\ body\: :ref:`RID`, shape_idx\: :ref:`int`\ ) |virtual| |const| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`RID` | :ref:`_body_get_space`\ (\ body\: :ref:`RID`\ ) |virtual| |const| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Variant` | :ref:`_body_get_state`\ (\ body\: :ref:`RID`, state\: :ref:`BodyState`\ ) |virtual| |const| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`_body_get_user_flags`\ (\ body\: :ref:`RID`\ ) |virtual| |const| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`_body_is_axis_locked`\ (\ body\: :ref:`RID`, axis\: :ref:`BodyAxis`\ ) |virtual| |const| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`_body_is_continuous_collision_detection_enabled`\ (\ body\: :ref:`RID`\ ) |virtual| |const| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`_body_is_omitting_force_integration`\ (\ body\: :ref:`RID`\ ) |virtual| |const| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_body_remove_collision_exception`\ (\ body\: :ref:`RID`, excepted_body\: :ref:`RID`\ ) |virtual| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_body_remove_shape`\ (\ body\: :ref:`RID`, shape_idx\: :ref:`int`\ ) |virtual| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_body_reset_mass_properties`\ (\ body\: :ref:`RID`\ ) |virtual| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_body_set_axis_lock`\ (\ body\: :ref:`RID`, axis\: :ref:`BodyAxis`, lock\: :ref:`bool`\ ) |virtual| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_body_set_axis_velocity`\ (\ body\: :ref:`RID`, axis_velocity\: :ref:`Vector3`\ ) |virtual| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_body_set_collision_layer`\ (\ body\: :ref:`RID`, layer\: :ref:`int`\ ) |virtual| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_body_set_collision_mask`\ (\ body\: :ref:`RID`, mask\: :ref:`int`\ ) |virtual| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_body_set_collision_priority`\ (\ body\: :ref:`RID`, priority\: :ref:`float`\ ) |virtual| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_body_set_constant_force`\ (\ body\: :ref:`RID`, force\: :ref:`Vector3`\ ) |virtual| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_body_set_constant_torque`\ (\ body\: :ref:`RID`, torque\: :ref:`Vector3`\ ) |virtual| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_body_set_contacts_reported_depth_threshold`\ (\ body\: :ref:`RID`, threshold\: :ref:`float`\ ) |virtual| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_body_set_enable_continuous_collision_detection`\ (\ body\: :ref:`RID`, enable\: :ref:`bool`\ ) |virtual| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_body_set_force_integration_callback`\ (\ body\: :ref:`RID`, callable\: :ref:`Callable`, userdata\: :ref:`Variant`\ ) |virtual| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_body_set_max_contacts_reported`\ (\ body\: :ref:`RID`, amount\: :ref:`int`\ ) |virtual| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_body_set_mode`\ (\ body\: :ref:`RID`, mode\: :ref:`BodyMode`\ ) |virtual| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_body_set_omit_force_integration`\ (\ body\: :ref:`RID`, enable\: :ref:`bool`\ ) |virtual| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_body_set_param`\ (\ body\: :ref:`RID`, param\: :ref:`BodyParameter`, value\: :ref:`Variant`\ ) |virtual| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_body_set_ray_pickable`\ (\ body\: :ref:`RID`, enable\: :ref:`bool`\ ) |virtual| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_body_set_shape`\ (\ body\: :ref:`RID`, shape_idx\: :ref:`int`, shape\: :ref:`RID`\ ) |virtual| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_body_set_shape_disabled`\ (\ body\: :ref:`RID`, shape_idx\: :ref:`int`, disabled\: :ref:`bool`\ ) |virtual| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_body_set_shape_transform`\ (\ body\: :ref:`RID`, shape_idx\: :ref:`int`, transform\: :ref:`Transform3D`\ ) |virtual| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_body_set_space`\ (\ body\: :ref:`RID`, space\: :ref:`RID`\ ) |virtual| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_body_set_state`\ (\ body\: :ref:`RID`, state\: :ref:`BodyState`, value\: :ref:`Variant`\ ) |virtual| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_body_set_state_sync_callback`\ (\ body\: :ref:`RID`, callable\: :ref:`Callable`\ ) |virtual| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_body_set_user_flags`\ (\ body\: :ref:`RID`, flags\: :ref:`int`\ ) |virtual| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`_body_test_motion`\ (\ body\: :ref:`RID`, from\: :ref:`Transform3D`, motion\: :ref:`Vector3`, margin\: :ref:`float`, max_collisions\: :ref:`int`, collide_separation_ray\: :ref:`bool`, recovery_as_collision\: :ref:`bool`, result\: ``PhysicsServer3DExtensionMotionResult*``\ ) |virtual| |const| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`RID` | :ref:`_box_shape_create`\ (\ ) |virtual| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`RID` | :ref:`_capsule_shape_create`\ (\ ) |virtual| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`RID` | :ref:`_concave_polygon_shape_create`\ (\ ) |virtual| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`float` | :ref:`_cone_twist_joint_get_param`\ (\ joint\: :ref:`RID`, param\: :ref:`ConeTwistJointParam`\ ) |virtual| |const| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_cone_twist_joint_set_param`\ (\ joint\: :ref:`RID`, param\: :ref:`ConeTwistJointParam`, value\: :ref:`float`\ ) |virtual| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`RID` | :ref:`_convex_polygon_shape_create`\ (\ ) |virtual| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`RID` | :ref:`_custom_shape_create`\ (\ ) |virtual| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`RID` | :ref:`_cylinder_shape_create`\ (\ ) |virtual| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_end_sync`\ (\ ) |virtual| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_finish`\ (\ ) |virtual| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_flush_queries`\ (\ ) |virtual| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_free_rid`\ (\ rid\: :ref:`RID`\ ) |virtual| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`_generic_6dof_joint_get_flag`\ (\ joint\: :ref:`RID`, axis\: :ref:`Axis`, flag\: :ref:`G6DOFJointAxisFlag`\ ) |virtual| |const| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`float` | :ref:`_generic_6dof_joint_get_param`\ (\ joint\: :ref:`RID`, axis\: :ref:`Axis`, param\: :ref:`G6DOFJointAxisParam`\ ) |virtual| |const| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_generic_6dof_joint_set_flag`\ (\ joint\: :ref:`RID`, axis\: :ref:`Axis`, flag\: :ref:`G6DOFJointAxisFlag`, enable\: :ref:`bool`\ ) |virtual| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_generic_6dof_joint_set_param`\ (\ joint\: :ref:`RID`, axis\: :ref:`Axis`, param\: :ref:`G6DOFJointAxisParam`, value\: :ref:`float`\ ) |virtual| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`_get_process_info`\ (\ process_info\: :ref:`ProcessInfo`\ ) |virtual| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`RID` | :ref:`_heightmap_shape_create`\ (\ ) |virtual| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`_hinge_joint_get_flag`\ (\ joint\: :ref:`RID`, flag\: :ref:`HingeJointFlag`\ ) |virtual| |const| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`float` | :ref:`_hinge_joint_get_param`\ (\ joint\: :ref:`RID`, param\: :ref:`HingeJointParam`\ ) |virtual| |const| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_hinge_joint_set_flag`\ (\ joint\: :ref:`RID`, flag\: :ref:`HingeJointFlag`, enabled\: :ref:`bool`\ ) |virtual| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_hinge_joint_set_param`\ (\ joint\: :ref:`RID`, param\: :ref:`HingeJointParam`, value\: :ref:`float`\ ) |virtual| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_init`\ (\ ) |virtual| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`_is_flushing_queries`\ (\ ) |virtual| |const| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_joint_clear`\ (\ joint\: :ref:`RID`\ ) |virtual| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`RID` | :ref:`_joint_create`\ (\ ) |virtual| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_joint_disable_collisions_between_bodies`\ (\ joint\: :ref:`RID`, disable\: :ref:`bool`\ ) |virtual| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`_joint_get_solver_priority`\ (\ joint\: :ref:`RID`\ ) |virtual| |const| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`JointType` | :ref:`_joint_get_type`\ (\ joint\: :ref:`RID`\ ) |virtual| |const| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`_joint_is_disabled_collisions_between_bodies`\ (\ joint\: :ref:`RID`\ ) |virtual| |const| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_joint_make_cone_twist`\ (\ joint\: :ref:`RID`, body_A\: :ref:`RID`, local_ref_A\: :ref:`Transform3D`, body_B\: :ref:`RID`, local_ref_B\: :ref:`Transform3D`\ ) |virtual| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_joint_make_generic_6dof`\ (\ joint\: :ref:`RID`, body_A\: :ref:`RID`, local_ref_A\: :ref:`Transform3D`, body_B\: :ref:`RID`, local_ref_B\: :ref:`Transform3D`\ ) |virtual| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_joint_make_hinge`\ (\ joint\: :ref:`RID`, body_A\: :ref:`RID`, hinge_A\: :ref:`Transform3D`, body_B\: :ref:`RID`, hinge_B\: :ref:`Transform3D`\ ) |virtual| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_joint_make_hinge_simple`\ (\ joint\: :ref:`RID`, body_A\: :ref:`RID`, pivot_A\: :ref:`Vector3`, axis_A\: :ref:`Vector3`, body_B\: :ref:`RID`, pivot_B\: :ref:`Vector3`, axis_B\: :ref:`Vector3`\ ) |virtual| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_joint_make_pin`\ (\ joint\: :ref:`RID`, body_A\: :ref:`RID`, local_A\: :ref:`Vector3`, body_B\: :ref:`RID`, local_B\: :ref:`Vector3`\ ) |virtual| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_joint_make_slider`\ (\ joint\: :ref:`RID`, body_A\: :ref:`RID`, local_ref_A\: :ref:`Transform3D`, body_B\: :ref:`RID`, local_ref_B\: :ref:`Transform3D`\ ) |virtual| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_joint_set_solver_priority`\ (\ joint\: :ref:`RID`, priority\: :ref:`int`\ ) |virtual| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Vector3` | :ref:`_pin_joint_get_local_a`\ (\ joint\: :ref:`RID`\ ) |virtual| |const| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Vector3` | :ref:`_pin_joint_get_local_b`\ (\ joint\: :ref:`RID`\ ) |virtual| |const| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`float` | :ref:`_pin_joint_get_param`\ (\ joint\: :ref:`RID`, param\: :ref:`PinJointParam`\ ) |virtual| |const| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_pin_joint_set_local_a`\ (\ joint\: :ref:`RID`, local_A\: :ref:`Vector3`\ ) |virtual| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_pin_joint_set_local_b`\ (\ joint\: :ref:`RID`, local_B\: :ref:`Vector3`\ ) |virtual| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_pin_joint_set_param`\ (\ joint\: :ref:`RID`, param\: :ref:`PinJointParam`, value\: :ref:`float`\ ) |virtual| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`RID` | :ref:`_separation_ray_shape_create`\ (\ ) |virtual| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_set_active`\ (\ active\: :ref:`bool`\ ) |virtual| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`float` | :ref:`_shape_get_custom_solver_bias`\ (\ shape\: :ref:`RID`\ ) |virtual| |const| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Variant` | :ref:`_shape_get_data`\ (\ shape\: :ref:`RID`\ ) |virtual| |const| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`float` | :ref:`_shape_get_margin`\ (\ shape\: :ref:`RID`\ ) |virtual| |const| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`ShapeType` | :ref:`_shape_get_type`\ (\ shape\: :ref:`RID`\ ) |virtual| |const| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_shape_set_custom_solver_bias`\ (\ shape\: :ref:`RID`, bias\: :ref:`float`\ ) |virtual| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_shape_set_data`\ (\ shape\: :ref:`RID`, data\: :ref:`Variant`\ ) |virtual| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_shape_set_margin`\ (\ shape\: :ref:`RID`, margin\: :ref:`float`\ ) |virtual| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`float` | :ref:`_slider_joint_get_param`\ (\ joint\: :ref:`RID`, param\: :ref:`SliderJointParam`\ ) |virtual| |const| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_slider_joint_set_param`\ (\ joint\: :ref:`RID`, param\: :ref:`SliderJointParam`, value\: :ref:`float`\ ) |virtual| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_soft_body_add_collision_exception`\ (\ body\: :ref:`RID`, body_b\: :ref:`RID`\ ) |virtual| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`RID` | :ref:`_soft_body_create`\ (\ ) |virtual| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`AABB` | :ref:`_soft_body_get_bounds`\ (\ body\: :ref:`RID`\ ) |virtual| |const| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Array`\[:ref:`RID`\] | :ref:`_soft_body_get_collision_exceptions`\ (\ body\: :ref:`RID`\ ) |virtual| |const| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`_soft_body_get_collision_layer`\ (\ body\: :ref:`RID`\ ) |virtual| |const| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`_soft_body_get_collision_mask`\ (\ body\: :ref:`RID`\ ) |virtual| |const| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`float` | :ref:`_soft_body_get_damping_coefficient`\ (\ body\: :ref:`RID`\ ) |virtual| |const| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`float` | :ref:`_soft_body_get_drag_coefficient`\ (\ body\: :ref:`RID`\ ) |virtual| |const| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`float` | :ref:`_soft_body_get_linear_stiffness`\ (\ body\: :ref:`RID`\ ) |virtual| |const| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Vector3` | :ref:`_soft_body_get_point_global_position`\ (\ body\: :ref:`RID`, point_index\: :ref:`int`\ ) |virtual| |const| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`float` | :ref:`_soft_body_get_pressure_coefficient`\ (\ 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| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Variant` | :ref:`_soft_body_get_state`\ (\ body\: :ref:`RID`, state\: :ref:`BodyState`\ ) |virtual| |const| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`float` | :ref:`_soft_body_get_total_mass`\ (\ body\: :ref:`RID`\ ) |virtual| |const| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`_soft_body_is_point_pinned`\ (\ body\: :ref:`RID`, point_index\: :ref:`int`\ ) |virtual| |const| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_soft_body_move_point`\ (\ body\: :ref:`RID`, point_index\: :ref:`int`, global_position\: :ref:`Vector3`\ ) |virtual| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_soft_body_pin_point`\ (\ body\: :ref:`RID`, point_index\: :ref:`int`, pin\: :ref:`bool`\ ) |virtual| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_soft_body_remove_all_pinned_points`\ (\ body\: :ref:`RID`\ ) |virtual| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_soft_body_remove_collision_exception`\ (\ body\: :ref:`RID`, body_b\: :ref:`RID`\ ) |virtual| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_soft_body_set_collision_layer`\ (\ body\: :ref:`RID`, layer\: :ref:`int`\ ) |virtual| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_soft_body_set_collision_mask`\ (\ body\: :ref:`RID`, mask\: :ref:`int`\ ) |virtual| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_soft_body_set_damping_coefficient`\ (\ body\: :ref:`RID`, damping_coefficient\: :ref:`float`\ ) |virtual| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_soft_body_set_drag_coefficient`\ (\ body\: :ref:`RID`, drag_coefficient\: :ref:`float`\ ) |virtual| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_soft_body_set_linear_stiffness`\ (\ body\: :ref:`RID`, linear_stiffness\: :ref:`float`\ ) |virtual| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_soft_body_set_mesh`\ (\ body\: :ref:`RID`, mesh\: :ref:`RID`\ ) |virtual| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_soft_body_set_pressure_coefficient`\ (\ body\: :ref:`RID`, pressure_coefficient\: :ref:`float`\ ) |virtual| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_soft_body_set_ray_pickable`\ (\ body\: :ref:`RID`, enable\: :ref:`bool`\ ) |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| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_soft_body_set_state`\ (\ body\: :ref:`RID`, state\: :ref:`BodyState`, variant\: :ref:`Variant`\ ) |virtual| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_soft_body_set_total_mass`\ (\ body\: :ref:`RID`, total_mass\: :ref:`float`\ ) |virtual| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_soft_body_set_transform`\ (\ body\: :ref:`RID`, transform\: :ref:`Transform3D`\ ) |virtual| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_soft_body_update_rendering_server`\ (\ body\: :ref:`RID`, rendering_server_handler\: :ref:`PhysicsServer3DRenderingServerHandler`\ ) |virtual| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`RID` | :ref:`_space_create`\ (\ ) |virtual| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`_space_get_contact_count`\ (\ space\: :ref:`RID`\ ) |virtual| |const| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`PackedVector3Array` | :ref:`_space_get_contacts`\ (\ space\: :ref:`RID`\ ) |virtual| |const| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`PhysicsDirectSpaceState3D` | :ref:`_space_get_direct_state`\ (\ space\: :ref:`RID`\ ) |virtual| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`float` | :ref:`_space_get_param`\ (\ space\: :ref:`RID`, param\: :ref:`SpaceParameter`\ ) |virtual| |const| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`_space_is_active`\ (\ space\: :ref:`RID`\ ) |virtual| |const| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_space_set_active`\ (\ space\: :ref:`RID`, active\: :ref:`bool`\ ) |virtual| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_space_set_debug_contacts`\ (\ space\: :ref:`RID`, max_contacts\: :ref:`int`\ ) |virtual| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_space_set_param`\ (\ space\: :ref:`RID`, param\: :ref:`SpaceParameter`, value\: :ref:`float`\ ) |virtual| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`RID` | :ref:`_sphere_shape_create`\ (\ ) |virtual| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_step`\ (\ step\: :ref:`float`\ ) |virtual| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_sync`\ (\ ) |virtual| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`RID` | :ref:`_world_boundary_shape_create`\ (\ ) |virtual| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`body_test_motion_is_excluding_body`\ (\ body\: :ref:`RID`\ ) |const| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`body_test_motion_is_excluding_object`\ (\ object\: :ref:`int`\ ) |const| | - +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_area_add_shape`\ (\ area\: :ref:`RID`, shape\: :ref:`RID`, transform\: :ref:`Transform3D`, disabled\: :ref:`bool`\ ) |virtual| |required| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_area_attach_object_instance_id`\ (\ area\: :ref:`RID`, id\: :ref:`int`\ ) |virtual| |required| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_area_clear_shapes`\ (\ area\: :ref:`RID`\ ) |virtual| |required| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`RID` | :ref:`_area_create`\ (\ ) |virtual| |required| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`_area_get_collision_layer`\ (\ area\: :ref:`RID`\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`_area_get_collision_mask`\ (\ area\: :ref:`RID`\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`_area_get_object_instance_id`\ (\ area\: :ref:`RID`\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Variant` | :ref:`_area_get_param`\ (\ area\: :ref:`RID`, param\: :ref:`AreaParameter`\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`RID` | :ref:`_area_get_shape`\ (\ area\: :ref:`RID`, shape_idx\: :ref:`int`\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`_area_get_shape_count`\ (\ area\: :ref:`RID`\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Transform3D` | :ref:`_area_get_shape_transform`\ (\ area\: :ref:`RID`, shape_idx\: :ref:`int`\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`RID` | :ref:`_area_get_space`\ (\ area\: :ref:`RID`\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Transform3D` | :ref:`_area_get_transform`\ (\ area\: :ref:`RID`\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_area_remove_shape`\ (\ area\: :ref:`RID`, shape_idx\: :ref:`int`\ ) |virtual| |required| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_area_set_area_monitor_callback`\ (\ area\: :ref:`RID`, callback\: :ref:`Callable`\ ) |virtual| |required| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_area_set_collision_layer`\ (\ area\: :ref:`RID`, layer\: :ref:`int`\ ) |virtual| |required| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_area_set_collision_mask`\ (\ area\: :ref:`RID`, mask\: :ref:`int`\ ) |virtual| |required| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_area_set_monitor_callback`\ (\ area\: :ref:`RID`, callback\: :ref:`Callable`\ ) |virtual| |required| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_area_set_monitorable`\ (\ area\: :ref:`RID`, monitorable\: :ref:`bool`\ ) |virtual| |required| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_area_set_param`\ (\ area\: :ref:`RID`, param\: :ref:`AreaParameter`, value\: :ref:`Variant`\ ) |virtual| |required| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_area_set_ray_pickable`\ (\ area\: :ref:`RID`, enable\: :ref:`bool`\ ) |virtual| |required| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_area_set_shape`\ (\ area\: :ref:`RID`, shape_idx\: :ref:`int`, shape\: :ref:`RID`\ ) |virtual| |required| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_area_set_shape_disabled`\ (\ area\: :ref:`RID`, shape_idx\: :ref:`int`, disabled\: :ref:`bool`\ ) |virtual| |required| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_area_set_shape_transform`\ (\ area\: :ref:`RID`, shape_idx\: :ref:`int`, transform\: :ref:`Transform3D`\ ) |virtual| |required| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_area_set_space`\ (\ area\: :ref:`RID`, space\: :ref:`RID`\ ) |virtual| |required| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_area_set_transform`\ (\ area\: :ref:`RID`, transform\: :ref:`Transform3D`\ ) |virtual| |required| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_body_add_collision_exception`\ (\ body\: :ref:`RID`, excepted_body\: :ref:`RID`\ ) |virtual| |required| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_body_add_constant_central_force`\ (\ body\: :ref:`RID`, force\: :ref:`Vector3`\ ) |virtual| |required| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_body_add_constant_force`\ (\ body\: :ref:`RID`, force\: :ref:`Vector3`, position\: :ref:`Vector3`\ ) |virtual| |required| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_body_add_constant_torque`\ (\ body\: :ref:`RID`, torque\: :ref:`Vector3`\ ) |virtual| |required| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_body_add_shape`\ (\ body\: :ref:`RID`, shape\: :ref:`RID`, transform\: :ref:`Transform3D`, disabled\: :ref:`bool`\ ) |virtual| |required| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_body_apply_central_force`\ (\ body\: :ref:`RID`, force\: :ref:`Vector3`\ ) |virtual| |required| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_body_apply_central_impulse`\ (\ body\: :ref:`RID`, impulse\: :ref:`Vector3`\ ) |virtual| |required| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_body_apply_force`\ (\ body\: :ref:`RID`, force\: :ref:`Vector3`, position\: :ref:`Vector3`\ ) |virtual| |required| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_body_apply_impulse`\ (\ body\: :ref:`RID`, impulse\: :ref:`Vector3`, position\: :ref:`Vector3`\ ) |virtual| |required| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_body_apply_torque`\ (\ body\: :ref:`RID`, torque\: :ref:`Vector3`\ ) |virtual| |required| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_body_apply_torque_impulse`\ (\ body\: :ref:`RID`, impulse\: :ref:`Vector3`\ ) |virtual| |required| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_body_attach_object_instance_id`\ (\ body\: :ref:`RID`, id\: :ref:`int`\ ) |virtual| |required| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_body_clear_shapes`\ (\ body\: :ref:`RID`\ ) |virtual| |required| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`RID` | :ref:`_body_create`\ (\ ) |virtual| |required| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Array`\[:ref:`RID`\] | :ref:`_body_get_collision_exceptions`\ (\ body\: :ref:`RID`\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`_body_get_collision_layer`\ (\ body\: :ref:`RID`\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`_body_get_collision_mask`\ (\ body\: :ref:`RID`\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`_body_get_collision_priority`\ (\ body\: :ref:`RID`\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Vector3` | :ref:`_body_get_constant_force`\ (\ body\: :ref:`RID`\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Vector3` | :ref:`_body_get_constant_torque`\ (\ body\: :ref:`RID`\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`_body_get_contacts_reported_depth_threshold`\ (\ body\: :ref:`RID`\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`PhysicsDirectBodyState3D` | :ref:`_body_get_direct_state`\ (\ body\: :ref:`RID`\ ) |virtual| |required| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`_body_get_max_contacts_reported`\ (\ body\: :ref:`RID`\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`BodyMode` | :ref:`_body_get_mode`\ (\ body\: :ref:`RID`\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`_body_get_object_instance_id`\ (\ body\: :ref:`RID`\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Variant` | :ref:`_body_get_param`\ (\ body\: :ref:`RID`, param\: :ref:`BodyParameter`\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`RID` | :ref:`_body_get_shape`\ (\ body\: :ref:`RID`, shape_idx\: :ref:`int`\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`_body_get_shape_count`\ (\ body\: :ref:`RID`\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Transform3D` | :ref:`_body_get_shape_transform`\ (\ body\: :ref:`RID`, shape_idx\: :ref:`int`\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`RID` | :ref:`_body_get_space`\ (\ body\: :ref:`RID`\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Variant` | :ref:`_body_get_state`\ (\ body\: :ref:`RID`, state\: :ref:`BodyState`\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`_body_get_user_flags`\ (\ body\: :ref:`RID`\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`_body_is_axis_locked`\ (\ body\: :ref:`RID`, axis\: :ref:`BodyAxis`\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`_body_is_continuous_collision_detection_enabled`\ (\ body\: :ref:`RID`\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`_body_is_omitting_force_integration`\ (\ body\: :ref:`RID`\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_body_remove_collision_exception`\ (\ body\: :ref:`RID`, excepted_body\: :ref:`RID`\ ) |virtual| |required| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_body_remove_shape`\ (\ body\: :ref:`RID`, shape_idx\: :ref:`int`\ ) |virtual| |required| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_body_reset_mass_properties`\ (\ body\: :ref:`RID`\ ) |virtual| |required| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_body_set_axis_lock`\ (\ body\: :ref:`RID`, axis\: :ref:`BodyAxis`, lock\: :ref:`bool`\ ) |virtual| |required| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_body_set_axis_velocity`\ (\ body\: :ref:`RID`, axis_velocity\: :ref:`Vector3`\ ) |virtual| |required| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_body_set_collision_layer`\ (\ body\: :ref:`RID`, layer\: :ref:`int`\ ) |virtual| |required| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_body_set_collision_mask`\ (\ body\: :ref:`RID`, mask\: :ref:`int`\ ) |virtual| |required| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_body_set_collision_priority`\ (\ body\: :ref:`RID`, priority\: :ref:`float`\ ) |virtual| |required| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_body_set_constant_force`\ (\ body\: :ref:`RID`, force\: :ref:`Vector3`\ ) |virtual| |required| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_body_set_constant_torque`\ (\ body\: :ref:`RID`, torque\: :ref:`Vector3`\ ) |virtual| |required| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_body_set_contacts_reported_depth_threshold`\ (\ body\: :ref:`RID`, threshold\: :ref:`float`\ ) |virtual| |required| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_body_set_enable_continuous_collision_detection`\ (\ body\: :ref:`RID`, enable\: :ref:`bool`\ ) |virtual| |required| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_body_set_force_integration_callback`\ (\ body\: :ref:`RID`, callable\: :ref:`Callable`, userdata\: :ref:`Variant`\ ) |virtual| |required| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_body_set_max_contacts_reported`\ (\ body\: :ref:`RID`, amount\: :ref:`int`\ ) |virtual| |required| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_body_set_mode`\ (\ body\: :ref:`RID`, mode\: :ref:`BodyMode`\ ) |virtual| |required| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_body_set_omit_force_integration`\ (\ body\: :ref:`RID`, enable\: :ref:`bool`\ ) |virtual| |required| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_body_set_param`\ (\ body\: :ref:`RID`, param\: :ref:`BodyParameter`, value\: :ref:`Variant`\ ) |virtual| |required| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_body_set_ray_pickable`\ (\ body\: :ref:`RID`, enable\: :ref:`bool`\ ) |virtual| |required| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_body_set_shape`\ (\ body\: :ref:`RID`, shape_idx\: :ref:`int`, shape\: :ref:`RID`\ ) |virtual| |required| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_body_set_shape_disabled`\ (\ body\: :ref:`RID`, shape_idx\: :ref:`int`, disabled\: :ref:`bool`\ ) |virtual| |required| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_body_set_shape_transform`\ (\ body\: :ref:`RID`, shape_idx\: :ref:`int`, transform\: :ref:`Transform3D`\ ) |virtual| |required| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_body_set_space`\ (\ body\: :ref:`RID`, space\: :ref:`RID`\ ) |virtual| |required| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_body_set_state`\ (\ body\: :ref:`RID`, state\: :ref:`BodyState`, value\: :ref:`Variant`\ ) |virtual| |required| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_body_set_state_sync_callback`\ (\ body\: :ref:`RID`, callable\: :ref:`Callable`\ ) |virtual| |required| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_body_set_user_flags`\ (\ body\: :ref:`RID`, flags\: :ref:`int`\ ) |virtual| |required| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`_body_test_motion`\ (\ body\: :ref:`RID`, from\: :ref:`Transform3D`, motion\: :ref:`Vector3`, margin\: :ref:`float`, max_collisions\: :ref:`int`, collide_separation_ray\: :ref:`bool`, recovery_as_collision\: :ref:`bool`, result\: ``PhysicsServer3DExtensionMotionResult*``\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`RID` | :ref:`_box_shape_create`\ (\ ) |virtual| |required| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`RID` | :ref:`_capsule_shape_create`\ (\ ) |virtual| |required| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`RID` | :ref:`_concave_polygon_shape_create`\ (\ ) |virtual| |required| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`_cone_twist_joint_get_param`\ (\ joint\: :ref:`RID`, param\: :ref:`ConeTwistJointParam`\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_cone_twist_joint_set_param`\ (\ joint\: :ref:`RID`, param\: :ref:`ConeTwistJointParam`, value\: :ref:`float`\ ) |virtual| |required| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`RID` | :ref:`_convex_polygon_shape_create`\ (\ ) |virtual| |required| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`RID` | :ref:`_custom_shape_create`\ (\ ) |virtual| |required| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`RID` | :ref:`_cylinder_shape_create`\ (\ ) |virtual| |required| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_end_sync`\ (\ ) |virtual| |required| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_finish`\ (\ ) |virtual| |required| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_flush_queries`\ (\ ) |virtual| |required| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_free_rid`\ (\ rid\: :ref:`RID`\ ) |virtual| |required| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`_generic_6dof_joint_get_flag`\ (\ joint\: :ref:`RID`, axis\: :ref:`Axis`, flag\: :ref:`G6DOFJointAxisFlag`\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`_generic_6dof_joint_get_param`\ (\ joint\: :ref:`RID`, axis\: :ref:`Axis`, param\: :ref:`G6DOFJointAxisParam`\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_generic_6dof_joint_set_flag`\ (\ joint\: :ref:`RID`, axis\: :ref:`Axis`, flag\: :ref:`G6DOFJointAxisFlag`, enable\: :ref:`bool`\ ) |virtual| |required| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_generic_6dof_joint_set_param`\ (\ joint\: :ref:`RID`, axis\: :ref:`Axis`, param\: :ref:`G6DOFJointAxisParam`, value\: :ref:`float`\ ) |virtual| |required| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`_get_process_info`\ (\ process_info\: :ref:`ProcessInfo`\ ) |virtual| |required| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`RID` | :ref:`_heightmap_shape_create`\ (\ ) |virtual| |required| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`_hinge_joint_get_flag`\ (\ joint\: :ref:`RID`, flag\: :ref:`HingeJointFlag`\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`_hinge_joint_get_param`\ (\ joint\: :ref:`RID`, param\: :ref:`HingeJointParam`\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_hinge_joint_set_flag`\ (\ joint\: :ref:`RID`, flag\: :ref:`HingeJointFlag`, enabled\: :ref:`bool`\ ) |virtual| |required| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_hinge_joint_set_param`\ (\ joint\: :ref:`RID`, param\: :ref:`HingeJointParam`, value\: :ref:`float`\ ) |virtual| |required| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_init`\ (\ ) |virtual| |required| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`_is_flushing_queries`\ (\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_joint_clear`\ (\ joint\: :ref:`RID`\ ) |virtual| |required| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`RID` | :ref:`_joint_create`\ (\ ) |virtual| |required| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_joint_disable_collisions_between_bodies`\ (\ joint\: :ref:`RID`, disable\: :ref:`bool`\ ) |virtual| |required| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`_joint_get_solver_priority`\ (\ joint\: :ref:`RID`\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`JointType` | :ref:`_joint_get_type`\ (\ joint\: :ref:`RID`\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`_joint_is_disabled_collisions_between_bodies`\ (\ joint\: :ref:`RID`\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_joint_make_cone_twist`\ (\ joint\: :ref:`RID`, body_A\: :ref:`RID`, local_ref_A\: :ref:`Transform3D`, body_B\: :ref:`RID`, local_ref_B\: :ref:`Transform3D`\ ) |virtual| |required| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_joint_make_generic_6dof`\ (\ joint\: :ref:`RID`, body_A\: :ref:`RID`, local_ref_A\: :ref:`Transform3D`, body_B\: :ref:`RID`, local_ref_B\: :ref:`Transform3D`\ ) |virtual| |required| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_joint_make_hinge`\ (\ joint\: :ref:`RID`, body_A\: :ref:`RID`, hinge_A\: :ref:`Transform3D`, body_B\: :ref:`RID`, hinge_B\: :ref:`Transform3D`\ ) |virtual| |required| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_joint_make_hinge_simple`\ (\ joint\: :ref:`RID`, body_A\: :ref:`RID`, pivot_A\: :ref:`Vector3`, axis_A\: :ref:`Vector3`, body_B\: :ref:`RID`, pivot_B\: :ref:`Vector3`, axis_B\: :ref:`Vector3`\ ) |virtual| |required| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_joint_make_pin`\ (\ joint\: :ref:`RID`, body_A\: :ref:`RID`, local_A\: :ref:`Vector3`, body_B\: :ref:`RID`, local_B\: :ref:`Vector3`\ ) |virtual| |required| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_joint_make_slider`\ (\ joint\: :ref:`RID`, body_A\: :ref:`RID`, local_ref_A\: :ref:`Transform3D`, body_B\: :ref:`RID`, local_ref_B\: :ref:`Transform3D`\ ) |virtual| |required| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_joint_set_solver_priority`\ (\ joint\: :ref:`RID`, priority\: :ref:`int`\ ) |virtual| |required| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Vector3` | :ref:`_pin_joint_get_local_a`\ (\ joint\: :ref:`RID`\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Vector3` | :ref:`_pin_joint_get_local_b`\ (\ joint\: :ref:`RID`\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`_pin_joint_get_param`\ (\ joint\: :ref:`RID`, param\: :ref:`PinJointParam`\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_pin_joint_set_local_a`\ (\ joint\: :ref:`RID`, local_A\: :ref:`Vector3`\ ) |virtual| |required| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_pin_joint_set_local_b`\ (\ joint\: :ref:`RID`, local_B\: :ref:`Vector3`\ ) |virtual| |required| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_pin_joint_set_param`\ (\ joint\: :ref:`RID`, param\: :ref:`PinJointParam`, value\: :ref:`float`\ ) |virtual| |required| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`RID` | :ref:`_separation_ray_shape_create`\ (\ ) |virtual| |required| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_set_active`\ (\ active\: :ref:`bool`\ ) |virtual| |required| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`_shape_get_custom_solver_bias`\ (\ shape\: :ref:`RID`\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Variant` | :ref:`_shape_get_data`\ (\ shape\: :ref:`RID`\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`_shape_get_margin`\ (\ shape\: :ref:`RID`\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`ShapeType` | :ref:`_shape_get_type`\ (\ shape\: :ref:`RID`\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_shape_set_custom_solver_bias`\ (\ shape\: :ref:`RID`, bias\: :ref:`float`\ ) |virtual| |required| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_shape_set_data`\ (\ shape\: :ref:`RID`, data\: :ref:`Variant`\ ) |virtual| |required| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_shape_set_margin`\ (\ shape\: :ref:`RID`, margin\: :ref:`float`\ ) |virtual| |required| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`_slider_joint_get_param`\ (\ joint\: :ref:`RID`, param\: :ref:`SliderJointParam`\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_slider_joint_set_param`\ (\ joint\: :ref:`RID`, param\: :ref:`SliderJointParam`, value\: :ref:`float`\ ) |virtual| |required| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_soft_body_add_collision_exception`\ (\ body\: :ref:`RID`, body_b\: :ref:`RID`\ ) |virtual| |required| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_soft_body_apply_central_force`\ (\ body\: :ref:`RID`, force\: :ref:`Vector3`\ ) |virtual| |required| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_soft_body_apply_central_impulse`\ (\ body\: :ref:`RID`, impulse\: :ref:`Vector3`\ ) |virtual| |required| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_soft_body_apply_point_force`\ (\ body\: :ref:`RID`, point_index\: :ref:`int`, force\: :ref:`Vector3`\ ) |virtual| |required| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_soft_body_apply_point_impulse`\ (\ body\: :ref:`RID`, point_index\: :ref:`int`, impulse\: :ref:`Vector3`\ ) |virtual| |required| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`RID` | :ref:`_soft_body_create`\ (\ ) |virtual| |required| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`AABB` | :ref:`_soft_body_get_bounds`\ (\ body\: :ref:`RID`\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Array`\[:ref:`RID`\] | :ref:`_soft_body_get_collision_exceptions`\ (\ body\: :ref:`RID`\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`_soft_body_get_collision_layer`\ (\ body\: :ref:`RID`\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`_soft_body_get_collision_mask`\ (\ body\: :ref:`RID`\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`_soft_body_get_damping_coefficient`\ (\ body\: :ref:`RID`\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`_soft_body_get_drag_coefficient`\ (\ body\: :ref:`RID`\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`_soft_body_get_linear_stiffness`\ (\ body\: :ref:`RID`\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Vector3` | :ref:`_soft_body_get_point_global_position`\ (\ body\: :ref:`RID`, point_index\: :ref:`int`\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`_soft_body_get_pressure_coefficient`\ (\ body\: :ref:`RID`\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`_soft_body_get_shrinking_factor`\ (\ body\: :ref:`RID`\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`_soft_body_get_simulation_precision`\ (\ body\: :ref:`RID`\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`RID` | :ref:`_soft_body_get_space`\ (\ body\: :ref:`RID`\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Variant` | :ref:`_soft_body_get_state`\ (\ body\: :ref:`RID`, state\: :ref:`BodyState`\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`_soft_body_get_total_mass`\ (\ body\: :ref:`RID`\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`_soft_body_is_point_pinned`\ (\ body\: :ref:`RID`, point_index\: :ref:`int`\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_soft_body_move_point`\ (\ body\: :ref:`RID`, point_index\: :ref:`int`, global_position\: :ref:`Vector3`\ ) |virtual| |required| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_soft_body_pin_point`\ (\ body\: :ref:`RID`, point_index\: :ref:`int`, pin\: :ref:`bool`\ ) |virtual| |required| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_soft_body_remove_all_pinned_points`\ (\ body\: :ref:`RID`\ ) |virtual| |required| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_soft_body_remove_collision_exception`\ (\ body\: :ref:`RID`, body_b\: :ref:`RID`\ ) |virtual| |required| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_soft_body_set_collision_layer`\ (\ body\: :ref:`RID`, layer\: :ref:`int`\ ) |virtual| |required| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_soft_body_set_collision_mask`\ (\ body\: :ref:`RID`, mask\: :ref:`int`\ ) |virtual| |required| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_soft_body_set_damping_coefficient`\ (\ body\: :ref:`RID`, damping_coefficient\: :ref:`float`\ ) |virtual| |required| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_soft_body_set_drag_coefficient`\ (\ body\: :ref:`RID`, drag_coefficient\: :ref:`float`\ ) |virtual| |required| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_soft_body_set_linear_stiffness`\ (\ body\: :ref:`RID`, linear_stiffness\: :ref:`float`\ ) |virtual| |required| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_soft_body_set_mesh`\ (\ body\: :ref:`RID`, mesh\: :ref:`RID`\ ) |virtual| |required| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_soft_body_set_pressure_coefficient`\ (\ body\: :ref:`RID`, pressure_coefficient\: :ref:`float`\ ) |virtual| |required| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_soft_body_set_ray_pickable`\ (\ body\: :ref:`RID`, enable\: :ref:`bool`\ ) |virtual| |required| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_soft_body_set_shrinking_factor`\ (\ body\: :ref:`RID`, shrinking_factor\: :ref:`float`\ ) |virtual| |required| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_soft_body_set_simulation_precision`\ (\ body\: :ref:`RID`, simulation_precision\: :ref:`int`\ ) |virtual| |required| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_soft_body_set_space`\ (\ body\: :ref:`RID`, space\: :ref:`RID`\ ) |virtual| |required| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_soft_body_set_state`\ (\ body\: :ref:`RID`, state\: :ref:`BodyState`, variant\: :ref:`Variant`\ ) |virtual| |required| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_soft_body_set_total_mass`\ (\ body\: :ref:`RID`, total_mass\: :ref:`float`\ ) |virtual| |required| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_soft_body_set_transform`\ (\ body\: :ref:`RID`, transform\: :ref:`Transform3D`\ ) |virtual| |required| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_soft_body_update_rendering_server`\ (\ body\: :ref:`RID`, rendering_server_handler\: :ref:`PhysicsServer3DRenderingServerHandler`\ ) |virtual| |required| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`RID` | :ref:`_space_create`\ (\ ) |virtual| |required| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`_space_get_contact_count`\ (\ space\: :ref:`RID`\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`PackedVector3Array` | :ref:`_space_get_contacts`\ (\ space\: :ref:`RID`\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`PhysicsDirectSpaceState3D` | :ref:`_space_get_direct_state`\ (\ space\: :ref:`RID`\ ) |virtual| |required| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`_space_get_param`\ (\ space\: :ref:`RID`, param\: :ref:`SpaceParameter`\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`_space_is_active`\ (\ space\: :ref:`RID`\ ) |virtual| |required| |const| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_space_set_active`\ (\ space\: :ref:`RID`, active\: :ref:`bool`\ ) |virtual| |required| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_space_set_debug_contacts`\ (\ space\: :ref:`RID`, max_contacts\: :ref:`int`\ ) |virtual| |required| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_space_set_param`\ (\ space\: :ref:`RID`, param\: :ref:`SpaceParameter`, value\: :ref:`float`\ ) |virtual| |required| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`RID` | :ref:`_sphere_shape_create`\ (\ ) |virtual| |required| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_step`\ (\ step\: :ref:`float`\ ) |virtual| |required| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_sync`\ (\ ) |virtual| |required| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`RID` | :ref:`_world_boundary_shape_create`\ (\ ) |virtual| |required| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`body_test_motion_is_excluding_body`\ (\ body\: :ref:`RID`\ ) |const| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`body_test_motion_is_excluding_object`\ (\ object\: :ref:`int`\ ) |const| | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ .. rst-class:: classref-section-separator @@ -426,11 +438,11 @@ Method Descriptions .. rst-class:: classref-method -|void| **_area_add_shape**\ (\ area\: :ref:`RID`, shape\: :ref:`RID`, transform\: :ref:`Transform3D`, disabled\: :ref:`bool`\ ) |virtual| :ref:`🔗` +|void| **_area_add_shape**\ (\ area\: :ref:`RID`, shape\: :ref:`RID`, transform\: :ref:`Transform3D`, disabled\: :ref:`bool`\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -440,11 +452,11 @@ Method Descriptions .. rst-class:: classref-method -|void| **_area_attach_object_instance_id**\ (\ area\: :ref:`RID`, id\: :ref:`int`\ ) |virtual| :ref:`🔗` +|void| **_area_attach_object_instance_id**\ (\ area\: :ref:`RID`, id\: :ref:`int`\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -454,11 +466,11 @@ Method Descriptions .. rst-class:: classref-method -|void| **_area_clear_shapes**\ (\ area\: :ref:`RID`\ ) |virtual| :ref:`🔗` +|void| **_area_clear_shapes**\ (\ area\: :ref:`RID`\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -468,11 +480,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`RID` **_area_create**\ (\ ) |virtual| :ref:`🔗` +:ref:`RID` **_area_create**\ (\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -482,11 +494,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`int` **_area_get_collision_layer**\ (\ area\: :ref:`RID`\ ) |virtual| |const| :ref:`🔗` +:ref:`int` **_area_get_collision_layer**\ (\ area\: :ref:`RID`\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -496,11 +508,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`int` **_area_get_collision_mask**\ (\ area\: :ref:`RID`\ ) |virtual| |const| :ref:`🔗` +:ref:`int` **_area_get_collision_mask**\ (\ area\: :ref:`RID`\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -510,11 +522,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`int` **_area_get_object_instance_id**\ (\ area\: :ref:`RID`\ ) |virtual| |const| :ref:`🔗` +:ref:`int` **_area_get_object_instance_id**\ (\ area\: :ref:`RID`\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -524,11 +536,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`Variant` **_area_get_param**\ (\ area\: :ref:`RID`, param\: :ref:`AreaParameter`\ ) |virtual| |const| :ref:`🔗` +:ref:`Variant` **_area_get_param**\ (\ area\: :ref:`RID`, param\: :ref:`AreaParameter`\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -538,11 +550,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`RID` **_area_get_shape**\ (\ area\: :ref:`RID`, shape_idx\: :ref:`int`\ ) |virtual| |const| :ref:`🔗` +:ref:`RID` **_area_get_shape**\ (\ area\: :ref:`RID`, shape_idx\: :ref:`int`\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -552,11 +564,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`int` **_area_get_shape_count**\ (\ area\: :ref:`RID`\ ) |virtual| |const| :ref:`🔗` +:ref:`int` **_area_get_shape_count**\ (\ area\: :ref:`RID`\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -566,11 +578,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`Transform3D` **_area_get_shape_transform**\ (\ area\: :ref:`RID`, shape_idx\: :ref:`int`\ ) |virtual| |const| :ref:`🔗` +:ref:`Transform3D` **_area_get_shape_transform**\ (\ area\: :ref:`RID`, shape_idx\: :ref:`int`\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -580,11 +592,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`RID` **_area_get_space**\ (\ area\: :ref:`RID`\ ) |virtual| |const| :ref:`🔗` +:ref:`RID` **_area_get_space**\ (\ area\: :ref:`RID`\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -594,11 +606,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`Transform3D` **_area_get_transform**\ (\ area\: :ref:`RID`\ ) |virtual| |const| :ref:`🔗` +:ref:`Transform3D` **_area_get_transform**\ (\ area\: :ref:`RID`\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -608,11 +620,11 @@ Method Descriptions .. rst-class:: classref-method -|void| **_area_remove_shape**\ (\ area\: :ref:`RID`, shape_idx\: :ref:`int`\ ) |virtual| :ref:`🔗` +|void| **_area_remove_shape**\ (\ area\: :ref:`RID`, shape_idx\: :ref:`int`\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -622,11 +634,11 @@ Method Descriptions .. rst-class:: classref-method -|void| **_area_set_area_monitor_callback**\ (\ area\: :ref:`RID`, callback\: :ref:`Callable`\ ) |virtual| :ref:`🔗` +|void| **_area_set_area_monitor_callback**\ (\ area\: :ref:`RID`, callback\: :ref:`Callable`\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -636,11 +648,11 @@ Method Descriptions .. rst-class:: classref-method -|void| **_area_set_collision_layer**\ (\ area\: :ref:`RID`, layer\: :ref:`int`\ ) |virtual| :ref:`🔗` +|void| **_area_set_collision_layer**\ (\ area\: :ref:`RID`, layer\: :ref:`int`\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -650,11 +662,11 @@ Method Descriptions .. rst-class:: classref-method -|void| **_area_set_collision_mask**\ (\ area\: :ref:`RID`, mask\: :ref:`int`\ ) |virtual| :ref:`🔗` +|void| **_area_set_collision_mask**\ (\ area\: :ref:`RID`, mask\: :ref:`int`\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -664,11 +676,11 @@ Method Descriptions .. rst-class:: classref-method -|void| **_area_set_monitor_callback**\ (\ area\: :ref:`RID`, callback\: :ref:`Callable`\ ) |virtual| :ref:`🔗` +|void| **_area_set_monitor_callback**\ (\ area\: :ref:`RID`, callback\: :ref:`Callable`\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -678,11 +690,11 @@ Method Descriptions .. rst-class:: classref-method -|void| **_area_set_monitorable**\ (\ area\: :ref:`RID`, monitorable\: :ref:`bool`\ ) |virtual| :ref:`🔗` +|void| **_area_set_monitorable**\ (\ area\: :ref:`RID`, monitorable\: :ref:`bool`\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -692,11 +704,11 @@ Method Descriptions .. rst-class:: classref-method -|void| **_area_set_param**\ (\ area\: :ref:`RID`, param\: :ref:`AreaParameter`, value\: :ref:`Variant`\ ) |virtual| :ref:`🔗` +|void| **_area_set_param**\ (\ area\: :ref:`RID`, param\: :ref:`AreaParameter`, value\: :ref:`Variant`\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -706,11 +718,11 @@ Method Descriptions .. rst-class:: classref-method -|void| **_area_set_ray_pickable**\ (\ area\: :ref:`RID`, enable\: :ref:`bool`\ ) |virtual| :ref:`🔗` +|void| **_area_set_ray_pickable**\ (\ area\: :ref:`RID`, enable\: :ref:`bool`\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -720,11 +732,11 @@ Method Descriptions .. rst-class:: classref-method -|void| **_area_set_shape**\ (\ area\: :ref:`RID`, shape_idx\: :ref:`int`, shape\: :ref:`RID`\ ) |virtual| :ref:`🔗` +|void| **_area_set_shape**\ (\ area\: :ref:`RID`, shape_idx\: :ref:`int`, shape\: :ref:`RID`\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -734,11 +746,11 @@ Method Descriptions .. rst-class:: classref-method -|void| **_area_set_shape_disabled**\ (\ area\: :ref:`RID`, shape_idx\: :ref:`int`, disabled\: :ref:`bool`\ ) |virtual| :ref:`🔗` +|void| **_area_set_shape_disabled**\ (\ area\: :ref:`RID`, shape_idx\: :ref:`int`, disabled\: :ref:`bool`\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -748,11 +760,11 @@ Method Descriptions .. rst-class:: classref-method -|void| **_area_set_shape_transform**\ (\ area\: :ref:`RID`, shape_idx\: :ref:`int`, transform\: :ref:`Transform3D`\ ) |virtual| :ref:`🔗` +|void| **_area_set_shape_transform**\ (\ area\: :ref:`RID`, shape_idx\: :ref:`int`, transform\: :ref:`Transform3D`\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -762,11 +774,11 @@ Method Descriptions .. rst-class:: classref-method -|void| **_area_set_space**\ (\ area\: :ref:`RID`, space\: :ref:`RID`\ ) |virtual| :ref:`🔗` +|void| **_area_set_space**\ (\ area\: :ref:`RID`, space\: :ref:`RID`\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -776,11 +788,11 @@ Method Descriptions .. rst-class:: classref-method -|void| **_area_set_transform**\ (\ area\: :ref:`RID`, transform\: :ref:`Transform3D`\ ) |virtual| :ref:`🔗` +|void| **_area_set_transform**\ (\ area\: :ref:`RID`, transform\: :ref:`Transform3D`\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -790,11 +802,11 @@ Method Descriptions .. rst-class:: classref-method -|void| **_body_add_collision_exception**\ (\ body\: :ref:`RID`, excepted_body\: :ref:`RID`\ ) |virtual| :ref:`🔗` +|void| **_body_add_collision_exception**\ (\ body\: :ref:`RID`, excepted_body\: :ref:`RID`\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -804,11 +816,11 @@ Method Descriptions .. rst-class:: classref-method -|void| **_body_add_constant_central_force**\ (\ body\: :ref:`RID`, force\: :ref:`Vector3`\ ) |virtual| :ref:`🔗` +|void| **_body_add_constant_central_force**\ (\ body\: :ref:`RID`, force\: :ref:`Vector3`\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -818,11 +830,11 @@ Method Descriptions .. rst-class:: classref-method -|void| **_body_add_constant_force**\ (\ body\: :ref:`RID`, force\: :ref:`Vector3`, position\: :ref:`Vector3`\ ) |virtual| :ref:`🔗` +|void| **_body_add_constant_force**\ (\ body\: :ref:`RID`, force\: :ref:`Vector3`, position\: :ref:`Vector3`\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -832,11 +844,11 @@ Method Descriptions .. rst-class:: classref-method -|void| **_body_add_constant_torque**\ (\ body\: :ref:`RID`, torque\: :ref:`Vector3`\ ) |virtual| :ref:`🔗` +|void| **_body_add_constant_torque**\ (\ body\: :ref:`RID`, torque\: :ref:`Vector3`\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -846,11 +858,11 @@ Method Descriptions .. rst-class:: classref-method -|void| **_body_add_shape**\ (\ body\: :ref:`RID`, shape\: :ref:`RID`, transform\: :ref:`Transform3D`, disabled\: :ref:`bool`\ ) |virtual| :ref:`🔗` +|void| **_body_add_shape**\ (\ body\: :ref:`RID`, shape\: :ref:`RID`, transform\: :ref:`Transform3D`, disabled\: :ref:`bool`\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -860,11 +872,11 @@ Method Descriptions .. rst-class:: classref-method -|void| **_body_apply_central_force**\ (\ body\: :ref:`RID`, force\: :ref:`Vector3`\ ) |virtual| :ref:`🔗` +|void| **_body_apply_central_force**\ (\ body\: :ref:`RID`, force\: :ref:`Vector3`\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -874,11 +886,11 @@ Method Descriptions .. rst-class:: classref-method -|void| **_body_apply_central_impulse**\ (\ body\: :ref:`RID`, impulse\: :ref:`Vector3`\ ) |virtual| :ref:`🔗` +|void| **_body_apply_central_impulse**\ (\ body\: :ref:`RID`, impulse\: :ref:`Vector3`\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -888,11 +900,11 @@ Method Descriptions .. rst-class:: classref-method -|void| **_body_apply_force**\ (\ body\: :ref:`RID`, force\: :ref:`Vector3`, position\: :ref:`Vector3`\ ) |virtual| :ref:`🔗` +|void| **_body_apply_force**\ (\ body\: :ref:`RID`, force\: :ref:`Vector3`, position\: :ref:`Vector3`\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -902,11 +914,11 @@ Method Descriptions .. rst-class:: classref-method -|void| **_body_apply_impulse**\ (\ body\: :ref:`RID`, impulse\: :ref:`Vector3`, position\: :ref:`Vector3`\ ) |virtual| :ref:`🔗` +|void| **_body_apply_impulse**\ (\ body\: :ref:`RID`, impulse\: :ref:`Vector3`, position\: :ref:`Vector3`\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -916,11 +928,11 @@ Method Descriptions .. rst-class:: classref-method -|void| **_body_apply_torque**\ (\ body\: :ref:`RID`, torque\: :ref:`Vector3`\ ) |virtual| :ref:`🔗` +|void| **_body_apply_torque**\ (\ body\: :ref:`RID`, torque\: :ref:`Vector3`\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -930,11 +942,11 @@ Method Descriptions .. rst-class:: classref-method -|void| **_body_apply_torque_impulse**\ (\ body\: :ref:`RID`, impulse\: :ref:`Vector3`\ ) |virtual| :ref:`🔗` +|void| **_body_apply_torque_impulse**\ (\ body\: :ref:`RID`, impulse\: :ref:`Vector3`\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -944,11 +956,11 @@ Method Descriptions .. rst-class:: classref-method -|void| **_body_attach_object_instance_id**\ (\ body\: :ref:`RID`, id\: :ref:`int`\ ) |virtual| :ref:`🔗` +|void| **_body_attach_object_instance_id**\ (\ body\: :ref:`RID`, id\: :ref:`int`\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -958,11 +970,11 @@ Method Descriptions .. rst-class:: classref-method -|void| **_body_clear_shapes**\ (\ body\: :ref:`RID`\ ) |virtual| :ref:`🔗` +|void| **_body_clear_shapes**\ (\ body\: :ref:`RID`\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -972,11 +984,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`RID` **_body_create**\ (\ ) |virtual| :ref:`🔗` +:ref:`RID` **_body_create**\ (\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -986,11 +998,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`Array`\[:ref:`RID`\] **_body_get_collision_exceptions**\ (\ body\: :ref:`RID`\ ) |virtual| |const| :ref:`🔗` +:ref:`Array`\[:ref:`RID`\] **_body_get_collision_exceptions**\ (\ body\: :ref:`RID`\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -1000,11 +1012,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`int` **_body_get_collision_layer**\ (\ body\: :ref:`RID`\ ) |virtual| |const| :ref:`🔗` +:ref:`int` **_body_get_collision_layer**\ (\ body\: :ref:`RID`\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -1014,11 +1026,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`int` **_body_get_collision_mask**\ (\ body\: :ref:`RID`\ ) |virtual| |const| :ref:`🔗` +:ref:`int` **_body_get_collision_mask**\ (\ body\: :ref:`RID`\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -1028,11 +1040,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`float` **_body_get_collision_priority**\ (\ body\: :ref:`RID`\ ) |virtual| |const| :ref:`🔗` +:ref:`float` **_body_get_collision_priority**\ (\ body\: :ref:`RID`\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -1042,11 +1054,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`Vector3` **_body_get_constant_force**\ (\ body\: :ref:`RID`\ ) |virtual| |const| :ref:`🔗` +:ref:`Vector3` **_body_get_constant_force**\ (\ body\: :ref:`RID`\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -1056,11 +1068,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`Vector3` **_body_get_constant_torque**\ (\ body\: :ref:`RID`\ ) |virtual| |const| :ref:`🔗` +:ref:`Vector3` **_body_get_constant_torque**\ (\ body\: :ref:`RID`\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -1070,11 +1082,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`float` **_body_get_contacts_reported_depth_threshold**\ (\ body\: :ref:`RID`\ ) |virtual| |const| :ref:`🔗` +:ref:`float` **_body_get_contacts_reported_depth_threshold**\ (\ body\: :ref:`RID`\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -1084,11 +1096,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`PhysicsDirectBodyState3D` **_body_get_direct_state**\ (\ body\: :ref:`RID`\ ) |virtual| :ref:`🔗` +:ref:`PhysicsDirectBodyState3D` **_body_get_direct_state**\ (\ body\: :ref:`RID`\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -1098,11 +1110,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`int` **_body_get_max_contacts_reported**\ (\ body\: :ref:`RID`\ ) |virtual| |const| :ref:`🔗` +:ref:`int` **_body_get_max_contacts_reported**\ (\ body\: :ref:`RID`\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -1112,11 +1124,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`BodyMode` **_body_get_mode**\ (\ body\: :ref:`RID`\ ) |virtual| |const| :ref:`🔗` +:ref:`BodyMode` **_body_get_mode**\ (\ body\: :ref:`RID`\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -1126,11 +1138,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`int` **_body_get_object_instance_id**\ (\ body\: :ref:`RID`\ ) |virtual| |const| :ref:`🔗` +:ref:`int` **_body_get_object_instance_id**\ (\ body\: :ref:`RID`\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -1140,11 +1152,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`Variant` **_body_get_param**\ (\ body\: :ref:`RID`, param\: :ref:`BodyParameter`\ ) |virtual| |const| :ref:`🔗` +:ref:`Variant` **_body_get_param**\ (\ body\: :ref:`RID`, param\: :ref:`BodyParameter`\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -1154,11 +1166,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`RID` **_body_get_shape**\ (\ body\: :ref:`RID`, shape_idx\: :ref:`int`\ ) |virtual| |const| :ref:`🔗` +:ref:`RID` **_body_get_shape**\ (\ body\: :ref:`RID`, shape_idx\: :ref:`int`\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -1168,11 +1180,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`int` **_body_get_shape_count**\ (\ body\: :ref:`RID`\ ) |virtual| |const| :ref:`🔗` +:ref:`int` **_body_get_shape_count**\ (\ body\: :ref:`RID`\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -1182,11 +1194,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`Transform3D` **_body_get_shape_transform**\ (\ body\: :ref:`RID`, shape_idx\: :ref:`int`\ ) |virtual| |const| :ref:`🔗` +:ref:`Transform3D` **_body_get_shape_transform**\ (\ body\: :ref:`RID`, shape_idx\: :ref:`int`\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -1196,11 +1208,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`RID` **_body_get_space**\ (\ body\: :ref:`RID`\ ) |virtual| |const| :ref:`🔗` +:ref:`RID` **_body_get_space**\ (\ body\: :ref:`RID`\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -1210,11 +1222,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`Variant` **_body_get_state**\ (\ body\: :ref:`RID`, state\: :ref:`BodyState`\ ) |virtual| |const| :ref:`🔗` +:ref:`Variant` **_body_get_state**\ (\ body\: :ref:`RID`, state\: :ref:`BodyState`\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -1224,11 +1236,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`int` **_body_get_user_flags**\ (\ body\: :ref:`RID`\ ) |virtual| |const| :ref:`🔗` +:ref:`int` **_body_get_user_flags**\ (\ body\: :ref:`RID`\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -1238,11 +1250,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`bool` **_body_is_axis_locked**\ (\ body\: :ref:`RID`, axis\: :ref:`BodyAxis`\ ) |virtual| |const| :ref:`🔗` +:ref:`bool` **_body_is_axis_locked**\ (\ body\: :ref:`RID`, axis\: :ref:`BodyAxis`\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -1252,11 +1264,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`bool` **_body_is_continuous_collision_detection_enabled**\ (\ body\: :ref:`RID`\ ) |virtual| |const| :ref:`🔗` +:ref:`bool` **_body_is_continuous_collision_detection_enabled**\ (\ body\: :ref:`RID`\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -1266,11 +1278,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`bool` **_body_is_omitting_force_integration**\ (\ body\: :ref:`RID`\ ) |virtual| |const| :ref:`🔗` +:ref:`bool` **_body_is_omitting_force_integration**\ (\ body\: :ref:`RID`\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -1280,11 +1292,11 @@ Method Descriptions .. rst-class:: classref-method -|void| **_body_remove_collision_exception**\ (\ body\: :ref:`RID`, excepted_body\: :ref:`RID`\ ) |virtual| :ref:`🔗` +|void| **_body_remove_collision_exception**\ (\ body\: :ref:`RID`, excepted_body\: :ref:`RID`\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -1294,11 +1306,11 @@ Method Descriptions .. rst-class:: classref-method -|void| **_body_remove_shape**\ (\ body\: :ref:`RID`, shape_idx\: :ref:`int`\ ) |virtual| :ref:`🔗` +|void| **_body_remove_shape**\ (\ body\: :ref:`RID`, shape_idx\: :ref:`int`\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -1308,11 +1320,11 @@ Method Descriptions .. rst-class:: classref-method -|void| **_body_reset_mass_properties**\ (\ body\: :ref:`RID`\ ) |virtual| :ref:`🔗` +|void| **_body_reset_mass_properties**\ (\ body\: :ref:`RID`\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -1322,11 +1334,11 @@ Method Descriptions .. rst-class:: classref-method -|void| **_body_set_axis_lock**\ (\ body\: :ref:`RID`, axis\: :ref:`BodyAxis`, lock\: :ref:`bool`\ ) |virtual| :ref:`🔗` +|void| **_body_set_axis_lock**\ (\ body\: :ref:`RID`, axis\: :ref:`BodyAxis`, lock\: :ref:`bool`\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -1336,11 +1348,11 @@ Method Descriptions .. rst-class:: classref-method -|void| **_body_set_axis_velocity**\ (\ body\: :ref:`RID`, axis_velocity\: :ref:`Vector3`\ ) |virtual| :ref:`🔗` +|void| **_body_set_axis_velocity**\ (\ body\: :ref:`RID`, axis_velocity\: :ref:`Vector3`\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -1350,11 +1362,11 @@ Method Descriptions .. rst-class:: classref-method -|void| **_body_set_collision_layer**\ (\ body\: :ref:`RID`, layer\: :ref:`int`\ ) |virtual| :ref:`🔗` +|void| **_body_set_collision_layer**\ (\ body\: :ref:`RID`, layer\: :ref:`int`\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -1364,11 +1376,11 @@ Method Descriptions .. rst-class:: classref-method -|void| **_body_set_collision_mask**\ (\ body\: :ref:`RID`, mask\: :ref:`int`\ ) |virtual| :ref:`🔗` +|void| **_body_set_collision_mask**\ (\ body\: :ref:`RID`, mask\: :ref:`int`\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -1378,11 +1390,11 @@ Method Descriptions .. rst-class:: classref-method -|void| **_body_set_collision_priority**\ (\ body\: :ref:`RID`, priority\: :ref:`float`\ ) |virtual| :ref:`🔗` +|void| **_body_set_collision_priority**\ (\ body\: :ref:`RID`, priority\: :ref:`float`\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -1392,11 +1404,11 @@ Method Descriptions .. rst-class:: classref-method -|void| **_body_set_constant_force**\ (\ body\: :ref:`RID`, force\: :ref:`Vector3`\ ) |virtual| :ref:`🔗` +|void| **_body_set_constant_force**\ (\ body\: :ref:`RID`, force\: :ref:`Vector3`\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -1406,11 +1418,11 @@ Method Descriptions .. rst-class:: classref-method -|void| **_body_set_constant_torque**\ (\ body\: :ref:`RID`, torque\: :ref:`Vector3`\ ) |virtual| :ref:`🔗` +|void| **_body_set_constant_torque**\ (\ body\: :ref:`RID`, torque\: :ref:`Vector3`\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -1420,11 +1432,11 @@ Method Descriptions .. rst-class:: classref-method -|void| **_body_set_contacts_reported_depth_threshold**\ (\ body\: :ref:`RID`, threshold\: :ref:`float`\ ) |virtual| :ref:`🔗` +|void| **_body_set_contacts_reported_depth_threshold**\ (\ body\: :ref:`RID`, threshold\: :ref:`float`\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -1434,11 +1446,11 @@ Method Descriptions .. rst-class:: classref-method -|void| **_body_set_enable_continuous_collision_detection**\ (\ body\: :ref:`RID`, enable\: :ref:`bool`\ ) |virtual| :ref:`🔗` +|void| **_body_set_enable_continuous_collision_detection**\ (\ body\: :ref:`RID`, enable\: :ref:`bool`\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -1448,11 +1460,11 @@ Method Descriptions .. rst-class:: classref-method -|void| **_body_set_force_integration_callback**\ (\ body\: :ref:`RID`, callable\: :ref:`Callable`, userdata\: :ref:`Variant`\ ) |virtual| :ref:`🔗` +|void| **_body_set_force_integration_callback**\ (\ body\: :ref:`RID`, callable\: :ref:`Callable`, userdata\: :ref:`Variant`\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -1462,11 +1474,11 @@ Method Descriptions .. rst-class:: classref-method -|void| **_body_set_max_contacts_reported**\ (\ body\: :ref:`RID`, amount\: :ref:`int`\ ) |virtual| :ref:`🔗` +|void| **_body_set_max_contacts_reported**\ (\ body\: :ref:`RID`, amount\: :ref:`int`\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -1476,11 +1488,11 @@ Method Descriptions .. rst-class:: classref-method -|void| **_body_set_mode**\ (\ body\: :ref:`RID`, mode\: :ref:`BodyMode`\ ) |virtual| :ref:`🔗` +|void| **_body_set_mode**\ (\ body\: :ref:`RID`, mode\: :ref:`BodyMode`\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -1490,11 +1502,11 @@ Method Descriptions .. rst-class:: classref-method -|void| **_body_set_omit_force_integration**\ (\ body\: :ref:`RID`, enable\: :ref:`bool`\ ) |virtual| :ref:`🔗` +|void| **_body_set_omit_force_integration**\ (\ body\: :ref:`RID`, enable\: :ref:`bool`\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -1504,11 +1516,11 @@ Method Descriptions .. rst-class:: classref-method -|void| **_body_set_param**\ (\ body\: :ref:`RID`, param\: :ref:`BodyParameter`, value\: :ref:`Variant`\ ) |virtual| :ref:`🔗` +|void| **_body_set_param**\ (\ body\: :ref:`RID`, param\: :ref:`BodyParameter`, value\: :ref:`Variant`\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -1518,11 +1530,11 @@ Method Descriptions .. rst-class:: classref-method -|void| **_body_set_ray_pickable**\ (\ body\: :ref:`RID`, enable\: :ref:`bool`\ ) |virtual| :ref:`🔗` +|void| **_body_set_ray_pickable**\ (\ body\: :ref:`RID`, enable\: :ref:`bool`\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -1532,11 +1544,11 @@ Method Descriptions .. rst-class:: classref-method -|void| **_body_set_shape**\ (\ body\: :ref:`RID`, shape_idx\: :ref:`int`, shape\: :ref:`RID`\ ) |virtual| :ref:`🔗` +|void| **_body_set_shape**\ (\ body\: :ref:`RID`, shape_idx\: :ref:`int`, shape\: :ref:`RID`\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -1546,11 +1558,11 @@ Method Descriptions .. rst-class:: classref-method -|void| **_body_set_shape_disabled**\ (\ body\: :ref:`RID`, shape_idx\: :ref:`int`, disabled\: :ref:`bool`\ ) |virtual| :ref:`🔗` +|void| **_body_set_shape_disabled**\ (\ body\: :ref:`RID`, shape_idx\: :ref:`int`, disabled\: :ref:`bool`\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -1560,11 +1572,11 @@ Method Descriptions .. rst-class:: classref-method -|void| **_body_set_shape_transform**\ (\ body\: :ref:`RID`, shape_idx\: :ref:`int`, transform\: :ref:`Transform3D`\ ) |virtual| :ref:`🔗` +|void| **_body_set_shape_transform**\ (\ body\: :ref:`RID`, shape_idx\: :ref:`int`, transform\: :ref:`Transform3D`\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -1574,11 +1586,11 @@ Method Descriptions .. rst-class:: classref-method -|void| **_body_set_space**\ (\ body\: :ref:`RID`, space\: :ref:`RID`\ ) |virtual| :ref:`🔗` +|void| **_body_set_space**\ (\ body\: :ref:`RID`, space\: :ref:`RID`\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -1588,11 +1600,11 @@ Method Descriptions .. rst-class:: classref-method -|void| **_body_set_state**\ (\ body\: :ref:`RID`, state\: :ref:`BodyState`, value\: :ref:`Variant`\ ) |virtual| :ref:`🔗` +|void| **_body_set_state**\ (\ body\: :ref:`RID`, state\: :ref:`BodyState`, value\: :ref:`Variant`\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -1602,11 +1614,11 @@ Method Descriptions .. rst-class:: classref-method -|void| **_body_set_state_sync_callback**\ (\ body\: :ref:`RID`, callable\: :ref:`Callable`\ ) |virtual| :ref:`🔗` +|void| **_body_set_state_sync_callback**\ (\ body\: :ref:`RID`, callable\: :ref:`Callable`\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -1616,11 +1628,11 @@ Method Descriptions .. rst-class:: classref-method -|void| **_body_set_user_flags**\ (\ body\: :ref:`RID`, flags\: :ref:`int`\ ) |virtual| :ref:`🔗` +|void| **_body_set_user_flags**\ (\ body\: :ref:`RID`, flags\: :ref:`int`\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -1630,11 +1642,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`bool` **_body_test_motion**\ (\ body\: :ref:`RID`, from\: :ref:`Transform3D`, motion\: :ref:`Vector3`, margin\: :ref:`float`, max_collisions\: :ref:`int`, collide_separation_ray\: :ref:`bool`, recovery_as_collision\: :ref:`bool`, result\: ``PhysicsServer3DExtensionMotionResult*``\ ) |virtual| |const| :ref:`🔗` +:ref:`bool` **_body_test_motion**\ (\ body\: :ref:`RID`, from\: :ref:`Transform3D`, motion\: :ref:`Vector3`, margin\: :ref:`float`, max_collisions\: :ref:`int`, collide_separation_ray\: :ref:`bool`, recovery_as_collision\: :ref:`bool`, result\: ``PhysicsServer3DExtensionMotionResult*``\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -1644,11 +1656,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`RID` **_box_shape_create**\ (\ ) |virtual| :ref:`🔗` +:ref:`RID` **_box_shape_create**\ (\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -1658,11 +1670,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`RID` **_capsule_shape_create**\ (\ ) |virtual| :ref:`🔗` +:ref:`RID` **_capsule_shape_create**\ (\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -1672,11 +1684,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`RID` **_concave_polygon_shape_create**\ (\ ) |virtual| :ref:`🔗` +:ref:`RID` **_concave_polygon_shape_create**\ (\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -1686,11 +1698,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`float` **_cone_twist_joint_get_param**\ (\ joint\: :ref:`RID`, param\: :ref:`ConeTwistJointParam`\ ) |virtual| |const| :ref:`🔗` +:ref:`float` **_cone_twist_joint_get_param**\ (\ joint\: :ref:`RID`, param\: :ref:`ConeTwistJointParam`\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -1700,11 +1712,11 @@ Method Descriptions .. rst-class:: classref-method -|void| **_cone_twist_joint_set_param**\ (\ joint\: :ref:`RID`, param\: :ref:`ConeTwistJointParam`, value\: :ref:`float`\ ) |virtual| :ref:`🔗` +|void| **_cone_twist_joint_set_param**\ (\ joint\: :ref:`RID`, param\: :ref:`ConeTwistJointParam`, value\: :ref:`float`\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -1714,11 +1726,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`RID` **_convex_polygon_shape_create**\ (\ ) |virtual| :ref:`🔗` +:ref:`RID` **_convex_polygon_shape_create**\ (\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -1728,11 +1740,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`RID` **_custom_shape_create**\ (\ ) |virtual| :ref:`🔗` +:ref:`RID` **_custom_shape_create**\ (\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -1742,11 +1754,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`RID` **_cylinder_shape_create**\ (\ ) |virtual| :ref:`🔗` +:ref:`RID` **_cylinder_shape_create**\ (\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -1756,11 +1768,11 @@ Method Descriptions .. rst-class:: classref-method -|void| **_end_sync**\ (\ ) |virtual| :ref:`🔗` +|void| **_end_sync**\ (\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -1770,11 +1782,11 @@ Method Descriptions .. rst-class:: classref-method -|void| **_finish**\ (\ ) |virtual| :ref:`🔗` +|void| **_finish**\ (\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -1784,11 +1796,11 @@ Method Descriptions .. rst-class:: classref-method -|void| **_flush_queries**\ (\ ) |virtual| :ref:`🔗` +|void| **_flush_queries**\ (\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -1798,11 +1810,11 @@ Method Descriptions .. rst-class:: classref-method -|void| **_free_rid**\ (\ rid\: :ref:`RID`\ ) |virtual| :ref:`🔗` +|void| **_free_rid**\ (\ rid\: :ref:`RID`\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -1812,11 +1824,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`bool` **_generic_6dof_joint_get_flag**\ (\ joint\: :ref:`RID`, axis\: :ref:`Axis`, flag\: :ref:`G6DOFJointAxisFlag`\ ) |virtual| |const| :ref:`🔗` +:ref:`bool` **_generic_6dof_joint_get_flag**\ (\ joint\: :ref:`RID`, axis\: :ref:`Axis`, flag\: :ref:`G6DOFJointAxisFlag`\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -1826,11 +1838,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`float` **_generic_6dof_joint_get_param**\ (\ joint\: :ref:`RID`, axis\: :ref:`Axis`, param\: :ref:`G6DOFJointAxisParam`\ ) |virtual| |const| :ref:`🔗` +:ref:`float` **_generic_6dof_joint_get_param**\ (\ joint\: :ref:`RID`, axis\: :ref:`Axis`, param\: :ref:`G6DOFJointAxisParam`\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -1840,11 +1852,11 @@ Method Descriptions .. rst-class:: classref-method -|void| **_generic_6dof_joint_set_flag**\ (\ joint\: :ref:`RID`, axis\: :ref:`Axis`, flag\: :ref:`G6DOFJointAxisFlag`, enable\: :ref:`bool`\ ) |virtual| :ref:`🔗` +|void| **_generic_6dof_joint_set_flag**\ (\ joint\: :ref:`RID`, axis\: :ref:`Axis`, flag\: :ref:`G6DOFJointAxisFlag`, enable\: :ref:`bool`\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -1854,11 +1866,11 @@ Method Descriptions .. rst-class:: classref-method -|void| **_generic_6dof_joint_set_param**\ (\ joint\: :ref:`RID`, axis\: :ref:`Axis`, param\: :ref:`G6DOFJointAxisParam`, value\: :ref:`float`\ ) |virtual| :ref:`🔗` +|void| **_generic_6dof_joint_set_param**\ (\ joint\: :ref:`RID`, axis\: :ref:`Axis`, param\: :ref:`G6DOFJointAxisParam`, value\: :ref:`float`\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -1868,11 +1880,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`int` **_get_process_info**\ (\ process_info\: :ref:`ProcessInfo`\ ) |virtual| :ref:`🔗` +:ref:`int` **_get_process_info**\ (\ process_info\: :ref:`ProcessInfo`\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -1882,11 +1894,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`RID` **_heightmap_shape_create**\ (\ ) |virtual| :ref:`🔗` +:ref:`RID` **_heightmap_shape_create**\ (\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -1896,11 +1908,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`bool` **_hinge_joint_get_flag**\ (\ joint\: :ref:`RID`, flag\: :ref:`HingeJointFlag`\ ) |virtual| |const| :ref:`🔗` +:ref:`bool` **_hinge_joint_get_flag**\ (\ joint\: :ref:`RID`, flag\: :ref:`HingeJointFlag`\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -1910,11 +1922,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`float` **_hinge_joint_get_param**\ (\ joint\: :ref:`RID`, param\: :ref:`HingeJointParam`\ ) |virtual| |const| :ref:`🔗` +:ref:`float` **_hinge_joint_get_param**\ (\ joint\: :ref:`RID`, param\: :ref:`HingeJointParam`\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -1924,11 +1936,11 @@ Method Descriptions .. rst-class:: classref-method -|void| **_hinge_joint_set_flag**\ (\ joint\: :ref:`RID`, flag\: :ref:`HingeJointFlag`, enabled\: :ref:`bool`\ ) |virtual| :ref:`🔗` +|void| **_hinge_joint_set_flag**\ (\ joint\: :ref:`RID`, flag\: :ref:`HingeJointFlag`, enabled\: :ref:`bool`\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -1938,11 +1950,11 @@ Method Descriptions .. rst-class:: classref-method -|void| **_hinge_joint_set_param**\ (\ joint\: :ref:`RID`, param\: :ref:`HingeJointParam`, value\: :ref:`float`\ ) |virtual| :ref:`🔗` +|void| **_hinge_joint_set_param**\ (\ joint\: :ref:`RID`, param\: :ref:`HingeJointParam`, value\: :ref:`float`\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -1952,11 +1964,11 @@ Method Descriptions .. rst-class:: classref-method -|void| **_init**\ (\ ) |virtual| :ref:`🔗` +|void| **_init**\ (\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -1966,11 +1978,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`bool` **_is_flushing_queries**\ (\ ) |virtual| |const| :ref:`🔗` +:ref:`bool` **_is_flushing_queries**\ (\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -1980,11 +1992,11 @@ Method Descriptions .. rst-class:: classref-method -|void| **_joint_clear**\ (\ joint\: :ref:`RID`\ ) |virtual| :ref:`🔗` +|void| **_joint_clear**\ (\ joint\: :ref:`RID`\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -1994,11 +2006,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`RID` **_joint_create**\ (\ ) |virtual| :ref:`🔗` +:ref:`RID` **_joint_create**\ (\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -2008,11 +2020,11 @@ Method Descriptions .. rst-class:: classref-method -|void| **_joint_disable_collisions_between_bodies**\ (\ joint\: :ref:`RID`, disable\: :ref:`bool`\ ) |virtual| :ref:`🔗` +|void| **_joint_disable_collisions_between_bodies**\ (\ joint\: :ref:`RID`, disable\: :ref:`bool`\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -2022,11 +2034,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`int` **_joint_get_solver_priority**\ (\ joint\: :ref:`RID`\ ) |virtual| |const| :ref:`🔗` +:ref:`int` **_joint_get_solver_priority**\ (\ joint\: :ref:`RID`\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -2036,11 +2048,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`JointType` **_joint_get_type**\ (\ joint\: :ref:`RID`\ ) |virtual| |const| :ref:`🔗` +:ref:`JointType` **_joint_get_type**\ (\ joint\: :ref:`RID`\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -2050,11 +2062,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`bool` **_joint_is_disabled_collisions_between_bodies**\ (\ joint\: :ref:`RID`\ ) |virtual| |const| :ref:`🔗` +:ref:`bool` **_joint_is_disabled_collisions_between_bodies**\ (\ joint\: :ref:`RID`\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -2064,11 +2076,11 @@ Method Descriptions .. rst-class:: classref-method -|void| **_joint_make_cone_twist**\ (\ joint\: :ref:`RID`, body_A\: :ref:`RID`, local_ref_A\: :ref:`Transform3D`, body_B\: :ref:`RID`, local_ref_B\: :ref:`Transform3D`\ ) |virtual| :ref:`🔗` +|void| **_joint_make_cone_twist**\ (\ joint\: :ref:`RID`, body_A\: :ref:`RID`, local_ref_A\: :ref:`Transform3D`, body_B\: :ref:`RID`, local_ref_B\: :ref:`Transform3D`\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -2078,11 +2090,11 @@ Method Descriptions .. rst-class:: classref-method -|void| **_joint_make_generic_6dof**\ (\ joint\: :ref:`RID`, body_A\: :ref:`RID`, local_ref_A\: :ref:`Transform3D`, body_B\: :ref:`RID`, local_ref_B\: :ref:`Transform3D`\ ) |virtual| :ref:`🔗` +|void| **_joint_make_generic_6dof**\ (\ joint\: :ref:`RID`, body_A\: :ref:`RID`, local_ref_A\: :ref:`Transform3D`, body_B\: :ref:`RID`, local_ref_B\: :ref:`Transform3D`\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -2092,11 +2104,11 @@ Method Descriptions .. rst-class:: classref-method -|void| **_joint_make_hinge**\ (\ joint\: :ref:`RID`, body_A\: :ref:`RID`, hinge_A\: :ref:`Transform3D`, body_B\: :ref:`RID`, hinge_B\: :ref:`Transform3D`\ ) |virtual| :ref:`🔗` +|void| **_joint_make_hinge**\ (\ joint\: :ref:`RID`, body_A\: :ref:`RID`, hinge_A\: :ref:`Transform3D`, body_B\: :ref:`RID`, hinge_B\: :ref:`Transform3D`\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -2106,11 +2118,11 @@ Method Descriptions .. rst-class:: classref-method -|void| **_joint_make_hinge_simple**\ (\ joint\: :ref:`RID`, body_A\: :ref:`RID`, pivot_A\: :ref:`Vector3`, axis_A\: :ref:`Vector3`, body_B\: :ref:`RID`, pivot_B\: :ref:`Vector3`, axis_B\: :ref:`Vector3`\ ) |virtual| :ref:`🔗` +|void| **_joint_make_hinge_simple**\ (\ joint\: :ref:`RID`, body_A\: :ref:`RID`, pivot_A\: :ref:`Vector3`, axis_A\: :ref:`Vector3`, body_B\: :ref:`RID`, pivot_B\: :ref:`Vector3`, axis_B\: :ref:`Vector3`\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -2120,11 +2132,11 @@ Method Descriptions .. rst-class:: classref-method -|void| **_joint_make_pin**\ (\ joint\: :ref:`RID`, body_A\: :ref:`RID`, local_A\: :ref:`Vector3`, body_B\: :ref:`RID`, local_B\: :ref:`Vector3`\ ) |virtual| :ref:`🔗` +|void| **_joint_make_pin**\ (\ joint\: :ref:`RID`, body_A\: :ref:`RID`, local_A\: :ref:`Vector3`, body_B\: :ref:`RID`, local_B\: :ref:`Vector3`\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -2134,11 +2146,11 @@ Method Descriptions .. rst-class:: classref-method -|void| **_joint_make_slider**\ (\ joint\: :ref:`RID`, body_A\: :ref:`RID`, local_ref_A\: :ref:`Transform3D`, body_B\: :ref:`RID`, local_ref_B\: :ref:`Transform3D`\ ) |virtual| :ref:`🔗` +|void| **_joint_make_slider**\ (\ joint\: :ref:`RID`, body_A\: :ref:`RID`, local_ref_A\: :ref:`Transform3D`, body_B\: :ref:`RID`, local_ref_B\: :ref:`Transform3D`\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -2148,11 +2160,11 @@ Method Descriptions .. rst-class:: classref-method -|void| **_joint_set_solver_priority**\ (\ joint\: :ref:`RID`, priority\: :ref:`int`\ ) |virtual| :ref:`🔗` +|void| **_joint_set_solver_priority**\ (\ joint\: :ref:`RID`, priority\: :ref:`int`\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -2162,11 +2174,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`Vector3` **_pin_joint_get_local_a**\ (\ joint\: :ref:`RID`\ ) |virtual| |const| :ref:`🔗` +:ref:`Vector3` **_pin_joint_get_local_a**\ (\ joint\: :ref:`RID`\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -2176,11 +2188,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`Vector3` **_pin_joint_get_local_b**\ (\ joint\: :ref:`RID`\ ) |virtual| |const| :ref:`🔗` +:ref:`Vector3` **_pin_joint_get_local_b**\ (\ joint\: :ref:`RID`\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -2190,11 +2202,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`float` **_pin_joint_get_param**\ (\ joint\: :ref:`RID`, param\: :ref:`PinJointParam`\ ) |virtual| |const| :ref:`🔗` +:ref:`float` **_pin_joint_get_param**\ (\ joint\: :ref:`RID`, param\: :ref:`PinJointParam`\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -2204,11 +2216,11 @@ Method Descriptions .. rst-class:: classref-method -|void| **_pin_joint_set_local_a**\ (\ joint\: :ref:`RID`, local_A\: :ref:`Vector3`\ ) |virtual| :ref:`🔗` +|void| **_pin_joint_set_local_a**\ (\ joint\: :ref:`RID`, local_A\: :ref:`Vector3`\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -2218,11 +2230,11 @@ Method Descriptions .. rst-class:: classref-method -|void| **_pin_joint_set_local_b**\ (\ joint\: :ref:`RID`, local_B\: :ref:`Vector3`\ ) |virtual| :ref:`🔗` +|void| **_pin_joint_set_local_b**\ (\ joint\: :ref:`RID`, local_B\: :ref:`Vector3`\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -2232,11 +2244,11 @@ Method Descriptions .. rst-class:: classref-method -|void| **_pin_joint_set_param**\ (\ joint\: :ref:`RID`, param\: :ref:`PinJointParam`, value\: :ref:`float`\ ) |virtual| :ref:`🔗` +|void| **_pin_joint_set_param**\ (\ joint\: :ref:`RID`, param\: :ref:`PinJointParam`, value\: :ref:`float`\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -2246,11 +2258,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`RID` **_separation_ray_shape_create**\ (\ ) |virtual| :ref:`🔗` +:ref:`RID` **_separation_ray_shape_create**\ (\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -2260,11 +2272,11 @@ Method Descriptions .. rst-class:: classref-method -|void| **_set_active**\ (\ active\: :ref:`bool`\ ) |virtual| :ref:`🔗` +|void| **_set_active**\ (\ active\: :ref:`bool`\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -2274,11 +2286,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`float` **_shape_get_custom_solver_bias**\ (\ shape\: :ref:`RID`\ ) |virtual| |const| :ref:`🔗` +:ref:`float` **_shape_get_custom_solver_bias**\ (\ shape\: :ref:`RID`\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -2288,11 +2300,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`Variant` **_shape_get_data**\ (\ shape\: :ref:`RID`\ ) |virtual| |const| :ref:`🔗` +:ref:`Variant` **_shape_get_data**\ (\ shape\: :ref:`RID`\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -2302,11 +2314,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`float` **_shape_get_margin**\ (\ shape\: :ref:`RID`\ ) |virtual| |const| :ref:`🔗` +:ref:`float` **_shape_get_margin**\ (\ shape\: :ref:`RID`\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -2316,11 +2328,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`ShapeType` **_shape_get_type**\ (\ shape\: :ref:`RID`\ ) |virtual| |const| :ref:`🔗` +:ref:`ShapeType` **_shape_get_type**\ (\ shape\: :ref:`RID`\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -2330,11 +2342,11 @@ Method Descriptions .. rst-class:: classref-method -|void| **_shape_set_custom_solver_bias**\ (\ shape\: :ref:`RID`, bias\: :ref:`float`\ ) |virtual| :ref:`🔗` +|void| **_shape_set_custom_solver_bias**\ (\ shape\: :ref:`RID`, bias\: :ref:`float`\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -2344,11 +2356,11 @@ Method Descriptions .. rst-class:: classref-method -|void| **_shape_set_data**\ (\ shape\: :ref:`RID`, data\: :ref:`Variant`\ ) |virtual| :ref:`🔗` +|void| **_shape_set_data**\ (\ shape\: :ref:`RID`, data\: :ref:`Variant`\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -2358,11 +2370,11 @@ Method Descriptions .. rst-class:: classref-method -|void| **_shape_set_margin**\ (\ shape\: :ref:`RID`, margin\: :ref:`float`\ ) |virtual| :ref:`🔗` +|void| **_shape_set_margin**\ (\ shape\: :ref:`RID`, margin\: :ref:`float`\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -2372,11 +2384,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`float` **_slider_joint_get_param**\ (\ joint\: :ref:`RID`, param\: :ref:`SliderJointParam`\ ) |virtual| |const| :ref:`🔗` +:ref:`float` **_slider_joint_get_param**\ (\ joint\: :ref:`RID`, param\: :ref:`SliderJointParam`\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -2386,11 +2398,11 @@ Method Descriptions .. rst-class:: classref-method -|void| **_slider_joint_set_param**\ (\ joint\: :ref:`RID`, param\: :ref:`SliderJointParam`, value\: :ref:`float`\ ) |virtual| :ref:`🔗` +|void| **_slider_joint_set_param**\ (\ joint\: :ref:`RID`, param\: :ref:`SliderJointParam`, value\: :ref:`float`\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -2400,11 +2412,67 @@ Method Descriptions .. rst-class:: classref-method -|void| **_soft_body_add_collision_exception**\ (\ body\: :ref:`RID`, body_b\: :ref:`RID`\ ) |virtual| :ref:`🔗` +|void| **_soft_body_add_collision_exception**\ (\ body\: :ref:`RID`, body_b\: :ref:`RID`\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! + +.. rst-class:: classref-item-separator + +---- + +.. _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| |required| :ref:`🔗` + +.. container:: contribute + + There is currently no description for this method. Please help us by `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| |required| :ref:`🔗` + +.. container:: contribute + + There is currently no description for this method. Please help us by `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| |required| :ref:`🔗` + +.. container:: contribute + + There is currently no description for this method. Please help us by `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| |required| :ref:`🔗` + +.. container:: contribute + + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -2414,11 +2482,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`RID` **_soft_body_create**\ (\ ) |virtual| :ref:`🔗` +:ref:`RID` **_soft_body_create**\ (\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -2428,11 +2496,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`AABB` **_soft_body_get_bounds**\ (\ body\: :ref:`RID`\ ) |virtual| |const| :ref:`🔗` +:ref:`AABB` **_soft_body_get_bounds**\ (\ body\: :ref:`RID`\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -2442,11 +2510,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`Array`\[:ref:`RID`\] **_soft_body_get_collision_exceptions**\ (\ body\: :ref:`RID`\ ) |virtual| |const| :ref:`🔗` +:ref:`Array`\[:ref:`RID`\] **_soft_body_get_collision_exceptions**\ (\ body\: :ref:`RID`\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -2456,11 +2524,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`int` **_soft_body_get_collision_layer**\ (\ body\: :ref:`RID`\ ) |virtual| |const| :ref:`🔗` +:ref:`int` **_soft_body_get_collision_layer**\ (\ body\: :ref:`RID`\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -2470,11 +2538,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`int` **_soft_body_get_collision_mask**\ (\ body\: :ref:`RID`\ ) |virtual| |const| :ref:`🔗` +:ref:`int` **_soft_body_get_collision_mask**\ (\ body\: :ref:`RID`\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -2484,11 +2552,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`float` **_soft_body_get_damping_coefficient**\ (\ body\: :ref:`RID`\ ) |virtual| |const| :ref:`🔗` +:ref:`float` **_soft_body_get_damping_coefficient**\ (\ body\: :ref:`RID`\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -2498,11 +2566,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`float` **_soft_body_get_drag_coefficient**\ (\ body\: :ref:`RID`\ ) |virtual| |const| :ref:`🔗` +:ref:`float` **_soft_body_get_drag_coefficient**\ (\ body\: :ref:`RID`\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -2512,11 +2580,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`float` **_soft_body_get_linear_stiffness**\ (\ body\: :ref:`RID`\ ) |virtual| |const| :ref:`🔗` +:ref:`float` **_soft_body_get_linear_stiffness**\ (\ body\: :ref:`RID`\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -2526,11 +2594,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`Vector3` **_soft_body_get_point_global_position**\ (\ body\: :ref:`RID`, point_index\: :ref:`int`\ ) |virtual| |const| :ref:`🔗` +:ref:`Vector3` **_soft_body_get_point_global_position**\ (\ body\: :ref:`RID`, point_index\: :ref:`int`\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -2540,11 +2608,25 @@ Method Descriptions .. rst-class:: classref-method -:ref:`float` **_soft_body_get_pressure_coefficient**\ (\ body\: :ref:`RID`\ ) |virtual| |const| :ref:`🔗` +:ref:`float` **_soft_body_get_pressure_coefficient**\ (\ body\: :ref:`RID`\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! + +.. rst-class:: classref-item-separator + +---- + +.. _class_PhysicsServer3DExtension_private_method__soft_body_get_shrinking_factor: + +.. rst-class:: classref-method + +:ref:`float` **_soft_body_get_shrinking_factor**\ (\ body\: :ref:`RID`\ ) |virtual| |required| |const| :ref:`🔗` + +.. container:: contribute + + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -2554,11 +2636,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`int` **_soft_body_get_simulation_precision**\ (\ body\: :ref:`RID`\ ) |virtual| |const| :ref:`🔗` +:ref:`int` **_soft_body_get_simulation_precision**\ (\ body\: :ref:`RID`\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -2568,11 +2650,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`RID` **_soft_body_get_space**\ (\ body\: :ref:`RID`\ ) |virtual| |const| :ref:`🔗` +:ref:`RID` **_soft_body_get_space**\ (\ body\: :ref:`RID`\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -2582,11 +2664,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`Variant` **_soft_body_get_state**\ (\ body\: :ref:`RID`, state\: :ref:`BodyState`\ ) |virtual| |const| :ref:`🔗` +:ref:`Variant` **_soft_body_get_state**\ (\ body\: :ref:`RID`, state\: :ref:`BodyState`\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -2596,11 +2678,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`float` **_soft_body_get_total_mass**\ (\ body\: :ref:`RID`\ ) |virtual| |const| :ref:`🔗` +:ref:`float` **_soft_body_get_total_mass**\ (\ body\: :ref:`RID`\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -2610,11 +2692,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`bool` **_soft_body_is_point_pinned**\ (\ body\: :ref:`RID`, point_index\: :ref:`int`\ ) |virtual| |const| :ref:`🔗` +:ref:`bool` **_soft_body_is_point_pinned**\ (\ body\: :ref:`RID`, point_index\: :ref:`int`\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -2624,11 +2706,11 @@ Method Descriptions .. rst-class:: classref-method -|void| **_soft_body_move_point**\ (\ body\: :ref:`RID`, point_index\: :ref:`int`, global_position\: :ref:`Vector3`\ ) |virtual| :ref:`🔗` +|void| **_soft_body_move_point**\ (\ body\: :ref:`RID`, point_index\: :ref:`int`, global_position\: :ref:`Vector3`\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -2638,11 +2720,11 @@ Method Descriptions .. rst-class:: classref-method -|void| **_soft_body_pin_point**\ (\ body\: :ref:`RID`, point_index\: :ref:`int`, pin\: :ref:`bool`\ ) |virtual| :ref:`🔗` +|void| **_soft_body_pin_point**\ (\ body\: :ref:`RID`, point_index\: :ref:`int`, pin\: :ref:`bool`\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -2652,11 +2734,11 @@ Method Descriptions .. rst-class:: classref-method -|void| **_soft_body_remove_all_pinned_points**\ (\ body\: :ref:`RID`\ ) |virtual| :ref:`🔗` +|void| **_soft_body_remove_all_pinned_points**\ (\ body\: :ref:`RID`\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -2666,11 +2748,11 @@ Method Descriptions .. rst-class:: classref-method -|void| **_soft_body_remove_collision_exception**\ (\ body\: :ref:`RID`, body_b\: :ref:`RID`\ ) |virtual| :ref:`🔗` +|void| **_soft_body_remove_collision_exception**\ (\ body\: :ref:`RID`, body_b\: :ref:`RID`\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -2680,11 +2762,11 @@ Method Descriptions .. rst-class:: classref-method -|void| **_soft_body_set_collision_layer**\ (\ body\: :ref:`RID`, layer\: :ref:`int`\ ) |virtual| :ref:`🔗` +|void| **_soft_body_set_collision_layer**\ (\ body\: :ref:`RID`, layer\: :ref:`int`\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -2694,11 +2776,11 @@ Method Descriptions .. rst-class:: classref-method -|void| **_soft_body_set_collision_mask**\ (\ body\: :ref:`RID`, mask\: :ref:`int`\ ) |virtual| :ref:`🔗` +|void| **_soft_body_set_collision_mask**\ (\ body\: :ref:`RID`, mask\: :ref:`int`\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -2708,11 +2790,11 @@ Method Descriptions .. rst-class:: classref-method -|void| **_soft_body_set_damping_coefficient**\ (\ body\: :ref:`RID`, damping_coefficient\: :ref:`float`\ ) |virtual| :ref:`🔗` +|void| **_soft_body_set_damping_coefficient**\ (\ body\: :ref:`RID`, damping_coefficient\: :ref:`float`\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -2722,11 +2804,11 @@ Method Descriptions .. rst-class:: classref-method -|void| **_soft_body_set_drag_coefficient**\ (\ body\: :ref:`RID`, drag_coefficient\: :ref:`float`\ ) |virtual| :ref:`🔗` +|void| **_soft_body_set_drag_coefficient**\ (\ body\: :ref:`RID`, drag_coefficient\: :ref:`float`\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -2736,11 +2818,11 @@ Method Descriptions .. rst-class:: classref-method -|void| **_soft_body_set_linear_stiffness**\ (\ body\: :ref:`RID`, linear_stiffness\: :ref:`float`\ ) |virtual| :ref:`🔗` +|void| **_soft_body_set_linear_stiffness**\ (\ body\: :ref:`RID`, linear_stiffness\: :ref:`float`\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -2750,11 +2832,11 @@ Method Descriptions .. rst-class:: classref-method -|void| **_soft_body_set_mesh**\ (\ body\: :ref:`RID`, mesh\: :ref:`RID`\ ) |virtual| :ref:`🔗` +|void| **_soft_body_set_mesh**\ (\ body\: :ref:`RID`, mesh\: :ref:`RID`\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -2764,11 +2846,11 @@ Method Descriptions .. rst-class:: classref-method -|void| **_soft_body_set_pressure_coefficient**\ (\ body\: :ref:`RID`, pressure_coefficient\: :ref:`float`\ ) |virtual| :ref:`🔗` +|void| **_soft_body_set_pressure_coefficient**\ (\ body\: :ref:`RID`, pressure_coefficient\: :ref:`float`\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -2778,11 +2860,25 @@ Method Descriptions .. rst-class:: classref-method -|void| **_soft_body_set_ray_pickable**\ (\ body\: :ref:`RID`, enable\: :ref:`bool`\ ) |virtual| :ref:`🔗` +|void| **_soft_body_set_ray_pickable**\ (\ body\: :ref:`RID`, enable\: :ref:`bool`\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! + +.. rst-class:: classref-item-separator + +---- + +.. _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| |required| :ref:`🔗` + +.. container:: contribute + + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -2792,11 +2888,11 @@ Method Descriptions .. rst-class:: classref-method -|void| **_soft_body_set_simulation_precision**\ (\ body\: :ref:`RID`, simulation_precision\: :ref:`int`\ ) |virtual| :ref:`🔗` +|void| **_soft_body_set_simulation_precision**\ (\ body\: :ref:`RID`, simulation_precision\: :ref:`int`\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -2806,11 +2902,11 @@ Method Descriptions .. rst-class:: classref-method -|void| **_soft_body_set_space**\ (\ body\: :ref:`RID`, space\: :ref:`RID`\ ) |virtual| :ref:`🔗` +|void| **_soft_body_set_space**\ (\ body\: :ref:`RID`, space\: :ref:`RID`\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -2820,11 +2916,11 @@ Method Descriptions .. rst-class:: classref-method -|void| **_soft_body_set_state**\ (\ body\: :ref:`RID`, state\: :ref:`BodyState`, variant\: :ref:`Variant`\ ) |virtual| :ref:`🔗` +|void| **_soft_body_set_state**\ (\ body\: :ref:`RID`, state\: :ref:`BodyState`, variant\: :ref:`Variant`\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -2834,11 +2930,11 @@ Method Descriptions .. rst-class:: classref-method -|void| **_soft_body_set_total_mass**\ (\ body\: :ref:`RID`, total_mass\: :ref:`float`\ ) |virtual| :ref:`🔗` +|void| **_soft_body_set_total_mass**\ (\ body\: :ref:`RID`, total_mass\: :ref:`float`\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -2848,11 +2944,11 @@ Method Descriptions .. rst-class:: classref-method -|void| **_soft_body_set_transform**\ (\ body\: :ref:`RID`, transform\: :ref:`Transform3D`\ ) |virtual| :ref:`🔗` +|void| **_soft_body_set_transform**\ (\ body\: :ref:`RID`, transform\: :ref:`Transform3D`\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -2862,11 +2958,11 @@ Method Descriptions .. rst-class:: classref-method -|void| **_soft_body_update_rendering_server**\ (\ body\: :ref:`RID`, rendering_server_handler\: :ref:`PhysicsServer3DRenderingServerHandler`\ ) |virtual| :ref:`🔗` +|void| **_soft_body_update_rendering_server**\ (\ body\: :ref:`RID`, rendering_server_handler\: :ref:`PhysicsServer3DRenderingServerHandler`\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -2876,11 +2972,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`RID` **_space_create**\ (\ ) |virtual| :ref:`🔗` +:ref:`RID` **_space_create**\ (\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -2890,11 +2986,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`int` **_space_get_contact_count**\ (\ space\: :ref:`RID`\ ) |virtual| |const| :ref:`🔗` +:ref:`int` **_space_get_contact_count**\ (\ space\: :ref:`RID`\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -2904,11 +3000,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`PackedVector3Array` **_space_get_contacts**\ (\ space\: :ref:`RID`\ ) |virtual| |const| :ref:`🔗` +:ref:`PackedVector3Array` **_space_get_contacts**\ (\ space\: :ref:`RID`\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -2918,11 +3014,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`PhysicsDirectSpaceState3D` **_space_get_direct_state**\ (\ space\: :ref:`RID`\ ) |virtual| :ref:`🔗` +:ref:`PhysicsDirectSpaceState3D` **_space_get_direct_state**\ (\ space\: :ref:`RID`\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -2932,11 +3028,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`float` **_space_get_param**\ (\ space\: :ref:`RID`, param\: :ref:`SpaceParameter`\ ) |virtual| |const| :ref:`🔗` +:ref:`float` **_space_get_param**\ (\ space\: :ref:`RID`, param\: :ref:`SpaceParameter`\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -2946,11 +3042,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`bool` **_space_is_active**\ (\ space\: :ref:`RID`\ ) |virtual| |const| :ref:`🔗` +:ref:`bool` **_space_is_active**\ (\ space\: :ref:`RID`\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -2960,11 +3056,11 @@ Method Descriptions .. rst-class:: classref-method -|void| **_space_set_active**\ (\ space\: :ref:`RID`, active\: :ref:`bool`\ ) |virtual| :ref:`🔗` +|void| **_space_set_active**\ (\ space\: :ref:`RID`, active\: :ref:`bool`\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -2974,11 +3070,11 @@ Method Descriptions .. rst-class:: classref-method -|void| **_space_set_debug_contacts**\ (\ space\: :ref:`RID`, max_contacts\: :ref:`int`\ ) |virtual| :ref:`🔗` +|void| **_space_set_debug_contacts**\ (\ space\: :ref:`RID`, max_contacts\: :ref:`int`\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -2988,11 +3084,11 @@ Method Descriptions .. rst-class:: classref-method -|void| **_space_set_param**\ (\ space\: :ref:`RID`, param\: :ref:`SpaceParameter`, value\: :ref:`float`\ ) |virtual| :ref:`🔗` +|void| **_space_set_param**\ (\ space\: :ref:`RID`, param\: :ref:`SpaceParameter`, value\: :ref:`float`\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -3002,11 +3098,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`RID` **_sphere_shape_create**\ (\ ) |virtual| :ref:`🔗` +:ref:`RID` **_sphere_shape_create**\ (\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -3016,11 +3112,11 @@ Method Descriptions .. rst-class:: classref-method -|void| **_step**\ (\ step\: :ref:`float`\ ) |virtual| :ref:`🔗` +|void| **_step**\ (\ step\: :ref:`float`\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -3030,11 +3126,11 @@ Method Descriptions .. rst-class:: classref-method -|void| **_sync**\ (\ ) |virtual| :ref:`🔗` +|void| **_sync**\ (\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -3044,11 +3140,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`RID` **_world_boundary_shape_create**\ (\ ) |virtual| :ref:`🔗` +:ref:`RID` **_world_boundary_shape_create**\ (\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -3062,7 +3158,7 @@ Method Descriptions .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -3076,9 +3172,10 @@ Method Descriptions .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_physicsserver3dmanager.rst b/classes/class_physicsserver3dmanager.rst index 79f40c2ae..9992ec1c2 100644 --- a/classes/class_physicsserver3dmanager.rst +++ b/classes/class_physicsserver3dmanager.rst @@ -67,6 +67,7 @@ Register a :ref:`PhysicsServer3D` implementation by passi Set the default :ref:`PhysicsServer3D` implementation to the one identified by ``name``, if ``priority`` is greater than the priority of the current default implementation. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_physicsserver3drenderingserverhandler.rst b/classes/class_physicsserver3drenderingserverhandler.rst index 2e545d201..3d66056b4 100644 --- a/classes/class_physicsserver3drenderingserverhandler.rst +++ b/classes/class_physicsserver3drenderingserverhandler.rst @@ -22,19 +22,19 @@ Methods .. table:: :widths: auto - +--------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_set_aabb`\ (\ aabb\: :ref:`AABB`\ ) |virtual| | - +--------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_set_normal`\ (\ vertex_id\: :ref:`int`, normal\: :ref:`Vector3`\ ) |virtual| | - +--------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_set_vertex`\ (\ vertex_id\: :ref:`int`, vertex\: :ref:`Vector3`\ ) |virtual| | - +--------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`set_aabb`\ (\ aabb\: :ref:`AABB`\ ) | - +--------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`set_normal`\ (\ vertex_id\: :ref:`int`, normal\: :ref:`Vector3`\ ) | - +--------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`set_vertex`\ (\ vertex_id\: :ref:`int`, vertex\: :ref:`Vector3`\ ) | - +--------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + +--------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_set_aabb`\ (\ aabb\: :ref:`AABB`\ ) |virtual| |required| | + +--------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_set_normal`\ (\ vertex_id\: :ref:`int`, normal\: :ref:`Vector3`\ ) |virtual| |required| | + +--------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_set_vertex`\ (\ vertex_id\: :ref:`int`, vertex\: :ref:`Vector3`\ ) |virtual| |required| | + +--------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_aabb`\ (\ aabb\: :ref:`AABB`\ ) | + +--------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_normal`\ (\ vertex_id\: :ref:`int`, normal\: :ref:`Vector3`\ ) | + +--------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_vertex`\ (\ vertex_id\: :ref:`int`, vertex\: :ref:`Vector3`\ ) | + +--------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ .. rst-class:: classref-section-separator @@ -49,7 +49,7 @@ Method Descriptions .. rst-class:: classref-method -|void| **_set_aabb**\ (\ aabb\: :ref:`AABB`\ ) |virtual| :ref:`🔗` +|void| **_set_aabb**\ (\ aabb\: :ref:`AABB`\ ) |virtual| |required| :ref:`🔗` Called by the :ref:`PhysicsServer3D` to set the bounding box for the :ref:`SoftBody3D`. @@ -61,7 +61,7 @@ Called by the :ref:`PhysicsServer3D` to set the bounding .. rst-class:: classref-method -|void| **_set_normal**\ (\ vertex_id\: :ref:`int`, normal\: :ref:`Vector3`\ ) |virtual| :ref:`🔗` +|void| **_set_normal**\ (\ vertex_id\: :ref:`int`, normal\: :ref:`Vector3`\ ) |virtual| |required| :ref:`🔗` Called by the :ref:`PhysicsServer3D` to set the normal for the :ref:`SoftBody3D` vertex at the index specified by ``vertex_id``. @@ -75,7 +75,7 @@ Called by the :ref:`PhysicsServer3D` to set the normal fo .. rst-class:: classref-method -|void| **_set_vertex**\ (\ vertex_id\: :ref:`int`, vertex\: :ref:`Vector3`\ ) |virtual| :ref:`🔗` +|void| **_set_vertex**\ (\ vertex_id\: :ref:`int`, vertex\: :ref:`Vector3`\ ) |virtual| |required| :ref:`🔗` Called by the :ref:`PhysicsServer3D` to set the position for the :ref:`SoftBody3D` vertex at the index specified by ``vertex_id``. @@ -118,6 +118,7 @@ Sets the normal for the :ref:`SoftBody3D` vertex at the index Sets the position for the :ref:`SoftBody3D` vertex at the index specified by ``vertex_id``. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_physicsshapequeryparameters2d.rst b/classes/class_physicsshapequeryparameters2d.rst index 16d049161..fd64e7c2d 100644 --- a/classes/class_physicsshapequeryparameters2d.rst +++ b/classes/class_physicsshapequeryparameters2d.rst @@ -12,14 +12,14 @@ PhysicsShapeQueryParameters2D **Inherits:** :ref:`RefCounted` **<** :ref:`Object` -Provides parameters for :ref:`PhysicsDirectSpaceState2D.intersect_shape()`. +Provides parameters for :ref:`PhysicsDirectSpaceState2D`'s methods. .. rst-class:: classref-introduction-group Description ----------- -By changing various properties of this object, such as the shape, you can configure the parameters for :ref:`PhysicsDirectSpaceState2D.intersect_shape()`. +By changing various properties of this object, such as the shape, you can configure the parameters for :ref:`PhysicsDirectSpaceState2D`'s methods. .. rst-class:: classref-reftable-group @@ -200,12 +200,12 @@ The queried shape's :ref:`RID` that will be used for collision/inters var shape_rid = PhysicsServer2D.circle_shape_create() var radius = 64 PhysicsServer2D.shape_set_data(shape_rid, radius) - + var params = PhysicsShapeQueryParameters2D.new() params.shape_rid = shape_rid - + # Execute physics queries here... - + # Release the shape when done with physics queries. PhysicsServer2D.free_rid(shape_rid) @@ -214,12 +214,12 @@ The queried shape's :ref:`RID` that will be used for collision/inters RID shapeRid = PhysicsServer2D.CircleShapeCreate(); int radius = 64; PhysicsServer2D.ShapeSetData(shapeRid, radius); - + var params = new PhysicsShapeQueryParameters2D(); params.ShapeRid = shapeRid; - + // Execute physics queries here... - + // Release the shape when done with physics queries. PhysicsServer2D.FreeRid(shapeRid); @@ -243,6 +243,7 @@ The queried shape's :ref:`RID` that will be used for collision/inters The queried shape's transform matrix. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_physicsshapequeryparameters3d.rst b/classes/class_physicsshapequeryparameters3d.rst index 1396e1626..29f809854 100644 --- a/classes/class_physicsshapequeryparameters3d.rst +++ b/classes/class_physicsshapequeryparameters3d.rst @@ -12,14 +12,14 @@ PhysicsShapeQueryParameters3D **Inherits:** :ref:`RefCounted` **<** :ref:`Object` -Provides parameters for :ref:`PhysicsDirectSpaceState3D.intersect_shape()`. +Provides parameters for :ref:`PhysicsDirectSpaceState3D`'s methods. .. rst-class:: classref-introduction-group Description ----------- -By changing various properties of this object, such as the shape, you can configure the parameters for :ref:`PhysicsDirectSpaceState3D.intersect_shape()`. +By changing various properties of this object, such as the shape, you can configure the parameters for :ref:`PhysicsDirectSpaceState3D`'s methods. .. rst-class:: classref-reftable-group @@ -197,29 +197,29 @@ The queried shape's :ref:`RID` that will be used for collision/inters .. code-tab:: gdscript - var shape_rid = PhysicsServer3D.shape_create(PhysicsServer3D.SHAPE_SPHERE) + var shape_rid = PhysicsServer3D.sphere_shape_create() var radius = 2.0 PhysicsServer3D.shape_set_data(shape_rid, radius) - + var params = PhysicsShapeQueryParameters3D.new() params.shape_rid = shape_rid - + # Execute physics queries here... - + # Release the shape when done with physics queries. PhysicsServer3D.free_rid(shape_rid) .. code-tab:: csharp - RID shapeRid = PhysicsServer3D.ShapeCreate(PhysicsServer3D.ShapeType.Sphere); + RID shapeRid = PhysicsServer3D.SphereShapeCreate(); float radius = 2.0f; PhysicsServer3D.ShapeSetData(shapeRid, radius); - + var params = new PhysicsShapeQueryParameters3D(); params.ShapeRid = shapeRid; - + // Execute physics queries here... - + // Release the shape when done with physics queries. PhysicsServer3D.FreeRid(shapeRid); @@ -243,6 +243,7 @@ The queried shape's :ref:`RID` that will be used for collision/inters The queried shape's transform matrix. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_physicstestmotionparameters2d.rst b/classes/class_physicstestmotionparameters2d.rst index a2ef9d11d..8ea486de0 100644 --- a/classes/class_physicstestmotionparameters2d.rst +++ b/classes/class_physicstestmotionparameters2d.rst @@ -174,6 +174,7 @@ If set to ``true``, any depenetration from the recovery phase is reported as a c If set to ``false``, only collisions resulting from the motion are reported, which is generally the desired behavior. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_physicstestmotionparameters3d.rst b/classes/class_physicstestmotionparameters3d.rst index b96ae769c..e6f0b5c53 100644 --- a/classes/class_physicstestmotionparameters3d.rst +++ b/classes/class_physicstestmotionparameters3d.rst @@ -193,6 +193,7 @@ If set to ``true``, any depenetration from the recovery phase is reported as a c If set to ``false``, only collisions resulting from the motion are reported, which is generally the desired behavior. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_physicstestmotionresult2d.rst b/classes/class_physicstestmotionresult2d.rst index 20da6056f..a0c755887 100644 --- a/classes/class_physicstestmotionresult2d.rst +++ b/classes/class_physicstestmotionresult2d.rst @@ -219,6 +219,7 @@ Returns the moving object's remaining movement vector. Returns the moving object's travel before collision. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_physicstestmotionresult3d.rst b/classes/class_physicstestmotionresult3d.rst index f3117d52b..9eadf274c 100644 --- a/classes/class_physicstestmotionresult3d.rst +++ b/classes/class_physicstestmotionresult3d.rst @@ -233,6 +233,7 @@ Returns the moving object's remaining movement vector. Returns the moving object's travel before collision. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_pinjoint2d.rst b/classes/class_pinjoint2d.rst index c24843ce2..f6315b755 100644 --- a/classes/class_pinjoint2d.rst +++ b/classes/class_pinjoint2d.rst @@ -151,6 +151,7 @@ Target speed for the motor. In radians per second. The higher this value, the more the bond to the pinned partner can flex. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_pinjoint3d.rst b/classes/class_pinjoint3d.rst index d181620ef..26ac8c839 100644 --- a/classes/class_pinjoint3d.rst +++ b/classes/class_pinjoint3d.rst @@ -176,6 +176,7 @@ Returns the value of the specified parameter. Sets the value of the specified parameter. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_placeholdercubemap.rst b/classes/class_placeholdercubemap.rst index 7ef72439e..9d5e97bd6 100644 --- a/classes/class_placeholdercubemap.rst +++ b/classes/class_placeholdercubemap.rst @@ -28,6 +28,7 @@ This class replaces a :ref:`Cubemap` or a :ref:`Cubemap` or a :ref:`Cubemap \ **Note:** This class is not intended for rendering or for use in shaders. Operations like calculating UV are not guaranteed to work. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_placeholdermaterial.rst b/classes/class_placeholdermaterial.rst index f81701e08..3634d9411 100644 --- a/classes/class_placeholdermaterial.rst +++ b/classes/class_placeholdermaterial.rst @@ -26,6 +26,7 @@ This class is used when loading a project that uses a :ref:`Material` enclosing this mesh in local space. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_placeholdertexture2d.rst b/classes/class_placeholdertexture2d.rst index 8a2f2e534..9676745e1 100644 --- a/classes/class_placeholdertexture2d.rst +++ b/classes/class_placeholdertexture2d.rst @@ -64,6 +64,7 @@ Property Descriptions The texture's size (in pixels). .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_placeholdertexture2darray.rst b/classes/class_placeholdertexture2darray.rst index a4ccfb4f2..44060dc87 100644 --- a/classes/class_placeholdertexture2darray.rst +++ b/classes/class_placeholdertexture2darray.rst @@ -28,6 +28,7 @@ This class is used when loading a project that uses a :ref:`Texture2D`\ ) - :ref:`Orientation` **get_orientation**\ (\ ) -Direction that the **PlaneMesh** is facing. See :ref:`Orientation` for options. +Direction that the **PlaneMesh** is facing. .. rst-class:: classref-item-separator @@ -175,6 +175,7 @@ Number of subdivision along the Z axis. Number of subdivision along the X axis. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_pointlight2d.rst b/classes/class_pointlight2d.rst index d80a2c497..1adf96bd7 100644 --- a/classes/class_pointlight2d.rst +++ b/classes/class_pointlight2d.rst @@ -123,6 +123,7 @@ The offset of the light's :ref:`texture`. The :ref:`texture`'s scale factor. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_pointmesh.rst b/classes/class_pointmesh.rst index f8db8f2a2..05ae330ed 100644 --- a/classes/class_pointmesh.rst +++ b/classes/class_pointmesh.rst @@ -12,20 +12,21 @@ PointMesh **Inherits:** :ref:`PrimitiveMesh` **<** :ref:`Mesh` **<** :ref:`Resource` **<** :ref:`RefCounted` **<** :ref:`Object` -Mesh with a single Point primitive. +Mesh with a single point primitive. .. rst-class:: classref-introduction-group Description ----------- -The PointMesh is made from a single point. Instead of relying on triangles, points are rendered as a single rectangle on the screen with a constant size. They are intended to be used with Particle systems, but can be used as a cheap way to render constant size billboarded sprites (for example in a point cloud). +A **PointMesh** is a primitive mesh composed of a single point. Instead of relying on triangles, points are rendered as a single rectangle on the screen with a constant size. They are intended to be used with particle systems, but can also be used as a cheap way to render billboarded sprites (for example in a point cloud). -PointMeshes, must be used with a material that has a point size. Point size can be accessed in a shader with ``POINT_SIZE``, or in a :ref:`BaseMaterial3D` by setting :ref:`BaseMaterial3D.use_point_size` and the variable :ref:`BaseMaterial3D.point_size`. +In order to be displayed, point meshes must be used with a material that has a point size. The point size can be accessed in a shader with the ``POINT_SIZE`` built-in, or in a :ref:`BaseMaterial3D` by setting the :ref:`BaseMaterial3D.use_point_size` and :ref:`BaseMaterial3D.point_size` properties. -When using PointMeshes, properties that normally alter vertices will be ignored, including billboard mode, grow, and cull face. +\ **Note:** When using point meshes, properties that normally affect vertices will be ignored, including :ref:`BaseMaterial3D.billboard_mode`, :ref:`BaseMaterial3D.grow`, and :ref:`BaseMaterial3D.cull_mode`. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_polygon2d.rst b/classes/class_polygon2d.rst index ebcae4cf1..104beace6 100644 --- a/classes/class_polygon2d.rst +++ b/classes/class_polygon2d.rst @@ -455,6 +455,7 @@ Sets the path to the node associated with the specified bone. Sets the weight values for the specified bone. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_polygonoccluder3d.rst b/classes/class_polygonoccluder3d.rst index 493c77536..ab043b6bd 100644 --- a/classes/class_polygonoccluder3d.rst +++ b/classes/class_polygonoccluder3d.rst @@ -69,6 +69,7 @@ The polygon must *not* have intersecting lines. Otherwise, triangulation will fa **Note:** The returned array is *copied* and any changes to it will not update the original property value. See :ref:`PackedVector2Array` for more details. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_polygonpathfinder.rst b/classes/class_polygonpathfinder.rst index 0238af410..bc552ecc1 100644 --- a/classes/class_polygonpathfinder.rst +++ b/classes/class_polygonpathfinder.rst @@ -14,7 +14,7 @@ PolygonPathFinder .. container:: contribute - There is currently no description for this class. Please help us by :ref:`contributing one `! + There is currently no description for this class. Please help us by `contributing one `__! .. rst-class:: classref-reftable-group @@ -59,7 +59,7 @@ Method Descriptions .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -73,7 +73,7 @@ Method Descriptions .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -87,7 +87,7 @@ Method Descriptions .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -101,7 +101,7 @@ Method Descriptions .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -115,7 +115,7 @@ Method Descriptions .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -169,7 +169,7 @@ Returns ``true`` if ``point`` falls inside the polygon area. .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -210,6 +210,7 @@ The length of ``connections`` must be even, returns an error if odd. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_popup.rst b/classes/class_popup.rst index 912e6e85b..4369b4d61 100644 --- a/classes/class_popup.rst +++ b/classes/class_popup.rst @@ -31,19 +31,25 @@ Properties .. table:: :widths: auto - +-------------------------+---------------+-------------------------------------------------------------------------+ - | :ref:`bool` | borderless | ``true`` (overrides :ref:`Window`) | - +-------------------------+---------------+-------------------------------------------------------------------------+ - | :ref:`bool` | popup_window | ``true`` (overrides :ref:`Window`) | - +-------------------------+---------------+-------------------------------------------------------------------------+ - | :ref:`bool` | transient | ``true`` (overrides :ref:`Window`) | - +-------------------------+---------------+-------------------------------------------------------------------------+ - | :ref:`bool` | unresizable | ``true`` (overrides :ref:`Window`) | - +-------------------------+---------------+-------------------------------------------------------------------------+ - | :ref:`bool` | visible | ``false`` (overrides :ref:`Window`) | - +-------------------------+---------------+-------------------------------------------------------------------------+ - | :ref:`bool` | wrap_controls | ``true`` (overrides :ref:`Window`) | - +-------------------------+---------------+-------------------------------------------------------------------------+ + +-------------------------+-------------------+-----------------------------------------------------------------------------+ + | :ref:`bool` | borderless | ``true`` (overrides :ref:`Window`) | + +-------------------------+-------------------+-----------------------------------------------------------------------------+ + | :ref:`bool` | maximize_disabled | ``true`` (overrides :ref:`Window`) | + +-------------------------+-------------------+-----------------------------------------------------------------------------+ + | :ref:`bool` | minimize_disabled | ``true`` (overrides :ref:`Window`) | + +-------------------------+-------------------+-----------------------------------------------------------------------------+ + | :ref:`bool` | popup_window | ``true`` (overrides :ref:`Window`) | + +-------------------------+-------------------+-----------------------------------------------------------------------------+ + | :ref:`bool` | popup_wm_hint | ``true`` (overrides :ref:`Window`) | + +-------------------------+-------------------+-----------------------------------------------------------------------------+ + | :ref:`bool` | transient | ``true`` (overrides :ref:`Window`) | + +-------------------------+-------------------+-----------------------------------------------------------------------------+ + | :ref:`bool` | unresizable | ``true`` (overrides :ref:`Window`) | + +-------------------------+-------------------+-----------------------------------------------------------------------------+ + | :ref:`bool` | visible | ``false`` (overrides :ref:`Window`) | + +-------------------------+-------------------+-----------------------------------------------------------------------------+ + | :ref:`bool` | wrap_controls | ``true`` (overrides :ref:`Window`) | + +-------------------------+-------------------+-----------------------------------------------------------------------------+ .. rst-class:: classref-section-separator @@ -63,6 +69,7 @@ Signals Emitted when the popup is hidden. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_popupmenu.rst b/classes/class_popupmenu.rst index 1dac31e99..32aea08e2 100644 --- a/classes/class_popupmenu.rst +++ b/classes/class_popupmenu.rst @@ -67,149 +67,153 @@ Methods .. table:: :widths: auto - +--------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`activate_item_by_event`\ (\ event\: :ref:`InputEvent`, for_global_only\: :ref:`bool` = false\ ) | - +--------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`add_check_item`\ (\ label\: :ref:`String`, id\: :ref:`int` = -1, accel\: :ref:`Key` = 0\ ) | - +--------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`add_check_shortcut`\ (\ shortcut\: :ref:`Shortcut`, id\: :ref:`int` = -1, global\: :ref:`bool` = false\ ) | - +--------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`add_icon_check_item`\ (\ texture\: :ref:`Texture2D`, label\: :ref:`String`, id\: :ref:`int` = -1, accel\: :ref:`Key` = 0\ ) | - +--------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`add_icon_check_shortcut`\ (\ texture\: :ref:`Texture2D`, shortcut\: :ref:`Shortcut`, id\: :ref:`int` = -1, global\: :ref:`bool` = false\ ) | - +--------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`add_icon_item`\ (\ texture\: :ref:`Texture2D`, label\: :ref:`String`, id\: :ref:`int` = -1, accel\: :ref:`Key` = 0\ ) | - +--------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`add_icon_radio_check_item`\ (\ texture\: :ref:`Texture2D`, label\: :ref:`String`, id\: :ref:`int` = -1, accel\: :ref:`Key` = 0\ ) | - +--------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`add_icon_radio_check_shortcut`\ (\ texture\: :ref:`Texture2D`, shortcut\: :ref:`Shortcut`, id\: :ref:`int` = -1, global\: :ref:`bool` = false\ ) | - +--------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`add_icon_shortcut`\ (\ texture\: :ref:`Texture2D`, shortcut\: :ref:`Shortcut`, id\: :ref:`int` = -1, global\: :ref:`bool` = false, allow_echo\: :ref:`bool` = false\ ) | - +--------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`add_item`\ (\ label\: :ref:`String`, id\: :ref:`int` = -1, accel\: :ref:`Key` = 0\ ) | - +--------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`add_multistate_item`\ (\ label\: :ref:`String`, max_states\: :ref:`int`, default_state\: :ref:`int` = 0, id\: :ref:`int` = -1, accel\: :ref:`Key` = 0\ ) | - +--------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`add_radio_check_item`\ (\ label\: :ref:`String`, id\: :ref:`int` = -1, accel\: :ref:`Key` = 0\ ) | - +--------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`add_radio_check_shortcut`\ (\ shortcut\: :ref:`Shortcut`, id\: :ref:`int` = -1, global\: :ref:`bool` = false\ ) | - +--------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`add_separator`\ (\ label\: :ref:`String` = "", id\: :ref:`int` = -1\ ) | - +--------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`add_shortcut`\ (\ shortcut\: :ref:`Shortcut`, id\: :ref:`int` = -1, global\: :ref:`bool` = false, allow_echo\: :ref:`bool` = false\ ) | - +--------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`add_submenu_item`\ (\ label\: :ref:`String`, submenu\: :ref:`String`, id\: :ref:`int` = -1\ ) | - +--------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`add_submenu_node_item`\ (\ label\: :ref:`String`, submenu\: :ref:`PopupMenu`, id\: :ref:`int` = -1\ ) | - +--------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`clear`\ (\ free_submenus\: :ref:`bool` = false\ ) | - +--------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`get_focused_item`\ (\ ) |const| | - +--------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Key` | :ref:`get_item_accelerator`\ (\ index\: :ref:`int`\ ) |const| | - +--------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Texture2D` | :ref:`get_item_icon`\ (\ index\: :ref:`int`\ ) |const| | - +--------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`get_item_icon_max_width`\ (\ index\: :ref:`int`\ ) |const| | - +--------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Color` | :ref:`get_item_icon_modulate`\ (\ index\: :ref:`int`\ ) |const| | - +--------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`get_item_id`\ (\ index\: :ref:`int`\ ) |const| | - +--------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`get_item_indent`\ (\ index\: :ref:`int`\ ) |const| | - +--------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`get_item_index`\ (\ id\: :ref:`int`\ ) |const| | - +--------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`String` | :ref:`get_item_language`\ (\ index\: :ref:`int`\ ) |const| | - +--------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Variant` | :ref:`get_item_metadata`\ (\ index\: :ref:`int`\ ) |const| | - +--------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`get_item_multistate`\ (\ index\: :ref:`int`\ ) |const| | - +--------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`get_item_multistate_max`\ (\ index\: :ref:`int`\ ) |const| | - +--------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Shortcut` | :ref:`get_item_shortcut`\ (\ index\: :ref:`int`\ ) |const| | - +--------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`String` | :ref:`get_item_submenu`\ (\ index\: :ref:`int`\ ) |const| | - +--------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`PopupMenu` | :ref:`get_item_submenu_node`\ (\ index\: :ref:`int`\ ) |const| | - +--------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`String` | :ref:`get_item_text`\ (\ index\: :ref:`int`\ ) |const| | - +--------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`TextDirection` | :ref:`get_item_text_direction`\ (\ index\: :ref:`int`\ ) |const| | - +--------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`String` | :ref:`get_item_tooltip`\ (\ index\: :ref:`int`\ ) |const| | - +--------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`is_item_checkable`\ (\ index\: :ref:`int`\ ) |const| | - +--------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`is_item_checked`\ (\ index\: :ref:`int`\ ) |const| | - +--------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`is_item_disabled`\ (\ index\: :ref:`int`\ ) |const| | - +--------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`is_item_radio_checkable`\ (\ index\: :ref:`int`\ ) |const| | - +--------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`is_item_separator`\ (\ index\: :ref:`int`\ ) |const| | - +--------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`is_item_shortcut_disabled`\ (\ index\: :ref:`int`\ ) |const| | - +--------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`is_native_menu`\ (\ ) |const| | - +--------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`is_system_menu`\ (\ ) |const| | - +--------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`remove_item`\ (\ index\: :ref:`int`\ ) | - +--------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`scroll_to_item`\ (\ index\: :ref:`int`\ ) | - +--------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`set_focused_item`\ (\ index\: :ref:`int`\ ) | - +--------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`set_item_accelerator`\ (\ index\: :ref:`int`, accel\: :ref:`Key`\ ) | - +--------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`set_item_as_checkable`\ (\ index\: :ref:`int`, enable\: :ref:`bool`\ ) | - +--------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`set_item_as_radio_checkable`\ (\ index\: :ref:`int`, enable\: :ref:`bool`\ ) | - +--------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`set_item_as_separator`\ (\ index\: :ref:`int`, enable\: :ref:`bool`\ ) | - +--------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`set_item_checked`\ (\ index\: :ref:`int`, checked\: :ref:`bool`\ ) | - +--------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`set_item_disabled`\ (\ index\: :ref:`int`, disabled\: :ref:`bool`\ ) | - +--------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`set_item_icon`\ (\ index\: :ref:`int`, icon\: :ref:`Texture2D`\ ) | - +--------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`set_item_icon_max_width`\ (\ index\: :ref:`int`, width\: :ref:`int`\ ) | - +--------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`set_item_icon_modulate`\ (\ index\: :ref:`int`, modulate\: :ref:`Color`\ ) | - +--------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`set_item_id`\ (\ index\: :ref:`int`, id\: :ref:`int`\ ) | - +--------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`set_item_indent`\ (\ index\: :ref:`int`, indent\: :ref:`int`\ ) | - +--------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`set_item_language`\ (\ index\: :ref:`int`, language\: :ref:`String`\ ) | - +--------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`set_item_metadata`\ (\ index\: :ref:`int`, metadata\: :ref:`Variant`\ ) | - +--------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`set_item_multistate`\ (\ index\: :ref:`int`, state\: :ref:`int`\ ) | - +--------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`set_item_multistate_max`\ (\ index\: :ref:`int`, max_states\: :ref:`int`\ ) | - +--------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`set_item_shortcut`\ (\ index\: :ref:`int`, shortcut\: :ref:`Shortcut`, global\: :ref:`bool` = false\ ) | - +--------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`set_item_shortcut_disabled`\ (\ index\: :ref:`int`, disabled\: :ref:`bool`\ ) | - +--------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`set_item_submenu`\ (\ index\: :ref:`int`, submenu\: :ref:`String`\ ) | - +--------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`set_item_submenu_node`\ (\ index\: :ref:`int`, submenu\: :ref:`PopupMenu`\ ) | - +--------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`set_item_text`\ (\ index\: :ref:`int`, text\: :ref:`String`\ ) | - +--------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`set_item_text_direction`\ (\ index\: :ref:`int`, direction\: :ref:`TextDirection`\ ) | - +--------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`set_item_tooltip`\ (\ index\: :ref:`int`, tooltip\: :ref:`String`\ ) | - +--------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`toggle_item_checked`\ (\ index\: :ref:`int`\ ) | - +--------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`toggle_item_multistate`\ (\ index\: :ref:`int`\ ) | - +--------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + +-------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`activate_item_by_event`\ (\ event\: :ref:`InputEvent`, for_global_only\: :ref:`bool` = false\ ) | + +-------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`add_check_item`\ (\ label\: :ref:`String`, id\: :ref:`int` = -1, accel\: :ref:`Key` = 0\ ) | + +-------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`add_check_shortcut`\ (\ shortcut\: :ref:`Shortcut`, id\: :ref:`int` = -1, global\: :ref:`bool` = false\ ) | + +-------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`add_icon_check_item`\ (\ texture\: :ref:`Texture2D`, label\: :ref:`String`, id\: :ref:`int` = -1, accel\: :ref:`Key` = 0\ ) | + +-------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`add_icon_check_shortcut`\ (\ texture\: :ref:`Texture2D`, shortcut\: :ref:`Shortcut`, id\: :ref:`int` = -1, global\: :ref:`bool` = false\ ) | + +-------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`add_icon_item`\ (\ texture\: :ref:`Texture2D`, label\: :ref:`String`, id\: :ref:`int` = -1, accel\: :ref:`Key` = 0\ ) | + +-------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`add_icon_radio_check_item`\ (\ texture\: :ref:`Texture2D`, label\: :ref:`String`, id\: :ref:`int` = -1, accel\: :ref:`Key` = 0\ ) | + +-------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`add_icon_radio_check_shortcut`\ (\ texture\: :ref:`Texture2D`, shortcut\: :ref:`Shortcut`, id\: :ref:`int` = -1, global\: :ref:`bool` = false\ ) | + +-------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`add_icon_shortcut`\ (\ texture\: :ref:`Texture2D`, shortcut\: :ref:`Shortcut`, id\: :ref:`int` = -1, global\: :ref:`bool` = false, allow_echo\: :ref:`bool` = false\ ) | + +-------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`add_item`\ (\ label\: :ref:`String`, id\: :ref:`int` = -1, accel\: :ref:`Key` = 0\ ) | + +-------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`add_multistate_item`\ (\ label\: :ref:`String`, max_states\: :ref:`int`, default_state\: :ref:`int` = 0, id\: :ref:`int` = -1, accel\: :ref:`Key` = 0\ ) | + +-------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`add_radio_check_item`\ (\ label\: :ref:`String`, id\: :ref:`int` = -1, accel\: :ref:`Key` = 0\ ) | + +-------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`add_radio_check_shortcut`\ (\ shortcut\: :ref:`Shortcut`, id\: :ref:`int` = -1, global\: :ref:`bool` = false\ ) | + +-------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`add_separator`\ (\ label\: :ref:`String` = "", id\: :ref:`int` = -1\ ) | + +-------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`add_shortcut`\ (\ shortcut\: :ref:`Shortcut`, id\: :ref:`int` = -1, global\: :ref:`bool` = false, allow_echo\: :ref:`bool` = false\ ) | + +-------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`add_submenu_item`\ (\ label\: :ref:`String`, submenu\: :ref:`String`, id\: :ref:`int` = -1\ ) | + +-------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`add_submenu_node_item`\ (\ label\: :ref:`String`, submenu\: :ref:`PopupMenu`, id\: :ref:`int` = -1\ ) | + +-------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`clear`\ (\ free_submenus\: :ref:`bool` = false\ ) | + +-------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`get_focused_item`\ (\ ) |const| | + +-------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Key` | :ref:`get_item_accelerator`\ (\ index\: :ref:`int`\ ) |const| | + +-------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`AutoTranslateMode` | :ref:`get_item_auto_translate_mode`\ (\ index\: :ref:`int`\ ) |const| | + +-------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Texture2D` | :ref:`get_item_icon`\ (\ index\: :ref:`int`\ ) |const| | + +-------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`get_item_icon_max_width`\ (\ index\: :ref:`int`\ ) |const| | + +-------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Color` | :ref:`get_item_icon_modulate`\ (\ index\: :ref:`int`\ ) |const| | + +-------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`get_item_id`\ (\ index\: :ref:`int`\ ) |const| | + +-------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`get_item_indent`\ (\ index\: :ref:`int`\ ) |const| | + +-------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`get_item_index`\ (\ id\: :ref:`int`\ ) |const| | + +-------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`get_item_language`\ (\ index\: :ref:`int`\ ) |const| | + +-------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Variant` | :ref:`get_item_metadata`\ (\ index\: :ref:`int`\ ) |const| | + +-------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`get_item_multistate`\ (\ index\: :ref:`int`\ ) |const| | + +-------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`get_item_multistate_max`\ (\ index\: :ref:`int`\ ) |const| | + +-------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Shortcut` | :ref:`get_item_shortcut`\ (\ index\: :ref:`int`\ ) |const| | + +-------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`get_item_submenu`\ (\ index\: :ref:`int`\ ) |const| | + +-------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`PopupMenu` | :ref:`get_item_submenu_node`\ (\ index\: :ref:`int`\ ) |const| | + +-------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`get_item_text`\ (\ index\: :ref:`int`\ ) |const| | + +-------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`TextDirection` | :ref:`get_item_text_direction`\ (\ index\: :ref:`int`\ ) |const| | + +-------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`get_item_tooltip`\ (\ index\: :ref:`int`\ ) |const| | + +-------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`is_item_checkable`\ (\ index\: :ref:`int`\ ) |const| | + +-------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`is_item_checked`\ (\ index\: :ref:`int`\ ) |const| | + +-------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`is_item_disabled`\ (\ index\: :ref:`int`\ ) |const| | + +-------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`is_item_radio_checkable`\ (\ index\: :ref:`int`\ ) |const| | + +-------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`is_item_separator`\ (\ index\: :ref:`int`\ ) |const| | + +-------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`is_item_shortcut_disabled`\ (\ index\: :ref:`int`\ ) |const| | + +-------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`is_native_menu`\ (\ ) |const| | + +-------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`is_system_menu`\ (\ ) |const| | + +-------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`remove_item`\ (\ index\: :ref:`int`\ ) | + +-------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`scroll_to_item`\ (\ index\: :ref:`int`\ ) | + +-------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_focused_item`\ (\ index\: :ref:`int`\ ) | + +-------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_item_accelerator`\ (\ index\: :ref:`int`, accel\: :ref:`Key`\ ) | + +-------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_item_as_checkable`\ (\ index\: :ref:`int`, enable\: :ref:`bool`\ ) | + +-------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_item_as_radio_checkable`\ (\ index\: :ref:`int`, enable\: :ref:`bool`\ ) | + +-------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_item_as_separator`\ (\ index\: :ref:`int`, enable\: :ref:`bool`\ ) | + +-------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_item_auto_translate_mode`\ (\ index\: :ref:`int`, mode\: :ref:`AutoTranslateMode`\ ) | + +-------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_item_checked`\ (\ index\: :ref:`int`, checked\: :ref:`bool`\ ) | + +-------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_item_disabled`\ (\ index\: :ref:`int`, disabled\: :ref:`bool`\ ) | + +-------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_item_icon`\ (\ index\: :ref:`int`, icon\: :ref:`Texture2D`\ ) | + +-------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_item_icon_max_width`\ (\ index\: :ref:`int`, width\: :ref:`int`\ ) | + +-------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_item_icon_modulate`\ (\ index\: :ref:`int`, modulate\: :ref:`Color`\ ) | + +-------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_item_id`\ (\ index\: :ref:`int`, id\: :ref:`int`\ ) | + +-------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_item_indent`\ (\ index\: :ref:`int`, indent\: :ref:`int`\ ) | + +-------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_item_language`\ (\ index\: :ref:`int`, language\: :ref:`String`\ ) | + +-------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_item_metadata`\ (\ index\: :ref:`int`, metadata\: :ref:`Variant`\ ) | + +-------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_item_multistate`\ (\ index\: :ref:`int`, state\: :ref:`int`\ ) | + +-------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_item_multistate_max`\ (\ index\: :ref:`int`, max_states\: :ref:`int`\ ) | + +-------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_item_shortcut`\ (\ index\: :ref:`int`, shortcut\: :ref:`Shortcut`, global\: :ref:`bool` = false\ ) | + +-------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_item_shortcut_disabled`\ (\ index\: :ref:`int`, disabled\: :ref:`bool`\ ) | + +-------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_item_submenu`\ (\ index\: :ref:`int`, submenu\: :ref:`String`\ ) | + +-------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_item_submenu_node`\ (\ index\: :ref:`int`, submenu\: :ref:`PopupMenu`\ ) | + +-------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_item_text`\ (\ index\: :ref:`int`, text\: :ref:`String`\ ) | + +-------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_item_text_direction`\ (\ index\: :ref:`int`, direction\: :ref:`TextDirection`\ ) | + +-------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_item_tooltip`\ (\ index\: :ref:`int`, tooltip\: :ref:`String`\ ) | + +-------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`toggle_item_checked`\ (\ index\: :ref:`int`\ ) | + +-------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`toggle_item_multistate`\ (\ index\: :ref:`int`\ ) | + +-------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ .. rst-class:: classref-reftable-group @@ -662,7 +666,7 @@ An ``id`` can optionally be provided, as well as an accelerator (``accel``). If func _ready(): add_multistate_item("Item", 3, 0) - + index_pressed.connect(func(index: int): toggle_item_multistate(index) match get_item_multistate(index): @@ -810,6 +814,18 @@ Returns the accelerator of the item at the given ``index``. An accelerator is a ---- +.. _class_PopupMenu_method_get_item_auto_translate_mode: + +.. rst-class:: classref-method + +:ref:`AutoTranslateMode` **get_item_auto_translate_mode**\ (\ index\: :ref:`int`\ ) |const| :ref:`🔗` + +Returns the auto translate mode of the item at the given ``index``. + +.. rst-class:: classref-item-separator + +---- + .. _class_PopupMenu_method_get_item_icon: .. rst-class:: classref-method @@ -1196,6 +1212,20 @@ Mark the item at the given ``index`` as a separator, which means that it would b ---- +.. _class_PopupMenu_method_set_item_auto_translate_mode: + +.. rst-class:: classref-method + +|void| **set_item_auto_translate_mode**\ (\ index\: :ref:`int`, mode\: :ref:`AutoTranslateMode`\ ) :ref:`🔗` + +Sets the auto translate mode of the item at the given ``index``. + +Items use :ref:`Node.AUTO_TRANSLATE_MODE_INHERIT` by default, which uses the same auto translate mode as the **PopupMenu** itself. + +.. rst-class:: classref-item-separator + +---- + .. _class_PopupMenu_method_set_item_checked: .. rst-class:: classref-method @@ -1852,6 +1882,7 @@ Font size of the menu items. :ref:`StyleBox` used for the separators. See :ref:`add_separator()`. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_popuppanel.rst b/classes/class_popuppanel.rst index 3975c2933..634c9a783 100644 --- a/classes/class_popuppanel.rst +++ b/classes/class_popuppanel.rst @@ -65,6 +65,7 @@ Theme Property Descriptions :ref:`StyleBox` for the background panel. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_portablecompressedtexture2d.rst b/classes/class_portablecompressedtexture2d.rst index 3fbe6b166..a44eb2af8 100644 --- a/classes/class_portablecompressedtexture2d.rst +++ b/classes/class_portablecompressedtexture2d.rst @@ -62,6 +62,8 @@ Methods +--------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`is_keeping_all_compressed_buffers`\ (\ ) |static| | +--------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_basisu_compressor_params`\ (\ uastc_level\: :ref:`int`, rdo_quality_loss\: :ref:`float`\ ) | + +--------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`set_keep_all_compressed_buffers`\ (\ keep\: :ref:`bool`\ ) |static| | +--------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ @@ -88,7 +90,7 @@ enum **CompressionMode**: :ref:`🔗`! + There is currently no description for this enum. Please help us by `contributing one `__! @@ -100,7 +102,7 @@ enum **CompressionMode**: :ref:`🔗`! + There is currently no description for this enum. Please help us by `contributing one `__! @@ -112,7 +114,7 @@ enum **CompressionMode**: :ref:`🔗`! + There is currently no description for this enum. Please help us by `contributing one `__! @@ -124,7 +126,7 @@ enum **CompressionMode**: :ref:`🔗`! + There is currently no description for this enum. Please help us by `contributing one `__! @@ -136,7 +138,7 @@ enum **CompressionMode**: :ref:`🔗`! + There is currently no description for this enum. Please help us by `contributing one `__! @@ -148,7 +150,19 @@ enum **CompressionMode**: :ref:`🔗`! + There is currently no description for this enum. Please help us by `contributing one `__! + + + +.. _class_PortableCompressedTexture2D_constant_COMPRESSION_MODE_ASTC: + +.. rst-class:: classref-enumeration-constant + +:ref:`CompressionMode` **COMPRESSION_MODE_ASTC** = ``6`` + +.. container:: contribute + + There is currently no description for this enum. Please help us by `contributing one `__! @@ -176,6 +190,8 @@ When running on the editor, this class will keep the source compressed data in m This flag allows to keep the compressed data in memory if you intend it to persist after loading. +\ **Note:** This must be set before :ref:`create_from_image()` to take effect. + .. rst-class:: classref-item-separator ---- @@ -254,6 +270,20 @@ Return whether the flag is overridden for all textures of this type. ---- +.. _class_PortableCompressedTexture2D_method_set_basisu_compressor_params: + +.. rst-class:: classref-method + +|void| **set_basisu_compressor_params**\ (\ uastc_level\: :ref:`int`, rdo_quality_loss\: :ref:`float`\ ) :ref:`🔗` + +Sets the compressor parameters for Basis Universal compression. See also the settings in :ref:`ResourceImporterTexture`. + +\ **Note:** This must be set before :ref:`create_from_image()` to take effect. + +.. rst-class:: classref-item-separator + +---- + .. _class_PortableCompressedTexture2D_method_set_keep_all_compressed_buffers: .. rst-class:: classref-method @@ -263,6 +293,7 @@ Return whether the flag is overridden for all textures of this type. Overrides the flag globally for all textures of this type. This is used primarily by the editor. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_primitivemesh.rst b/classes/class_primitivemesh.rst index b9eb6ceeb..edacffe12 100644 --- a/classes/class_primitivemesh.rst +++ b/classes/class_primitivemesh.rst @@ -113,7 +113,7 @@ Overrides the :ref:`AABB` with one defined by user for use with frus - |void| **set_flip_faces**\ (\ value\: :ref:`bool`\ ) - :ref:`bool` **get_flip_faces**\ (\ ) -If set, the order of the vertices in each triangle are reversed resulting in the backside of the mesh being drawn. +If ``true``, the order of the vertices in each triangle is reversed, resulting in the backside of the mesh being drawn. This gives the same result as using :ref:`BaseMaterial3D.CULL_FRONT` in :ref:`BaseMaterial3D.cull_mode`. @@ -214,6 +214,7 @@ Returns the mesh arrays used to make up the surface of this primitive mesh. Request an update of this primitive mesh based on its properties. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_prismmesh.rst b/classes/class_prismmesh.rst index 0ea4f8e72..03e3df235 100644 --- a/classes/class_prismmesh.rst +++ b/classes/class_prismmesh.rst @@ -132,6 +132,7 @@ Number of added edge loops along the Y axis. Number of added edge loops along the X axis. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_proceduralskymaterial.rst b/classes/class_proceduralskymaterial.rst index 6c49f70d9..e2e576da5 100644 --- a/classes/class_proceduralskymaterial.rst +++ b/classes/class_proceduralskymaterial.rst @@ -307,6 +307,7 @@ How quickly the sun fades away between the edge of the sun disk and :ref:`sun_an If ``true``, enables debanding. Debanding adds a small amount of noise which helps reduce banding that appears from the smooth changes in color in the sky. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_progressbar.rst b/classes/class_progressbar.rst index 29ec3ad27..99dca2656 100644 --- a/classes/class_progressbar.rst +++ b/classes/class_progressbar.rst @@ -19,7 +19,7 @@ A control used for visual representation of a percentage. Description ----------- -A control used for visual representation of a percentage. Shows fill percentage from right to left. +A control used for visual representation of a percentage. Shows the fill percentage in the center. Can also be used to show indeterminate progress. For more fill modes, use :ref:`TextureProgressBar` instead. .. rst-class:: classref-reftable-group @@ -275,6 +275,7 @@ The style of the background. The style of the progress (i.e. the part that fills the bar). .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_projection.rst b/classes/class_projection.rst index 339dd37ec..fc0c30eb9 100644 --- a/classes/class_projection.rst +++ b/classes/class_projection.rst @@ -570,7 +570,7 @@ Returns the factor by which the visible level of detail is scaled by this **Proj :ref:`int` **get_pixels_per_meter**\ (\ for_pixel_width\: :ref:`int`\ ) |const| :ref:`🔗` -Returns the number of pixels with the given pixel width displayed per meter, after this **Projection** is applied. +Returns ``for_pixel_width`` divided by the viewport's width measured in meters on the near plane, after this **Projection** is applied. .. rst-class:: classref-item-separator @@ -744,6 +744,7 @@ Returns the column of the **Projection** with the given index. Indices are in the following order: x, y, z, w. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_projectsettings.rst b/classes/class_projectsettings.rst index 270cdce56..fff1f8346 100644 --- a/classes/class_projectsettings.rst +++ b/classes/class_projectsettings.rst @@ -48,6 +48,10 @@ Properties .. table:: :widths: auto + +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`accessibility/general/accessibility_support` | ``0`` | + +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`accessibility/general/updates_per_second` | ``60`` | +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`animation/warnings/check_angle_interpolation_type_conflicting` | ``true`` | +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ @@ -105,6 +109,8 @@ Properties +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`application/run/frame_delay_msec` | ``0`` | +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`application/run/load_shell_environment` | ``false`` | + +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`application/run/low_processor_mode` | ``false`` | +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`application/run/low_processor_mode_sleep_usec` | ``6900`` | @@ -187,8 +193,6 @@ Properties +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`debug/gdscript/warnings/confusable_local_usage` | ``1`` | +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`debug/gdscript/warnings/constant_used_as_function` | ``1`` | - +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`debug/gdscript/warnings/deprecated_keyword` | ``1`` | +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`debug/gdscript/warnings/empty_file` | ``1`` | @@ -199,8 +203,6 @@ Properties +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`debug/gdscript/warnings/exclude_addons` | ``true`` | +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`debug/gdscript/warnings/function_used_as_property` | ``1`` | - +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`debug/gdscript/warnings/get_node_default_without_onready` | ``2`` | +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`debug/gdscript/warnings/incompatible_ternary` | ``1`` | @@ -223,8 +225,6 @@ Properties +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`debug/gdscript/warnings/onready_with_export` | ``2`` | +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`debug/gdscript/warnings/property_used_as_function` | ``1`` | - +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`debug/gdscript/warnings/redundant_await` | ``1`` | +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`debug/gdscript/warnings/redundant_static_unload` | ``1`` | @@ -279,6 +279,10 @@ Properties +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ | :ref:`String` | :ref:`debug/settings/crash_handler/message.editor` | ``"Please include this when reporting the bug on: https://github.com/godotengine/godot/issues"`` | +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`debug/settings/gdscript/always_track_call_stacks` | ``false`` | + +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`debug/settings/gdscript/always_track_local_variables` | ``false`` | + +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`debug/settings/gdscript/max_call_stack` | ``1024`` | +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`debug/settings/physics_interpolation/enable_warnings` | ``true`` | @@ -317,23 +321,41 @@ Properties +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`debug/shader_language/warnings/unused_varying` | ``true`` | +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ - | :ref:`Color` | :ref:`debug/shapes/avoidance/agents_radius_color` | ``Color(1, 1, 0, 0.25)`` | + | :ref:`Color` | :ref:`debug/shapes/avoidance/2d/agents_radius_color` | ``Color(1, 1, 0, 0.25)`` | +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`debug/shapes/avoidance/enable_agents_radius` | ``true`` | + | :ref:`bool` | :ref:`debug/shapes/avoidance/2d/enable_agents_radius` | ``true`` | +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`debug/shapes/avoidance/enable_obstacles_radius` | ``true`` | + | :ref:`bool` | :ref:`debug/shapes/avoidance/2d/enable_obstacles_radius` | ``true`` | +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`debug/shapes/avoidance/enable_obstacles_static` | ``true`` | + | :ref:`bool` | :ref:`debug/shapes/avoidance/2d/enable_obstacles_static` | ``true`` | +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ - | :ref:`Color` | :ref:`debug/shapes/avoidance/obstacles_radius_color` | ``Color(1, 0.5, 0, 0.25)`` | + | :ref:`Color` | :ref:`debug/shapes/avoidance/2d/obstacles_radius_color` | ``Color(1, 0.5, 0, 0.25)`` | +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ - | :ref:`Color` | :ref:`debug/shapes/avoidance/obstacles_static_edge_pushin_color` | ``Color(1, 0, 0, 1)`` | + | :ref:`Color` | :ref:`debug/shapes/avoidance/2d/obstacles_static_edge_pushin_color` | ``Color(1, 0, 0, 1)`` | +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ - | :ref:`Color` | :ref:`debug/shapes/avoidance/obstacles_static_edge_pushout_color` | ``Color(1, 1, 0, 1)`` | + | :ref:`Color` | :ref:`debug/shapes/avoidance/2d/obstacles_static_edge_pushout_color` | ``Color(1, 1, 0, 1)`` | +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ - | :ref:`Color` | :ref:`debug/shapes/avoidance/obstacles_static_face_pushin_color` | ``Color(1, 0, 0, 0)`` | + | :ref:`Color` | :ref:`debug/shapes/avoidance/2d/obstacles_static_face_pushin_color` | ``Color(1, 0, 0, 0)`` | +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ - | :ref:`Color` | :ref:`debug/shapes/avoidance/obstacles_static_face_pushout_color` | ``Color(1, 1, 0, 0.5)`` | + | :ref:`Color` | :ref:`debug/shapes/avoidance/2d/obstacles_static_face_pushout_color` | ``Color(1, 1, 0, 0.5)`` | + +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ + | :ref:`Color` | :ref:`debug/shapes/avoidance/3d/agents_radius_color` | ``Color(1, 1, 0, 0.25)`` | + +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`debug/shapes/avoidance/3d/enable_agents_radius` | ``true`` | + +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`debug/shapes/avoidance/3d/enable_obstacles_radius` | ``true`` | + +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`debug/shapes/avoidance/3d/enable_obstacles_static` | ``true`` | + +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ + | :ref:`Color` | :ref:`debug/shapes/avoidance/3d/obstacles_radius_color` | ``Color(1, 0.5, 0, 0.25)`` | + +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ + | :ref:`Color` | :ref:`debug/shapes/avoidance/3d/obstacles_static_edge_pushin_color` | ``Color(1, 0, 0, 1)`` | + +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ + | :ref:`Color` | :ref:`debug/shapes/avoidance/3d/obstacles_static_edge_pushout_color` | ``Color(1, 1, 0, 1)`` | + +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ + | :ref:`Color` | :ref:`debug/shapes/avoidance/3d/obstacles_static_face_pushin_color` | ``Color(1, 0, 0, 0)`` | + +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ + | :ref:`Color` | :ref:`debug/shapes/avoidance/3d/obstacles_static_face_pushout_color` | ``Color(1, 1, 0, 0.5)`` | +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ | :ref:`Color` | :ref:`debug/shapes/collision/contact_color` | ``Color(1, 0.2, 0.1, 0.8)`` | +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ @@ -343,41 +365,69 @@ Properties +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ | :ref:`Color` | :ref:`debug/shapes/collision/shape_color` | ``Color(0, 0.6, 0.7, 0.42)`` | +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ - | :ref:`Color` | :ref:`debug/shapes/navigation/agent_path_color` | ``Color(1, 0, 0, 1)`` | + | :ref:`Color` | :ref:`debug/shapes/navigation/2d/agent_path_color` | ``Color(1, 0, 0, 1)`` | +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ - | :ref:`float` | :ref:`debug/shapes/navigation/agent_path_point_size` | ``4.0`` | + | :ref:`float` | :ref:`debug/shapes/navigation/2d/agent_path_point_size` | ``4.0`` | +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ - | :ref:`Color` | :ref:`debug/shapes/navigation/edge_connection_color` | ``Color(1, 0, 1, 1)`` | + | :ref:`Color` | :ref:`debug/shapes/navigation/2d/edge_connection_color` | ``Color(1, 0, 1, 1)`` | +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`debug/shapes/navigation/enable_agent_paths` | ``true`` | + | :ref:`bool` | :ref:`debug/shapes/navigation/2d/enable_agent_paths` | ``true`` | +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`debug/shapes/navigation/enable_agent_paths_xray` | ``true`` | + | :ref:`bool` | :ref:`debug/shapes/navigation/2d/enable_edge_connections` | ``true`` | +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`debug/shapes/navigation/enable_edge_connections` | ``true`` | + | :ref:`bool` | :ref:`debug/shapes/navigation/2d/enable_edge_lines` | ``true`` | +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`debug/shapes/navigation/enable_edge_connections_xray` | ``true`` | + | :ref:`bool` | :ref:`debug/shapes/navigation/2d/enable_geometry_face_random_color` | ``true`` | +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`debug/shapes/navigation/enable_edge_lines` | ``true`` | + | :ref:`bool` | :ref:`debug/shapes/navigation/2d/enable_link_connections` | ``true`` | +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`debug/shapes/navigation/enable_edge_lines_xray` | ``true`` | + | :ref:`Color` | :ref:`debug/shapes/navigation/2d/geometry_edge_color` | ``Color(0.5, 1, 1, 1)`` | +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`debug/shapes/navigation/enable_geometry_face_random_color` | ``true`` | + | :ref:`Color` | :ref:`debug/shapes/navigation/2d/geometry_edge_disabled_color` | ``Color(0.5, 0.5, 0.5, 1)`` | +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`debug/shapes/navigation/enable_link_connections` | ``true`` | + | :ref:`Color` | :ref:`debug/shapes/navigation/2d/geometry_face_color` | ``Color(0.5, 1, 1, 0.4)`` | +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`debug/shapes/navigation/enable_link_connections_xray` | ``true`` | + | :ref:`Color` | :ref:`debug/shapes/navigation/2d/geometry_face_disabled_color` | ``Color(0.5, 0.5, 0.5, 0.4)`` | +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ - | :ref:`Color` | :ref:`debug/shapes/navigation/geometry_edge_color` | ``Color(0.5, 1, 1, 1)`` | + | :ref:`Color` | :ref:`debug/shapes/navigation/2d/link_connection_color` | ``Color(1, 0.5, 1, 1)`` | +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ - | :ref:`Color` | :ref:`debug/shapes/navigation/geometry_edge_disabled_color` | ``Color(0.5, 0.5, 0.5, 1)`` | + | :ref:`Color` | :ref:`debug/shapes/navigation/2d/link_connection_disabled_color` | ``Color(0.5, 0.5, 0.5, 1)`` | +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ - | :ref:`Color` | :ref:`debug/shapes/navigation/geometry_face_color` | ``Color(0.5, 1, 1, 0.4)`` | + | :ref:`Color` | :ref:`debug/shapes/navigation/3d/agent_path_color` | ``Color(1, 0, 0, 1)`` | +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ - | :ref:`Color` | :ref:`debug/shapes/navigation/geometry_face_disabled_color` | ``Color(0.5, 0.5, 0.5, 0.4)`` | + | :ref:`float` | :ref:`debug/shapes/navigation/3d/agent_path_point_size` | ``4.0`` | +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ - | :ref:`Color` | :ref:`debug/shapes/navigation/link_connection_color` | ``Color(1, 0.5, 1, 1)`` | + | :ref:`Color` | :ref:`debug/shapes/navigation/3d/edge_connection_color` | ``Color(1, 0, 1, 1)`` | +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ - | :ref:`Color` | :ref:`debug/shapes/navigation/link_connection_disabled_color` | ``Color(0.5, 0.5, 0.5, 1)`` | + | :ref:`bool` | :ref:`debug/shapes/navigation/3d/enable_agent_paths` | ``true`` | + +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`debug/shapes/navigation/3d/enable_agent_paths_xray` | ``true`` | + +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`debug/shapes/navigation/3d/enable_edge_connections` | ``true`` | + +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`debug/shapes/navigation/3d/enable_edge_connections_xray` | ``true`` | + +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`debug/shapes/navigation/3d/enable_edge_lines` | ``true`` | + +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`debug/shapes/navigation/3d/enable_edge_lines_xray` | ``true`` | + +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`debug/shapes/navigation/3d/enable_geometry_face_random_color` | ``true`` | + +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`debug/shapes/navigation/3d/enable_link_connections` | ``true`` | + +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`debug/shapes/navigation/3d/enable_link_connections_xray` | ``true`` | + +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ + | :ref:`Color` | :ref:`debug/shapes/navigation/3d/geometry_edge_color` | ``Color(0.5, 1, 1, 1)`` | + +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ + | :ref:`Color` | :ref:`debug/shapes/navigation/3d/geometry_edge_disabled_color` | ``Color(0.5, 0.5, 0.5, 1)`` | + +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ + | :ref:`Color` | :ref:`debug/shapes/navigation/3d/geometry_face_color` | ``Color(0.5, 1, 1, 0.4)`` | + +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ + | :ref:`Color` | :ref:`debug/shapes/navigation/3d/geometry_face_disabled_color` | ``Color(0.5, 0.5, 0.5, 0.4)`` | + +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ + | :ref:`Color` | :ref:`debug/shapes/navigation/3d/link_connection_color` | ``Color(1, 0.5, 1, 1)`` | + +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ + | :ref:`Color` | :ref:`debug/shapes/navigation/3d/link_connection_disabled_color` | ``Color(0.5, 0.5, 0.5, 1)`` | +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ | :ref:`Color` | :ref:`debug/shapes/paths/geometry_color` | ``Color(0.1, 1, 0.7, 0.4)`` | +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ @@ -393,6 +443,8 @@ Properties +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ | :ref:`String` | :ref:`display/display_server/driver.macos` | | +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`display/display_server/driver.visionos` | | + +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ | :ref:`String` | :ref:`display/display_server/driver.windows` | | +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ | :ref:`String` | :ref:`display/mouse_cursor/custom_image` | ``""`` | @@ -433,6 +485,10 @@ Properties +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`display/window/size/initial_screen` | ``0`` | +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`display/window/size/maximize_disabled` | ``false`` | + +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`display/window/size/minimize_disabled` | ``false`` | + +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`display/window/size/mode` | ``0`` | +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`display/window/size/no_focus` | ``false`` | @@ -483,12 +539,18 @@ Properties +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`editor/movie_writer/mix_rate` | ``48000`` | +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ - | :ref:`float` | :ref:`editor/movie_writer/mjpeg_quality` | ``0.75`` | - +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ | :ref:`String` | :ref:`editor/movie_writer/movie_file` | ``""`` | +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`editor/movie_writer/ogv/audio_quality` | ``0.5`` | + +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`editor/movie_writer/ogv/encoding_speed` | ``4`` | + +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`editor/movie_writer/ogv/keyframe_interval` | ``64`` | + +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`editor/movie_writer/speaker_mode` | ``0`` | +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`editor/movie_writer/video_quality` | ``0.75`` | + +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ | :ref:`String` | :ref:`editor/naming/default_signal_callback_name` | ``"_on_{node_name}_{signal_name}"`` | +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ | :ref:`String` | :ref:`editor/naming/default_signal_callback_to_self_name` | ``"_on_{signal_name}"`` | @@ -527,7 +589,7 @@ Properties +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`gui/common/snap_controls_to_pixels` | ``true`` | +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`gui/common/swap_cancel_ok` | | + | :ref:`int` | :ref:`gui/common/swap_cancel_ok` | ``0`` | +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`gui/common/text_edit_undo_stack_max_size` | ``1024`` | +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ @@ -563,8 +625,12 @@ Properties +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ | :ref:`Dictionary` | :ref:`input/ui_accept` | | +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ + | :ref:`Dictionary` | :ref:`input/ui_accessibility_drag_and_drop` | | + +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ | :ref:`Dictionary` | :ref:`input/ui_cancel` | | +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ + | :ref:`Dictionary` | :ref:`input/ui_colorpicker_delete_preset` | | + +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ | :ref:`Dictionary` | :ref:`input/ui_copy` | | +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ | :ref:`Dictionary` | :ref:`input/ui_cut` | | @@ -579,6 +645,8 @@ Properties +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ | :ref:`Dictionary` | :ref:`input/ui_filedialog_up_one_level` | | +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ + | :ref:`Dictionary` | :ref:`input/ui_focus_mode` | | + +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ | :ref:`Dictionary` | :ref:`input/ui_focus_next` | | +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ | :ref:`Dictionary` | :ref:`input/ui_focus_prev` | | @@ -587,6 +655,14 @@ Properties +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ | :ref:`Dictionary` | :ref:`input/ui_graph_duplicate` | | +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ + | :ref:`Dictionary` | :ref:`input/ui_graph_follow_left` | | + +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ + | :ref:`Dictionary` | :ref:`input/ui_graph_follow_left.macos` | | + +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ + | :ref:`Dictionary` | :ref:`input/ui_graph_follow_right` | | + +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ + | :ref:`Dictionary` | :ref:`input/ui_graph_follow_right.macos` | | + +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ | :ref:`Dictionary` | :ref:`input/ui_home` | | +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ | :ref:`Dictionary` | :ref:`input/ui_left` | | @@ -725,10 +801,14 @@ Properties +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ | :ref:`String` | :ref:`input_devices/pen_tablet/driver.windows` | | +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`input_devices/pointing/android/disable_scroll_deadzone` | ``false`` | + +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`input_devices/pointing/android/enable_long_press_as_right_click` | ``false`` | +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`input_devices/pointing/android/enable_pan_and_scale_gestures` | ``false`` | +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`input_devices/pointing/android/override_volume_buttons` | ``false`` | + +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`input_devices/pointing/android/rotary_input_scroll_axis` | ``1`` | +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`input_devices/pointing/emulate_mouse_from_touch` | ``true`` | @@ -747,6 +827,8 @@ Properties +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`internationalization/locale/include_text_server_data` | ``false`` | +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`internationalization/locale/line_breaking_strictness` | ``0`` | + +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ | :ref:`String` | :ref:`internationalization/locale/test` | ``""`` | +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`internationalization/pseudolocalization/double_vowels` | ``false`` | @@ -1183,6 +1265,8 @@ Properties +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ | :ref:`float` | :ref:`navigation/2d/default_link_connection_radius` | ``4.0`` | +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`navigation/2d/merge_rasterizer_cell_scale` | ``1.0`` | + +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`navigation/2d/use_edge_connections` | ``true`` | +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ | :ref:`float` | :ref:`navigation/3d/default_cell_height` | ``0.25`` | @@ -1213,6 +1297,8 @@ Properties +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`navigation/world/map_use_async_iterations` | ``true`` | +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`navigation/world/region_use_async_iterations` | ``true`` | + +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`network/limits/debugger/max_chars_per_second` | ``32768`` | +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`network/limits/debugger/max_errors_per_second` | ``400`` | @@ -1243,7 +1329,7 @@ Properties +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`physics/2d/run_on_separate_thread` | ``false`` | +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ - | :ref:`float` | :ref:`physics/2d/sleep_threshold_angular` | ``0.139626`` | + | :ref:`float` | :ref:`physics/2d/sleep_threshold_angular` | ``0.13962634`` | +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ | :ref:`float` | :ref:`physics/2d/sleep_threshold_linear` | ``2.0`` | +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ @@ -1271,9 +1357,11 @@ 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.139626`` | + | :ref:`float` | :ref:`physics/3d/sleep_threshold_angular` | ``0.13962634`` | +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ | :ref:`float` | :ref:`physics/3d/sleep_threshold_linear` | ``0.1`` | +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ @@ -1299,13 +1387,13 @@ Properties +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`physics/common/physics_ticks_per_second` | ``60`` | +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ - | :ref:`float` | :ref:`physics/jolt_physics_3d/collisions/active_edge_threshold` | ``0.872665`` | + | :ref:`float` | :ref:`physics/jolt_physics_3d/collisions/active_edge_threshold` | ``0.87266463`` | +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ | :ref:`float` | :ref:`physics/jolt_physics_3d/collisions/collision_margin_fraction` | ``0.08`` | +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`physics/jolt_physics_3d/joints/world_node` | ``0`` | +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ - | :ref:`float` | :ref:`physics/jolt_physics_3d/limits/max_angular_velocity` | ``47.1239`` | + | :ref:`float` | :ref:`physics/jolt_physics_3d/limits/max_angular_velocity` | ``47.12389`` | +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`physics/jolt_physics_3d/limits/max_bodies` | ``10240`` | +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ @@ -1331,11 +1419,9 @@ Properties +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`physics/jolt_physics_3d/simulation/allow_sleep` | ``true`` | +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`physics/jolt_physics_3d/simulation/areas_detect_static_bodies` | ``false`` | - +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ | :ref:`float` | :ref:`physics/jolt_physics_3d/simulation/baumgarte_stabilization_factor` | ``0.2`` | +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ - | :ref:`float` | :ref:`physics/jolt_physics_3d/simulation/body_pair_contact_cache_angle_threshold` | ``0.0349066`` | + | :ref:`float` | :ref:`physics/jolt_physics_3d/simulation/body_pair_contact_cache_angle_threshold` | ``0.034906585`` | +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ | :ref:`float` | :ref:`physics/jolt_physics_3d/simulation/body_pair_contact_cache_distance_threshold` | ``0.001`` | +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ @@ -1385,6 +1471,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`` | @@ -1597,6 +1685,8 @@ Properties +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`rendering/reflections/sky_reflections/texture_array_reflections.mobile` | ``false`` | +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`rendering/reflections/specular_occlusion/enabled` | ``true`` | + +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ | :ref:`String` | :ref:`rendering/renderer/rendering_method` | ``"forward_plus"`` | +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ | :ref:`String` | :ref:`rendering/renderer/rendering_method.mobile` | ``"mobile"`` | @@ -1621,6 +1711,8 @@ Properties +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ | :ref:`String` | :ref:`rendering/rendering_device/driver.macos` | ``"metal"`` | +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`rendering/rendering_device/driver.visionos` | ``"metal"`` | + +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ | :ref:`String` | :ref:`rendering/rendering_device/driver.windows` | ``"vulkan"`` | +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`rendering/rendering_device/fallback_to_d3d12` | ``true`` | @@ -1673,6 +1765,12 @@ Properties +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`rendering/shading/overrides/force_vertex_shading` | ``false`` | +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`rendering/textures/basis_universal/rdo_dict_size` | ``1024`` | + +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`rendering/textures/basis_universal/zstd_supercompression` | ``true`` | + +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`rendering/textures/basis_universal/zstd_supercompression_level` | ``6`` | + +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`rendering/textures/canvas_textures/default_texture_filter` | ``1`` | +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`rendering/textures/canvas_textures/default_texture_repeat` | ``0`` | @@ -1737,6 +1835,8 @@ Properties +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`xr/openxr/extensions/hand_tracking_unobstructed_data_source` | ``false`` | +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`xr/openxr/extensions/render_model` | ``false`` | + +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`xr/openxr/form_factor` | ``"0"`` | +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`xr/openxr/foveation_dynamic` | ``false`` | @@ -1762,43 +1862,45 @@ Methods .. table:: :widths: auto - +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`add_property_info`\ (\ hint\: :ref:`Dictionary`\ ) | - +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`clear`\ (\ name\: :ref:`String`\ ) | - +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Array`\[:ref:`Dictionary`\] | :ref:`get_global_class_list`\ (\ ) | - +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`get_order`\ (\ name\: :ref:`String`\ ) |const| | - +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Variant` | :ref:`get_setting`\ (\ name\: :ref:`String`, default_value\: :ref:`Variant` = null\ ) |const| | - +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Variant` | :ref:`get_setting_with_override`\ (\ name\: :ref:`StringName`\ ) |const| | - +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`String` | :ref:`globalize_path`\ (\ path\: :ref:`String`\ ) |const| | - +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`has_setting`\ (\ name\: :ref:`String`\ ) |const| | - +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`load_resource_pack`\ (\ pack\: :ref:`String`, replace_files\: :ref:`bool` = true, offset\: :ref:`int` = 0\ ) | - +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`String` | :ref:`localize_path`\ (\ path\: :ref:`String`\ ) |const| | - +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Error` | :ref:`save`\ (\ ) | - +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Error` | :ref:`save_custom`\ (\ file\: :ref:`String`\ ) | - +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`set_as_basic`\ (\ name\: :ref:`String`, basic\: :ref:`bool`\ ) | - +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`set_as_internal`\ (\ name\: :ref:`String`, internal\: :ref:`bool`\ ) | - +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`set_initial_value`\ (\ name\: :ref:`String`, value\: :ref:`Variant`\ ) | - +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`set_order`\ (\ name\: :ref:`String`, position\: :ref:`int`\ ) | - +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`set_restart_if_changed`\ (\ name\: :ref:`String`, restart\: :ref:`bool`\ ) | - +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`set_setting`\ (\ name\: :ref:`String`, value\: :ref:`Variant`\ ) | - +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`add_property_info`\ (\ hint\: :ref:`Dictionary`\ ) | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`clear`\ (\ name\: :ref:`String`\ ) | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Array`\[:ref:`Dictionary`\] | :ref:`get_global_class_list`\ (\ ) | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`get_order`\ (\ name\: :ref:`String`\ ) |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Variant` | :ref:`get_setting`\ (\ name\: :ref:`String`, default_value\: :ref:`Variant` = null\ ) |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Variant` | :ref:`get_setting_with_override`\ (\ name\: :ref:`StringName`\ ) |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Variant` | :ref:`get_setting_with_override_and_custom_features`\ (\ name\: :ref:`StringName`, features\: :ref:`PackedStringArray`\ ) |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`globalize_path`\ (\ path\: :ref:`String`\ ) |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`has_setting`\ (\ name\: :ref:`String`\ ) |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`load_resource_pack`\ (\ pack\: :ref:`String`, replace_files\: :ref:`bool` = true, offset\: :ref:`int` = 0\ ) | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`localize_path`\ (\ path\: :ref:`String`\ ) |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Error` | :ref:`save`\ (\ ) | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Error` | :ref:`save_custom`\ (\ file\: :ref:`String`\ ) | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_as_basic`\ (\ name\: :ref:`String`, basic\: :ref:`bool`\ ) | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_as_internal`\ (\ name\: :ref:`String`, internal\: :ref:`bool`\ ) | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_initial_value`\ (\ name\: :ref:`String`, value\: :ref:`Variant`\ ) | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_order`\ (\ name\: :ref:`String`, position\: :ref:`int`\ ) | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_restart_if_changed`\ (\ name\: :ref:`String`, restart\: :ref:`bool`\ ) | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_setting`\ (\ name\: :ref:`String`, value\: :ref:`Variant`\ ) | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ .. rst-class:: classref-section-separator @@ -1826,6 +1928,38 @@ Emitted when any setting is changed, up to once per process frame. Property Descriptions --------------------- +.. _class_ProjectSettings_property_accessibility/general/accessibility_support: + +.. rst-class:: classref-property + +:ref:`int` **accessibility/general/accessibility_support** = ``0`` :ref:`🔗` + +Accessibility support mode: + +- **Auto** (``0``): Accessibility support is enabled, but updates to the accessibility information are processed only if an assistive app (such as a screen reader or a Braille display) is active (default). + +- **Always Active** (``1``): Accessibility support is enabled, and updates to the accessibility information are always processed, regardless of the status of assistive apps. + +- **Disabled** (``2``): Accessibility support is fully disabled. + +\ **Note:** Accessibility debugging tools, such as Accessibility Insights for Windows, Accessibility Inspector (macOS), or AT-SPI Browser (Linux/BSD) do not count as assistive apps. To test your project with these tools, use **Always Active**. + +.. rst-class:: classref-item-separator + +---- + +.. _class_ProjectSettings_property_accessibility/general/updates_per_second: + +.. rst-class:: classref-property + +:ref:`int` **accessibility/general/updates_per_second** = ``60`` :ref:`🔗` + +The number of accessibility information updates per second. + +.. rst-class:: classref-item-separator + +---- + .. _class_ProjectSettings_property_animation/warnings/check_angle_interpolation_type_conflicting: .. rst-class:: classref-property @@ -2206,6 +2340,20 @@ This setting can be overridden using the ``--frame-delay `` command line ar ---- +.. _class_ProjectSettings_property_application/run/load_shell_environment: + +.. rst-class:: classref-property + +:ref:`bool` **application/run/load_shell_environment** = ``false`` :ref:`🔗` + +If ``true``, loads the default shell and copies environment variables set by the shell startup scripts to the app environment. + +\ **Note:** This setting is implemented on macOS for non-sandboxed applications only. + +.. rst-class:: classref-item-separator + +---- + .. _class_ProjectSettings_property_application/run/low_processor_mode: .. rst-class:: classref-property @@ -2354,7 +2502,7 @@ To query the value that is being used at run-time (which may be overridden by co If ``true``, microphone input will be allowed. This requires appropriate permissions to be set when exporting to Android or iOS. -\ **Note:** If the operating system blocks access to audio input devices (due to the user's privacy settings), audio capture will only return silence. On Windows 10 and later, make sure that apps are allowed to access the microphone in the OS' privacy settings. +\ **Note:** If the operating system blocks access to audio input devices (due to the user's privacy settings), audio capture will only return silence. On Windows, make sure that apps are allowed to access the microphone in the OS' privacy settings. .. rst-class:: classref-item-separator @@ -2400,7 +2548,7 @@ Audio output latency may be constrained by the host operating system and audio h Audio output latency can be overridden using the ``--audio-output-latency `` command line argument. -\ **Note:** This setting is ignored on Android, and on all versions of Windows prior to Windows 10. +\ **Note:** This setting is ignored on Android. .. rst-class:: classref-item-separator @@ -2440,7 +2588,7 @@ The default value of ``0.5`` is tuned for headphones. When using speakers, you m The base strength of the panning effect for all :ref:`AudioStreamPlayer3D` nodes. The panning strength can be further scaled on each Node using :ref:`AudioStreamPlayer3D.panning_strength`. A value of ``0.0`` disables stereo panning entirely, leaving only volume attenuation in place. A value of ``1.0`` completely mutes one of the channels if the sound is located exactly to the left (or right) of the listener. -The default value of ``0.5`` is tuned for headphones. When using speakers, you may find lower values to sound better as speakers have a lower stereo separation compared to headphones. +The default value of ``0.5`` is tuned for headphones which means that the opposite side channel goes no lower than 50% of the volume of the nearside channel. You may find that you can set this value higher for speakers to have the same effect since both ears can hear from each speaker. .. rst-class:: classref-item-separator @@ -2512,7 +2660,7 @@ Sets the `AVAudioSessionCategory ` **audio/general/text_to_speech** = ``false`` :ref:`🔗` -If ``true``, text-to-speech support is enabled, see :ref:`DisplayServer.tts_get_voices()` and :ref:`DisplayServer.tts_speak()`. +If ``true``, text-to-speech support is enabled on startup, otherwise it is enabled first time TTS method is used, see :ref:`DisplayServer.tts_get_voices()` and :ref:`DisplayServer.tts_speak()`. \ **Note:** Enabling TTS can cause addition idle CPU usage and interfere with the sleep mode, so consider disabling it if TTS is not used. @@ -2752,20 +2900,6 @@ When set to ``warn`` or ``error``, produces a warning or an error respectively w ---- -.. _class_ProjectSettings_property_debug/gdscript/warnings/constant_used_as_function: - -.. rst-class:: classref-property - -:ref:`int` **debug/gdscript/warnings/constant_used_as_function** = ``1`` :ref:`🔗` - -**Deprecated:** This warning is never produced. Instead, an error is generated if the expression type is known at compile time. - -When set to ``warn`` or ``error``, produces a warning or an error respectively when a constant is used as a function. - -.. rst-class:: classref-item-separator - ----- - .. _class_ProjectSettings_property_debug/gdscript/warnings/deprecated_keyword: .. rst-class:: classref-property @@ -2828,20 +2962,6 @@ If ``true``, scripts in the ``res://addons`` folder will not generate warnings. ---- -.. _class_ProjectSettings_property_debug/gdscript/warnings/function_used_as_property: - -.. rst-class:: classref-property - -:ref:`int` **debug/gdscript/warnings/function_used_as_property** = ``1`` :ref:`🔗` - -**Deprecated:** This warning is never produced. When a function is used as a property, a :ref:`Callable` is returned. - -When set to ``warn`` or ``error``, produces a warning or an error respectively when using a function as if it is a property. - -.. rst-class:: classref-item-separator - ----- - .. _class_ProjectSettings_property_debug/gdscript/warnings/get_node_default_without_onready: .. rst-class:: classref-property @@ -2884,7 +3004,7 @@ When set to ``warn`` or ``error``, produces a warning or an error respectively w :ref:`int` **debug/gdscript/warnings/inferred_declaration** = ``0`` :ref:`🔗` -When set to ``warn`` or ``error``, produces a warning or an error respectively when a variable, constant, or parameter has an implicitly inferred static type. +When set to ``warn`` or ``error``, produces a warning or an error respectively when a variable, constant, or parameter has an implicitly inferred static type. In GDScript, type inference is performed by declaring a variable with ``:=`` instead of ``=`` and leaving out the type specifier. For example, ``var x := 1`` will *infer* the :ref:`int` type, while ``var x: int = 1`` explicitly declares the variable as :ref:`int`. \ **Note:** This warning is recommended *in addition* to :ref:`debug/gdscript/warnings/untyped_declaration` if you want to always specify the type explicitly. Having ``INFERRED_DECLARATION`` warning level higher than ``UNTYPED_DECLARATION`` warning level makes little sense and is not recommended. @@ -2976,20 +3096,6 @@ When set to ``warn`` or ``error``, produces a warning or an error respectively w ---- -.. _class_ProjectSettings_property_debug/gdscript/warnings/property_used_as_function: - -.. rst-class:: classref-property - -:ref:`int` **debug/gdscript/warnings/property_used_as_function** = ``1`` :ref:`🔗` - -**Deprecated:** This warning is never produced. Instead, an error is generated if the expression type is known at compile time. - -When set to ``warn`` or ``error``, produces a warning or an error respectively when using a property as if it is a function. - -.. rst-class:: classref-item-separator - ----- - .. _class_ProjectSettings_property_debug/gdscript/warnings/redundant_await: .. rst-class:: classref-property @@ -3316,6 +3422,36 @@ Editor-only override for :ref:`debug/settings/crash_handler/message` **debug/settings/gdscript/always_track_call_stacks** = ``false`` :ref:`🔗` + +Whether GDScript call stacks will be tracked in release builds, thus allowing :ref:`Engine.capture_script_backtraces()` to function. + +\ **Note:** This setting has no effect on editor builds or debug builds, where GDScript call stacks are tracked regardless. + +.. rst-class:: classref-item-separator + +---- + +.. _class_ProjectSettings_property_debug/settings/gdscript/always_track_local_variables: + +.. rst-class:: classref-property + +:ref:`bool` **debug/settings/gdscript/always_track_local_variables** = ``false`` :ref:`🔗` + +Whether GDScript local variables will be tracked in all builds, including export builds, thus allowing :ref:`Engine.capture_script_backtraces()` to capture them when enabling its ``include_variables`` parameter. + +Enabling this comes at the cost of roughly 50 bytes of memory per local variable, for every compiled class in the entire project, so can be several MiB in larger projects. + +\ **Note:** This setting has no effect when running the game from the editor, where GDScript local variables are tracked regardless. + +.. rst-class:: classref-item-separator + +---- + .. _class_ProjectSettings_property_debug/settings/gdscript/max_call_stack: .. rst-class:: classref-property @@ -3546,11 +3682,11 @@ When set to ``true``, produces a warning when a varying is never used. ---- -.. _class_ProjectSettings_property_debug/shapes/avoidance/agents_radius_color: +.. _class_ProjectSettings_property_debug/shapes/avoidance/2d/agents_radius_color: .. rst-class:: classref-property -:ref:`Color` **debug/shapes/avoidance/agents_radius_color** = ``Color(1, 1, 0, 0.25)`` :ref:`🔗` +:ref:`Color` **debug/shapes/avoidance/2d/agents_radius_color** = ``Color(1, 1, 0, 0.25)`` :ref:`🔗` Color of the avoidance agents radius, visible when "Visible Avoidance" is enabled in the Debug menu. @@ -3558,11 +3694,11 @@ Color of the avoidance agents radius, visible when "Visible Avoidance" is enable ---- -.. _class_ProjectSettings_property_debug/shapes/avoidance/enable_agents_radius: +.. _class_ProjectSettings_property_debug/shapes/avoidance/2d/enable_agents_radius: .. rst-class:: classref-property -:ref:`bool` **debug/shapes/avoidance/enable_agents_radius** = ``true`` :ref:`🔗` +:ref:`bool` **debug/shapes/avoidance/2d/enable_agents_radius** = ``true`` :ref:`🔗` If enabled, displays avoidance agents radius when "Visible Avoidance" is enabled in the Debug menu. @@ -3570,11 +3706,11 @@ If enabled, displays avoidance agents radius when "Visible Avoidance" is enabled ---- -.. _class_ProjectSettings_property_debug/shapes/avoidance/enable_obstacles_radius: +.. _class_ProjectSettings_property_debug/shapes/avoidance/2d/enable_obstacles_radius: .. rst-class:: classref-property -:ref:`bool` **debug/shapes/avoidance/enable_obstacles_radius** = ``true`` :ref:`🔗` +:ref:`bool` **debug/shapes/avoidance/2d/enable_obstacles_radius** = ``true`` :ref:`🔗` If enabled, displays avoidance obstacles radius when "Visible Avoidance" is enabled in the Debug menu. @@ -3582,11 +3718,11 @@ If enabled, displays avoidance obstacles radius when "Visible Avoidance" is enab ---- -.. _class_ProjectSettings_property_debug/shapes/avoidance/enable_obstacles_static: +.. _class_ProjectSettings_property_debug/shapes/avoidance/2d/enable_obstacles_static: .. rst-class:: classref-property -:ref:`bool` **debug/shapes/avoidance/enable_obstacles_static** = ``true`` :ref:`🔗` +:ref:`bool` **debug/shapes/avoidance/2d/enable_obstacles_static** = ``true`` :ref:`🔗` If enabled, displays static avoidance obstacles when "Visible Avoidance" is enabled in the Debug menu. @@ -3594,11 +3730,11 @@ If enabled, displays static avoidance obstacles when "Visible Avoidance" is enab ---- -.. _class_ProjectSettings_property_debug/shapes/avoidance/obstacles_radius_color: +.. _class_ProjectSettings_property_debug/shapes/avoidance/2d/obstacles_radius_color: .. rst-class:: classref-property -:ref:`Color` **debug/shapes/avoidance/obstacles_radius_color** = ``Color(1, 0.5, 0, 0.25)`` :ref:`🔗` +:ref:`Color` **debug/shapes/avoidance/2d/obstacles_radius_color** = ``Color(1, 0.5, 0, 0.25)`` :ref:`🔗` Color of the avoidance obstacles radius, visible when "Visible Avoidance" is enabled in the Debug menu. @@ -3606,11 +3742,11 @@ Color of the avoidance obstacles radius, visible when "Visible Avoidance" is ena ---- -.. _class_ProjectSettings_property_debug/shapes/avoidance/obstacles_static_edge_pushin_color: +.. _class_ProjectSettings_property_debug/shapes/avoidance/2d/obstacles_static_edge_pushin_color: .. rst-class:: classref-property -:ref:`Color` **debug/shapes/avoidance/obstacles_static_edge_pushin_color** = ``Color(1, 0, 0, 1)`` :ref:`🔗` +:ref:`Color` **debug/shapes/avoidance/2d/obstacles_static_edge_pushin_color** = ``Color(1, 0, 0, 1)`` :ref:`🔗` Color of the static avoidance obstacles edges when their vertices are winded in order to push agents in, visible when "Visible Avoidance" is enabled in the Debug menu. @@ -3618,11 +3754,11 @@ Color of the static avoidance obstacles edges when their vertices are winded in ---- -.. _class_ProjectSettings_property_debug/shapes/avoidance/obstacles_static_edge_pushout_color: +.. _class_ProjectSettings_property_debug/shapes/avoidance/2d/obstacles_static_edge_pushout_color: .. rst-class:: classref-property -:ref:`Color` **debug/shapes/avoidance/obstacles_static_edge_pushout_color** = ``Color(1, 1, 0, 1)`` :ref:`🔗` +:ref:`Color` **debug/shapes/avoidance/2d/obstacles_static_edge_pushout_color** = ``Color(1, 1, 0, 1)`` :ref:`🔗` Color of the static avoidance obstacles edges when their vertices are winded in order to push agents out, visible when "Visible Avoidance" is enabled in the Debug menu. @@ -3630,11 +3766,11 @@ Color of the static avoidance obstacles edges when their vertices are winded in ---- -.. _class_ProjectSettings_property_debug/shapes/avoidance/obstacles_static_face_pushin_color: +.. _class_ProjectSettings_property_debug/shapes/avoidance/2d/obstacles_static_face_pushin_color: .. rst-class:: classref-property -:ref:`Color` **debug/shapes/avoidance/obstacles_static_face_pushin_color** = ``Color(1, 0, 0, 0)`` :ref:`🔗` +:ref:`Color` **debug/shapes/avoidance/2d/obstacles_static_face_pushin_color** = ``Color(1, 0, 0, 0)`` :ref:`🔗` Color of the static avoidance obstacles faces when their vertices are winded in order to push agents in, visible when "Visible Avoidance" is enabled in the Debug menu. @@ -3642,11 +3778,119 @@ Color of the static avoidance obstacles faces when their vertices are winded in ---- -.. _class_ProjectSettings_property_debug/shapes/avoidance/obstacles_static_face_pushout_color: +.. _class_ProjectSettings_property_debug/shapes/avoidance/2d/obstacles_static_face_pushout_color: .. rst-class:: classref-property -:ref:`Color` **debug/shapes/avoidance/obstacles_static_face_pushout_color** = ``Color(1, 1, 0, 0.5)`` :ref:`🔗` +:ref:`Color` **debug/shapes/avoidance/2d/obstacles_static_face_pushout_color** = ``Color(1, 1, 0, 0.5)`` :ref:`🔗` + +Color of the static avoidance obstacles faces when their vertices are winded in order to push agents out, visible when "Visible Avoidance" is enabled in the Debug menu. + +.. rst-class:: classref-item-separator + +---- + +.. _class_ProjectSettings_property_debug/shapes/avoidance/3d/agents_radius_color: + +.. rst-class:: classref-property + +:ref:`Color` **debug/shapes/avoidance/3d/agents_radius_color** = ``Color(1, 1, 0, 0.25)`` :ref:`🔗` + +Color of the avoidance agents radius, visible when "Visible Avoidance" is enabled in the Debug menu. + +.. rst-class:: classref-item-separator + +---- + +.. _class_ProjectSettings_property_debug/shapes/avoidance/3d/enable_agents_radius: + +.. rst-class:: classref-property + +:ref:`bool` **debug/shapes/avoidance/3d/enable_agents_radius** = ``true`` :ref:`🔗` + +If enabled, displays avoidance agents radius when "Visible Avoidance" is enabled in the Debug menu. + +.. rst-class:: classref-item-separator + +---- + +.. _class_ProjectSettings_property_debug/shapes/avoidance/3d/enable_obstacles_radius: + +.. rst-class:: classref-property + +:ref:`bool` **debug/shapes/avoidance/3d/enable_obstacles_radius** = ``true`` :ref:`🔗` + +If enabled, displays avoidance obstacles radius when "Visible Avoidance" is enabled in the Debug menu. + +.. rst-class:: classref-item-separator + +---- + +.. _class_ProjectSettings_property_debug/shapes/avoidance/3d/enable_obstacles_static: + +.. rst-class:: classref-property + +:ref:`bool` **debug/shapes/avoidance/3d/enable_obstacles_static** = ``true`` :ref:`🔗` + +If enabled, displays static avoidance obstacles when "Visible Avoidance" is enabled in the Debug menu. + +.. rst-class:: classref-item-separator + +---- + +.. _class_ProjectSettings_property_debug/shapes/avoidance/3d/obstacles_radius_color: + +.. rst-class:: classref-property + +:ref:`Color` **debug/shapes/avoidance/3d/obstacles_radius_color** = ``Color(1, 0.5, 0, 0.25)`` :ref:`🔗` + +Color of the avoidance obstacles radius, visible when "Visible Avoidance" is enabled in the Debug menu. + +.. rst-class:: classref-item-separator + +---- + +.. _class_ProjectSettings_property_debug/shapes/avoidance/3d/obstacles_static_edge_pushin_color: + +.. rst-class:: classref-property + +:ref:`Color` **debug/shapes/avoidance/3d/obstacles_static_edge_pushin_color** = ``Color(1, 0, 0, 1)`` :ref:`🔗` + +Color of the static avoidance obstacles edges when their vertices are winded in order to push agents in, visible when "Visible Avoidance" is enabled in the Debug menu. + +.. rst-class:: classref-item-separator + +---- + +.. _class_ProjectSettings_property_debug/shapes/avoidance/3d/obstacles_static_edge_pushout_color: + +.. rst-class:: classref-property + +:ref:`Color` **debug/shapes/avoidance/3d/obstacles_static_edge_pushout_color** = ``Color(1, 1, 0, 1)`` :ref:`🔗` + +Color of the static avoidance obstacles edges when their vertices are winded in order to push agents out, visible when "Visible Avoidance" is enabled in the Debug menu. + +.. rst-class:: classref-item-separator + +---- + +.. _class_ProjectSettings_property_debug/shapes/avoidance/3d/obstacles_static_face_pushin_color: + +.. rst-class:: classref-property + +:ref:`Color` **debug/shapes/avoidance/3d/obstacles_static_face_pushin_color** = ``Color(1, 0, 0, 0)`` :ref:`🔗` + +Color of the static avoidance obstacles faces when their vertices are winded in order to push agents in, visible when "Visible Avoidance" is enabled in the Debug menu. + +.. rst-class:: classref-item-separator + +---- + +.. _class_ProjectSettings_property_debug/shapes/avoidance/3d/obstacles_static_face_pushout_color: + +.. rst-class:: classref-property + +:ref:`Color` **debug/shapes/avoidance/3d/obstacles_static_face_pushout_color** = ``Color(1, 1, 0, 0.5)`` :ref:`🔗` Color of the static avoidance obstacles faces when their vertices are winded in order to push agents out, visible when "Visible Avoidance" is enabled in the Debug menu. @@ -3702,11 +3946,11 @@ Color of the collision shapes, visible when "Visible Collision Shapes" is enable ---- -.. _class_ProjectSettings_property_debug/shapes/navigation/agent_path_color: +.. _class_ProjectSettings_property_debug/shapes/navigation/2d/agent_path_color: .. rst-class:: classref-property -:ref:`Color` **debug/shapes/navigation/agent_path_color** = ``Color(1, 0, 0, 1)`` :ref:`🔗` +:ref:`Color` **debug/shapes/navigation/2d/agent_path_color** = ``Color(1, 0, 0, 1)`` :ref:`🔗` Color to display enabled navigation agent paths when an agent has debug enabled. @@ -3714,11 +3958,11 @@ Color to display enabled navigation agent paths when an agent has debug enabled. ---- -.. _class_ProjectSettings_property_debug/shapes/navigation/agent_path_point_size: +.. _class_ProjectSettings_property_debug/shapes/navigation/2d/agent_path_point_size: .. rst-class:: classref-property -:ref:`float` **debug/shapes/navigation/agent_path_point_size** = ``4.0`` :ref:`🔗` +:ref:`float` **debug/shapes/navigation/2d/agent_path_point_size** = ``4.0`` :ref:`🔗` Rasterized size (pixel) used to render navigation agent path points when an agent has debug enabled. @@ -3726,11 +3970,11 @@ Rasterized size (pixel) used to render navigation agent path points when an agen ---- -.. _class_ProjectSettings_property_debug/shapes/navigation/edge_connection_color: +.. _class_ProjectSettings_property_debug/shapes/navigation/2d/edge_connection_color: .. rst-class:: classref-property -:ref:`Color` **debug/shapes/navigation/edge_connection_color** = ``Color(1, 0, 1, 1)`` :ref:`🔗` +:ref:`Color` **debug/shapes/navigation/2d/edge_connection_color** = ``Color(1, 0, 1, 1)`` :ref:`🔗` Color to display edge connections between navigation regions, visible when "Visible Navigation" is enabled in the Debug menu. @@ -3738,11 +3982,11 @@ Color to display edge connections between navigation regions, visible when "Visi ---- -.. _class_ProjectSettings_property_debug/shapes/navigation/enable_agent_paths: +.. _class_ProjectSettings_property_debug/shapes/navigation/2d/enable_agent_paths: .. rst-class:: classref-property -:ref:`bool` **debug/shapes/navigation/enable_agent_paths** = ``true`` :ref:`🔗` +:ref:`bool` **debug/shapes/navigation/2d/enable_agent_paths** = ``true`` :ref:`🔗` If enabled, displays navigation agent paths when an agent has debug enabled. @@ -3750,23 +3994,11 @@ If enabled, displays navigation agent paths when an agent has debug enabled. ---- -.. _class_ProjectSettings_property_debug/shapes/navigation/enable_agent_paths_xray: +.. _class_ProjectSettings_property_debug/shapes/navigation/2d/enable_edge_connections: .. rst-class:: classref-property -:ref:`bool` **debug/shapes/navigation/enable_agent_paths_xray** = ``true`` :ref:`🔗` - -If enabled, displays navigation agent paths through geometry when an agent has debug enabled. - -.. rst-class:: classref-item-separator - ----- - -.. _class_ProjectSettings_property_debug/shapes/navigation/enable_edge_connections: - -.. rst-class:: classref-property - -:ref:`bool` **debug/shapes/navigation/enable_edge_connections** = ``true`` :ref:`🔗` +:ref:`bool` **debug/shapes/navigation/2d/enable_edge_connections** = ``true`` :ref:`🔗` If enabled, displays edge connections between navigation regions when "Visible Navigation" is enabled in the Debug menu. @@ -3774,23 +4006,11 @@ If enabled, displays edge connections between navigation regions when "Visible N ---- -.. _class_ProjectSettings_property_debug/shapes/navigation/enable_edge_connections_xray: +.. _class_ProjectSettings_property_debug/shapes/navigation/2d/enable_edge_lines: .. rst-class:: classref-property -:ref:`bool` **debug/shapes/navigation/enable_edge_connections_xray** = ``true`` :ref:`🔗` - -If enabled, displays edge connections between navigation regions through geometry when "Visible Navigation" is enabled in the Debug menu. - -.. rst-class:: classref-item-separator - ----- - -.. _class_ProjectSettings_property_debug/shapes/navigation/enable_edge_lines: - -.. rst-class:: classref-property - -:ref:`bool` **debug/shapes/navigation/enable_edge_lines** = ``true`` :ref:`🔗` +:ref:`bool` **debug/shapes/navigation/2d/enable_edge_lines** = ``true`` :ref:`🔗` If enabled, displays navigation mesh polygon edges when "Visible Navigation" is enabled in the Debug menu. @@ -3798,23 +4018,11 @@ If enabled, displays navigation mesh polygon edges when "Visible Navigation" is ---- -.. _class_ProjectSettings_property_debug/shapes/navigation/enable_edge_lines_xray: +.. _class_ProjectSettings_property_debug/shapes/navigation/2d/enable_geometry_face_random_color: .. rst-class:: classref-property -:ref:`bool` **debug/shapes/navigation/enable_edge_lines_xray** = ``true`` :ref:`🔗` - -If enabled, displays navigation mesh polygon edges through geometry when "Visible Navigation" is enabled in the Debug menu. - -.. rst-class:: classref-item-separator - ----- - -.. _class_ProjectSettings_property_debug/shapes/navigation/enable_geometry_face_random_color: - -.. rst-class:: classref-property - -:ref:`bool` **debug/shapes/navigation/enable_geometry_face_random_color** = ``true`` :ref:`🔗` +:ref:`bool` **debug/shapes/navigation/2d/enable_geometry_face_random_color** = ``true`` :ref:`🔗` If enabled, colorizes each navigation mesh polygon face with a random color when "Visible Navigation" is enabled in the Debug menu. @@ -3822,11 +4030,11 @@ If enabled, colorizes each navigation mesh polygon face with a random color when ---- -.. _class_ProjectSettings_property_debug/shapes/navigation/enable_link_connections: +.. _class_ProjectSettings_property_debug/shapes/navigation/2d/enable_link_connections: .. rst-class:: classref-property -:ref:`bool` **debug/shapes/navigation/enable_link_connections** = ``true`` :ref:`🔗` +:ref:`bool` **debug/shapes/navigation/2d/enable_link_connections** = ``true`` :ref:`🔗` If enabled, displays navigation link connections when "Visible Navigation" is enabled in the Debug menu. @@ -3834,23 +4042,11 @@ If enabled, displays navigation link connections when "Visible Navigation" is en ---- -.. _class_ProjectSettings_property_debug/shapes/navigation/enable_link_connections_xray: +.. _class_ProjectSettings_property_debug/shapes/navigation/2d/geometry_edge_color: .. rst-class:: classref-property -:ref:`bool` **debug/shapes/navigation/enable_link_connections_xray** = ``true`` :ref:`🔗` - -If enabled, displays navigation link connections through geometry when "Visible Navigation" is enabled in the Debug menu. - -.. rst-class:: classref-item-separator - ----- - -.. _class_ProjectSettings_property_debug/shapes/navigation/geometry_edge_color: - -.. rst-class:: classref-property - -:ref:`Color` **debug/shapes/navigation/geometry_edge_color** = ``Color(0.5, 1, 1, 1)`` :ref:`🔗` +:ref:`Color` **debug/shapes/navigation/2d/geometry_edge_color** = ``Color(0.5, 1, 1, 1)`` :ref:`🔗` Color to display enabled navigation mesh polygon edges, visible when "Visible Navigation" is enabled in the Debug menu. @@ -3858,11 +4054,11 @@ Color to display enabled navigation mesh polygon edges, visible when "Visible Na ---- -.. _class_ProjectSettings_property_debug/shapes/navigation/geometry_edge_disabled_color: +.. _class_ProjectSettings_property_debug/shapes/navigation/2d/geometry_edge_disabled_color: .. rst-class:: classref-property -:ref:`Color` **debug/shapes/navigation/geometry_edge_disabled_color** = ``Color(0.5, 0.5, 0.5, 1)`` :ref:`🔗` +:ref:`Color` **debug/shapes/navigation/2d/geometry_edge_disabled_color** = ``Color(0.5, 0.5, 0.5, 1)`` :ref:`🔗` Color to display disabled navigation mesh polygon edges, visible when "Visible Navigation" is enabled in the Debug menu. @@ -3870,11 +4066,11 @@ Color to display disabled navigation mesh polygon edges, visible when "Visible N ---- -.. _class_ProjectSettings_property_debug/shapes/navigation/geometry_face_color: +.. _class_ProjectSettings_property_debug/shapes/navigation/2d/geometry_face_color: .. rst-class:: classref-property -:ref:`Color` **debug/shapes/navigation/geometry_face_color** = ``Color(0.5, 1, 1, 0.4)`` :ref:`🔗` +:ref:`Color` **debug/shapes/navigation/2d/geometry_face_color** = ``Color(0.5, 1, 1, 0.4)`` :ref:`🔗` Color to display enabled navigation mesh polygon faces, visible when "Visible Navigation" is enabled in the Debug menu. @@ -3882,11 +4078,11 @@ Color to display enabled navigation mesh polygon faces, visible when "Visible Na ---- -.. _class_ProjectSettings_property_debug/shapes/navigation/geometry_face_disabled_color: +.. _class_ProjectSettings_property_debug/shapes/navigation/2d/geometry_face_disabled_color: .. rst-class:: classref-property -:ref:`Color` **debug/shapes/navigation/geometry_face_disabled_color** = ``Color(0.5, 0.5, 0.5, 0.4)`` :ref:`🔗` +:ref:`Color` **debug/shapes/navigation/2d/geometry_face_disabled_color** = ``Color(0.5, 0.5, 0.5, 0.4)`` :ref:`🔗` Color to display disabled navigation mesh polygon faces, visible when "Visible Navigation" is enabled in the Debug menu. @@ -3894,11 +4090,11 @@ Color to display disabled navigation mesh polygon faces, visible when "Visible N ---- -.. _class_ProjectSettings_property_debug/shapes/navigation/link_connection_color: +.. _class_ProjectSettings_property_debug/shapes/navigation/2d/link_connection_color: .. rst-class:: classref-property -:ref:`Color` **debug/shapes/navigation/link_connection_color** = ``Color(1, 0.5, 1, 1)`` :ref:`🔗` +:ref:`Color` **debug/shapes/navigation/2d/link_connection_color** = ``Color(1, 0.5, 1, 1)`` :ref:`🔗` Color to use to display navigation link connections, visible when "Visible Navigation" is enabled in the Debug menu. @@ -3906,11 +4102,227 @@ Color to use to display navigation link connections, visible when "Visible Navig ---- -.. _class_ProjectSettings_property_debug/shapes/navigation/link_connection_disabled_color: +.. _class_ProjectSettings_property_debug/shapes/navigation/2d/link_connection_disabled_color: .. rst-class:: classref-property -:ref:`Color` **debug/shapes/navigation/link_connection_disabled_color** = ``Color(0.5, 0.5, 0.5, 1)`` :ref:`🔗` +:ref:`Color` **debug/shapes/navigation/2d/link_connection_disabled_color** = ``Color(0.5, 0.5, 0.5, 1)`` :ref:`🔗` + +Color to use to display disabled navigation link connections, visible when "Visible Navigation" is enabled in the Debug menu. + +.. rst-class:: classref-item-separator + +---- + +.. _class_ProjectSettings_property_debug/shapes/navigation/3d/agent_path_color: + +.. rst-class:: classref-property + +:ref:`Color` **debug/shapes/navigation/3d/agent_path_color** = ``Color(1, 0, 0, 1)`` :ref:`🔗` + +Color to display enabled navigation agent paths when an agent has debug enabled. + +.. rst-class:: classref-item-separator + +---- + +.. _class_ProjectSettings_property_debug/shapes/navigation/3d/agent_path_point_size: + +.. rst-class:: classref-property + +:ref:`float` **debug/shapes/navigation/3d/agent_path_point_size** = ``4.0`` :ref:`🔗` + +Rasterized size (pixel) used to render navigation agent path points when an agent has debug enabled. + +.. rst-class:: classref-item-separator + +---- + +.. _class_ProjectSettings_property_debug/shapes/navigation/3d/edge_connection_color: + +.. rst-class:: classref-property + +:ref:`Color` **debug/shapes/navigation/3d/edge_connection_color** = ``Color(1, 0, 1, 1)`` :ref:`🔗` + +Color to display edge connections between navigation regions, visible when "Visible Navigation" is enabled in the Debug menu. + +.. rst-class:: classref-item-separator + +---- + +.. _class_ProjectSettings_property_debug/shapes/navigation/3d/enable_agent_paths: + +.. rst-class:: classref-property + +:ref:`bool` **debug/shapes/navigation/3d/enable_agent_paths** = ``true`` :ref:`🔗` + +If enabled, displays navigation agent paths when an agent has debug enabled. + +.. rst-class:: classref-item-separator + +---- + +.. _class_ProjectSettings_property_debug/shapes/navigation/3d/enable_agent_paths_xray: + +.. rst-class:: classref-property + +:ref:`bool` **debug/shapes/navigation/3d/enable_agent_paths_xray** = ``true`` :ref:`🔗` + +If enabled, displays navigation agent paths through geometry when an agent has debug enabled. + +.. rst-class:: classref-item-separator + +---- + +.. _class_ProjectSettings_property_debug/shapes/navigation/3d/enable_edge_connections: + +.. rst-class:: classref-property + +:ref:`bool` **debug/shapes/navigation/3d/enable_edge_connections** = ``true`` :ref:`🔗` + +If enabled, displays edge connections between navigation regions when "Visible Navigation" is enabled in the Debug menu. + +.. rst-class:: classref-item-separator + +---- + +.. _class_ProjectSettings_property_debug/shapes/navigation/3d/enable_edge_connections_xray: + +.. rst-class:: classref-property + +:ref:`bool` **debug/shapes/navigation/3d/enable_edge_connections_xray** = ``true`` :ref:`🔗` + +If enabled, displays edge connections between navigation regions through geometry when "Visible Navigation" is enabled in the Debug menu. + +.. rst-class:: classref-item-separator + +---- + +.. _class_ProjectSettings_property_debug/shapes/navigation/3d/enable_edge_lines: + +.. rst-class:: classref-property + +:ref:`bool` **debug/shapes/navigation/3d/enable_edge_lines** = ``true`` :ref:`🔗` + +If enabled, displays navigation mesh polygon edges when "Visible Navigation" is enabled in the Debug menu. + +.. rst-class:: classref-item-separator + +---- + +.. _class_ProjectSettings_property_debug/shapes/navigation/3d/enable_edge_lines_xray: + +.. rst-class:: classref-property + +:ref:`bool` **debug/shapes/navigation/3d/enable_edge_lines_xray** = ``true`` :ref:`🔗` + +If enabled, displays navigation mesh polygon edges through geometry when "Visible Navigation" is enabled in the Debug menu. + +.. rst-class:: classref-item-separator + +---- + +.. _class_ProjectSettings_property_debug/shapes/navigation/3d/enable_geometry_face_random_color: + +.. rst-class:: classref-property + +:ref:`bool` **debug/shapes/navigation/3d/enable_geometry_face_random_color** = ``true`` :ref:`🔗` + +If enabled, colorizes each navigation mesh polygon face with a random color when "Visible Navigation" is enabled in the Debug menu. + +.. rst-class:: classref-item-separator + +---- + +.. _class_ProjectSettings_property_debug/shapes/navigation/3d/enable_link_connections: + +.. rst-class:: classref-property + +:ref:`bool` **debug/shapes/navigation/3d/enable_link_connections** = ``true`` :ref:`🔗` + +If enabled, displays navigation link connections when "Visible Navigation" is enabled in the Debug menu. + +.. rst-class:: classref-item-separator + +---- + +.. _class_ProjectSettings_property_debug/shapes/navigation/3d/enable_link_connections_xray: + +.. rst-class:: classref-property + +:ref:`bool` **debug/shapes/navigation/3d/enable_link_connections_xray** = ``true`` :ref:`🔗` + +If enabled, displays navigation link connections through geometry when "Visible Navigation" is enabled in the Debug menu. + +.. rst-class:: classref-item-separator + +---- + +.. _class_ProjectSettings_property_debug/shapes/navigation/3d/geometry_edge_color: + +.. rst-class:: classref-property + +:ref:`Color` **debug/shapes/navigation/3d/geometry_edge_color** = ``Color(0.5, 1, 1, 1)`` :ref:`🔗` + +Color to display enabled navigation mesh polygon edges, visible when "Visible Navigation" is enabled in the Debug menu. + +.. rst-class:: classref-item-separator + +---- + +.. _class_ProjectSettings_property_debug/shapes/navigation/3d/geometry_edge_disabled_color: + +.. rst-class:: classref-property + +:ref:`Color` **debug/shapes/navigation/3d/geometry_edge_disabled_color** = ``Color(0.5, 0.5, 0.5, 1)`` :ref:`🔗` + +Color to display disabled navigation mesh polygon edges, visible when "Visible Navigation" is enabled in the Debug menu. + +.. rst-class:: classref-item-separator + +---- + +.. _class_ProjectSettings_property_debug/shapes/navigation/3d/geometry_face_color: + +.. rst-class:: classref-property + +:ref:`Color` **debug/shapes/navigation/3d/geometry_face_color** = ``Color(0.5, 1, 1, 0.4)`` :ref:`🔗` + +Color to display enabled navigation mesh polygon faces, visible when "Visible Navigation" is enabled in the Debug menu. + +.. rst-class:: classref-item-separator + +---- + +.. _class_ProjectSettings_property_debug/shapes/navigation/3d/geometry_face_disabled_color: + +.. rst-class:: classref-property + +:ref:`Color` **debug/shapes/navigation/3d/geometry_face_disabled_color** = ``Color(0.5, 0.5, 0.5, 0.4)`` :ref:`🔗` + +Color to display disabled navigation mesh polygon faces, visible when "Visible Navigation" is enabled in the Debug menu. + +.. rst-class:: classref-item-separator + +---- + +.. _class_ProjectSettings_property_debug/shapes/navigation/3d/link_connection_color: + +.. rst-class:: classref-property + +:ref:`Color` **debug/shapes/navigation/3d/link_connection_color** = ``Color(1, 0.5, 1, 1)`` :ref:`🔗` + +Color to use to display navigation link connections, visible when "Visible Navigation" is enabled in the Debug menu. + +.. rst-class:: classref-item-separator + +---- + +.. _class_ProjectSettings_property_debug/shapes/navigation/3d/link_connection_disabled_color: + +.. rst-class:: classref-property + +:ref:`Color` **debug/shapes/navigation/3d/link_connection_disabled_color** = ``Color(0.5, 0.5, 0.5, 1)`` :ref:`🔗` Color to use to display disabled navigation link connections, visible when "Visible Navigation" is enabled in the Debug menu. @@ -4002,6 +4414,18 @@ MacOS override for :ref:`display/display_server/driver` **display/display_server/driver.visionos** :ref:`🔗` + +visionOS override for :ref:`display/display_server/driver`. + +.. rst-class:: classref-item-separator + +---- + .. _class_ProjectSettings_property_display/display_server/driver.windows: .. rst-class:: classref-property @@ -4098,13 +4522,13 @@ Enable Swappy for stable frame pacing on Android. Highly recommended. Swappy mode to use. The options are: -- pipeline_forced_on: Try to honor :ref:`Engine.max_fps`. Pipelining is always on. This is the same behavior as Desktop PC. +- ``pipeline_forced_on``: Try to honor :ref:`Engine.max_fps`. Pipelining is always on. This is the same behavior as a desktop PC. -- auto_fps_pipeline_forced_on: Autocalculate max fps. Actual max_fps will be between 0 and :ref:`Engine.max_fps`. While this sounds convenient, beware that Swappy will often downgrade max fps until it finds something that can be met and sustained. That means if your game runs between 40fps and 60fps on a 60hz screen, after some time Swappy will downgrade max fps so that the game renders at perfect 30fps. +- ``auto_fps_pipeline_forced_on``: Calculate the max FPS automatically. The actual max FPS will be between ``0`` and :ref:`Engine.max_fps`. While this sounds convenient, beware that Swappy will often downgrade the max FPS until it finds a value that can be maintained. That means, if your game runs between 40fps and 60fps on a 60hz screen, after some time Swappy will downgrade the max FPS so that the game renders at a perfect 30fps. -- auto_fps_auto_pipeline: Same as auto_fps_pipeline_forced_on, but if Swappy detects that rendering is very fast (e.g. it takes < 8ms to render on a 60hz screen) Swappy will disable pipelining to minimize input latency. This is the default. +- ``auto_fps_auto_pipeline``: Same as ``auto_fps_pipeline_forced_on``, but if Swappy detects that rendering is very fast (for example it takes less than 8ms to render on a 60hz screen), Swappy will disable pipelining to minimize input latency. This is the default. -\ **Note:** If :ref:`Engine.max_fps` is 0, actual max_fps will considered as to be the screen's refresh rate (often 60hz, 90hz or 120hz depending on device model and OS settings). +\ **Note:** If :ref:`Engine.max_fps` is ``0``, the actual max FPS will be considered to be the screen's refresh rate (often 60hz, 90hz, or 120hz, depending on device model and OS settings). .. rst-class:: classref-item-separator @@ -4276,6 +4700,30 @@ Main window initial screen, this setting is used only if :ref:`display/window/si ---- +.. _class_ProjectSettings_property_display/window/size/maximize_disabled: + +.. rst-class:: classref-property + +:ref:`bool` **display/window/size/maximize_disabled** = ``false`` :ref:`🔗` + +If ``true``, the main window's maximize button is disabled. + +.. rst-class:: classref-item-separator + +---- + +.. _class_ProjectSettings_property_display/window/size/minimize_disabled: + +.. rst-class:: classref-property + +:ref:`bool` **display/window/size/minimize_disabled** = ``false`` :ref:`🔗` + +If ``true``, the main window's minimize button is disabled. + +.. rst-class:: classref-item-separator + +---- + .. _class_ProjectSettings_property_display/window/size/mode: .. rst-class:: classref-property @@ -4346,6 +4794,8 @@ If ``true``, enables a window manager hint that the main window background *can* \ **Note:** This setting has no effect if :ref:`display/window/per_pixel_transparency/allowed` is set to ``false``. +\ **Note:** This setting has no effect on Android as transparency is controlled only via :ref:`display/window/per_pixel_transparency/allowed`. + .. rst-class:: classref-item-separator ---- @@ -4410,7 +4860,7 @@ On desktop platforms, overrides the game's initial window width. See also :ref:` .. container:: contribute - There is currently no description for this property. Please help us by :ref:`contributing one `! + There is currently no description for this property. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -4576,7 +5026,7 @@ The maximum width to use when importing textures as an atlas. The value will be .. container:: contribute - There is currently no description for this property. Please help us by :ref:`contributing one `! + There is currently no description for this property. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -4634,20 +5084,6 @@ The audio mix rate to use in the recorded audio when writing a movie (in Hz). Th ---- -.. _class_ProjectSettings_property_editor/movie_writer/mjpeg_quality: - -.. rst-class:: classref-property - -:ref:`float` **editor/movie_writer/mjpeg_quality** = ``0.75`` :ref:`🔗` - -The JPEG quality to use when writing a video to an AVI file, between ``0.01`` and ``1.0`` (inclusive). Higher ``quality`` values result in better-looking output at the cost of larger file sizes. Recommended ``quality`` values are between ``0.75`` and ``0.9``. Even at quality ``1.0``, JPEG compression remains lossy. - -\ **Note:** This does not affect the audio quality or writing PNG image sequences. - -.. rst-class:: classref-item-separator - ----- - .. _class_ProjectSettings_property_editor/movie_writer/movie_file: .. rst-class:: classref-property @@ -4656,9 +5092,11 @@ The JPEG quality to use when writing a video to an AVI file, between ``0.01`` an The output path for the movie. The file extension determines the :ref:`MovieWriter` that will be used. -Godot has 2 built-in :ref:`MovieWriter`\ s: +Godot has 3 built-in :ref:`MovieWriter`\ s: -- AVI container with MJPEG for video and uncompressed audio (``.avi`` file extension). Lossy compression, medium file sizes, fast encoding. The lossy compression quality can be adjusted by changing :ref:`editor/movie_writer/mjpeg_quality`. The resulting file can be viewed in most video players, but it must be converted to another format for viewing on the web or by Godot with :ref:`VideoStreamPlayer`. MJPEG does not support transparency. AVI output is currently limited to a file of 4 GB in size at most. +- OGV container with Theora for video and Vorbis for audio (``.ogv`` file extension). Lossy compression, medium file sizes, fast encoding. The lossy compression quality can be adjusted by changing :ref:`editor/movie_writer/video_quality` and :ref:`editor/movie_writer/ogv/audio_quality`. The resulting file can be viewed in Godot with :ref:`VideoStreamPlayer` and most video players, but not web browsers as they don't support Theora. + +- AVI container with MJPEG for video and uncompressed audio (``.avi`` file extension). Lossy compression, medium file sizes, fast encoding. The lossy compression quality can be adjusted by changing :ref:`editor/movie_writer/video_quality`. The resulting file can be viewed in most video players, but it must be converted to another format for viewing on the web or by Godot with :ref:`VideoStreamPlayer`. MJPEG does not support transparency. AVI output is currently limited to a file of 4 GB in size at most. - PNG image sequence for video and WAV for audio (``.png`` file extension). Lossless compression, large file sizes, slow encoding. Designed to be encoded to a video file with another tool such as `FFmpeg `__ after recording. Transparency is currently not supported, even if the root viewport is set to be transparent. @@ -4670,6 +5108,44 @@ When using PNG output, the frame number will be appended at the end of the file ---- +.. _class_ProjectSettings_property_editor/movie_writer/ogv/audio_quality: + +.. rst-class:: classref-property + +:ref:`float` **editor/movie_writer/ogv/audio_quality** = ``0.5`` :ref:`🔗` + +The audio encoding quality to use when writing Vorbis audio to a file, between ``-0.1`` and ``1.0`` (inclusive). Higher ``quality`` values result in better-sounding output at the cost of larger file sizes. Even at quality ``1.0``, compression remains lossy. + +\ **Note:** This does not affect video quality, which is controlled by :ref:`editor/movie_writer/video_quality` instead. + +.. rst-class:: classref-item-separator + +---- + +.. _class_ProjectSettings_property_editor/movie_writer/ogv/encoding_speed: + +.. rst-class:: classref-property + +:ref:`int` **editor/movie_writer/ogv/encoding_speed** = ``4`` :ref:`🔗` + +The tradeoff between encoding speed and compression efficiency. Speed ``1`` is the slowest but provides the best compression. Speed ``4`` is the fastest but provides the worst compression. Video quality is generally not affected significantly by this setting. + +.. rst-class:: classref-item-separator + +---- + +.. _class_ProjectSettings_property_editor/movie_writer/ogv/keyframe_interval: + +.. rst-class:: classref-property + +:ref:`int` **editor/movie_writer/ogv/keyframe_interval** = ``64`` :ref:`🔗` + +Forces keyframes at the specified interval (in frame count). Higher values can improve compression up to a certain level at the expense of higher latency when seeking. + +.. rst-class:: classref-item-separator + +---- + .. _class_ProjectSettings_property_editor/movie_writer/speaker_mode: .. rst-class:: classref-property @@ -4682,6 +5158,18 @@ The speaker mode to use in the recorded audio when writing a movie. See :ref:`Sp ---- +.. _class_ProjectSettings_property_editor/movie_writer/video_quality: + +.. rst-class:: classref-property + +:ref:`float` **editor/movie_writer/video_quality** = ``0.75`` :ref:`🔗` + +The video encoding quality to use when writing a Theora or AVI (MJPEG) video to a file, between ``0.0`` and ``1.0`` (inclusive). Higher ``quality`` values result in better-looking output at the cost of larger file sizes. Recommended ``quality`` values are between ``0.75`` and ``0.9``. Even at quality ``1.0``, compression remains lossy. + +.. rst-class:: classref-item-separator + +---- + .. _class_ProjectSettings_property_editor/naming/default_signal_callback_name: .. rst-class:: classref-property @@ -4808,7 +5296,7 @@ Search path for project-specific script templates. Godot will search for script .. container:: contribute - There is currently no description for this property. Please help us by :ref:`contributing one `! + There is currently no description for this property. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -4822,7 +5310,7 @@ Search path for project-specific script templates. Godot will search for script .. container:: contribute - There is currently no description for this property. Please help us by :ref:`contributing one `! + There is currently no description for this property. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -4836,7 +5324,7 @@ Search path for project-specific script templates. Godot will search for script If ``true``, Blender 3D scene files with the ``.blend`` extension will be imported by converting them to glTF 2.0. -This requires configuring a path to a Blender executable in the editor settings at ``filesystem/import/blender/blender_path``. Blender 3.0 or later is required. +This requires configuring a path to a Blender executable in the :ref:`EditorSettings.filesystem/import/blender/blender_path` setting. Blender 3.0 or later is required. .. rst-class:: classref-item-separator @@ -4932,9 +5420,15 @@ If ``true``, snaps :ref:`Control` node vertices to the nearest pi .. rst-class:: classref-property -:ref:`bool` **gui/common/swap_cancel_ok** :ref:`🔗` +:ref:`int` **gui/common/swap_cancel_ok** = ``0`` :ref:`🔗` -If ``true``, swaps **Cancel** and **OK** buttons in dialogs on Windows to follow interface conventions. :ref:`DisplayServer.get_swap_cancel_ok()` can be used to query whether buttons are swapped at run-time. +How to position the Cancel and OK buttons in the project's :ref:`AcceptDialog`\ s. Different platforms have different standard behaviors for this, which can be overridden using this setting. + +- **Auto** (``0``) follows the platform convention: OK first on Windows, KDE, and LXQt, Cancel first on macOS and other Linux desktop environments. :ref:`DisplayServer.get_swap_cancel_ok()` can be used to query whether buttons are swapped at run-time. + +- **Cancel First** (``1``) forces the ordering Cancel/OK. + +- **OK First** (``2``) forces the ordering OK/Cancel. \ **Note:** This doesn't affect native dialogs such as the ones spawned by :ref:`DisplayServer.dialog_show()`. @@ -4960,9 +5454,7 @@ Maximum undo/redo history size for :ref:`TextEdit` fields. :ref:`bool` **gui/fonts/dynamic_fonts/use_oversampling** = ``true`` :ref:`🔗` -.. container:: contribute - - There is currently no description for this property. Please help us by :ref:`contributing one `! +If set to ``true`` and :ref:`display/window/stretch/mode` is set to **"canvas_items"**, font and :ref:`DPITexture` oversampling is enabled in the main window. Use :ref:`Viewport.oversampling` to control oversampling in other viewports and windows. .. rst-class:: classref-item-separator @@ -5166,6 +5658,20 @@ Default :ref:`InputEventAction` to confirm a focused but ---- +.. _class_ProjectSettings_property_input/ui_accessibility_drag_and_drop: + +.. rst-class:: classref-property + +:ref:`Dictionary` **input/ui_accessibility_drag_and_drop** :ref:`🔗` + +Default :ref:`InputEventAction` to start or end a drag-and-drop operation without using mouse. + +\ **Note:** Default ``ui_*`` actions cannot be removed as they are necessary for the internal logic of several :ref:`Control`\ s. The events assigned to the action can however be modified. + +.. rst-class:: classref-item-separator + +---- + .. _class_ProjectSettings_property_input/ui_cancel: .. rst-class:: classref-property @@ -5180,6 +5686,20 @@ Default :ref:`InputEventAction` to discard a modal or pe ---- +.. _class_ProjectSettings_property_input/ui_colorpicker_delete_preset: + +.. rst-class:: classref-property + +:ref:`Dictionary` **input/ui_colorpicker_delete_preset** :ref:`🔗` + +Default :ref:`InputEventAction` to delete a color preset in a :ref:`ColorPicker`. + +\ **Note:** Default ``ui_*`` actions cannot be removed as they are necessary for the internal logic of several :ref:`Control`\ s. The events assigned to the action can however be modified. + +.. rst-class:: classref-item-separator + +---- + .. _class_ProjectSettings_property_input/ui_copy: .. rst-class:: classref-property @@ -5278,6 +5798,20 @@ Default :ref:`InputEventAction` to go up one directory i ---- +.. _class_ProjectSettings_property_input/ui_focus_mode: + +.. rst-class:: classref-property + +:ref:`Dictionary` **input/ui_focus_mode** :ref:`🔗` + +Default :ref:`InputEventAction` to switch :ref:`TextEdit` :ref:`input/ui_text_indent` between moving keyboard focus to the next :ref:`Control` in the scene and inputting a ``Tab`` character. + +\ **Note:** Default ``ui_*`` actions cannot be removed as they are necessary for the internal logic of several :ref:`Control`\ s. The events assigned to the action can however be modified. + +.. rst-class:: classref-item-separator + +---- + .. _class_ProjectSettings_property_input/ui_focus_next: .. rst-class:: classref-property @@ -5334,6 +5868,58 @@ Default :ref:`InputEventAction` to duplicate a :ref:`Gra ---- +.. _class_ProjectSettings_property_input/ui_graph_follow_left: + +.. rst-class:: classref-property + +:ref:`Dictionary` **input/ui_graph_follow_left** :ref:`🔗` + +Default :ref:`InputEventAction` to follow a :ref:`GraphNode` input port connection. + +\ **Note:** Default ``ui_*`` actions cannot be removed as they are necessary for the internal logic of several :ref:`Control`\ s. The events assigned to the action can however be modified. + +.. rst-class:: classref-item-separator + +---- + +.. _class_ProjectSettings_property_input/ui_graph_follow_left.macos: + +.. rst-class:: classref-property + +:ref:`Dictionary` **input/ui_graph_follow_left.macos** :ref:`🔗` + +macOS specific override for the shortcut to follow a :ref:`GraphNode` input port connection. + +.. rst-class:: classref-item-separator + +---- + +.. _class_ProjectSettings_property_input/ui_graph_follow_right: + +.. rst-class:: classref-property + +:ref:`Dictionary` **input/ui_graph_follow_right** :ref:`🔗` + +Default :ref:`InputEventAction` to follow a :ref:`GraphNode` output port connection. + +\ **Note:** Default ``ui_*`` actions cannot be removed as they are necessary for the internal logic of several :ref:`Control`\ s. The events assigned to the action can however be modified. + +.. rst-class:: classref-item-separator + +---- + +.. _class_ProjectSettings_property_input/ui_graph_follow_right.macos: + +.. rst-class:: classref-property + +:ref:`Dictionary` **input/ui_graph_follow_right.macos** :ref:`🔗` + +macOS specific override for the shortcut to follow a :ref:`GraphNode` output port connection. + +.. rst-class:: classref-item-separator + +---- + .. _class_ProjectSettings_property_input/ui_home: .. rst-class:: classref-property @@ -6290,6 +6876,18 @@ Override for :ref:`input_devices/pen_tablet/driver` **input_devices/pointing/android/disable_scroll_deadzone** = ``false`` :ref:`🔗` + +If ``true``, disables the scroll deadzone on Android, allowing even very small scroll movements to be registered. This may increase scroll sensitivity but can also lead to unintended scrolling from slight finger movements. + +.. rst-class:: classref-item-separator + +---- + .. _class_ProjectSettings_property_input_devices/pointing/android/enable_long_press_as_right_click: .. rst-class:: classref-property @@ -6314,6 +6912,18 @@ If ``true``, multi-touch pan and scale gestures are enabled on Android devices. ---- +.. _class_ProjectSettings_property_input_devices/pointing/android/override_volume_buttons: + +.. rst-class:: classref-property + +:ref:`bool` **input_devices/pointing/android/override_volume_buttons** = ``false`` :ref:`🔗` + +If ``true``, system volume changes are disabled when the buttons are used within the app. + +.. rst-class:: classref-item-separator + +---- + .. _class_ProjectSettings_property_input_devices/pointing/android/rotary_input_scroll_axis: .. rst-class:: classref-property @@ -6428,6 +7038,28 @@ If ``true``, text server break iteration rule sets, dictionaries and other optio ---- +.. _class_ProjectSettings_property_internationalization/locale/line_breaking_strictness: + +.. rst-class:: classref-property + +:ref:`int` **internationalization/locale/line_breaking_strictness** = ``0`` :ref:`🔗` + +Default strictness of line-breaking rules. Can be overridden by adding ``@lb={auto,loose,normal,strict}`` to the language code. + +- **Auto** (``0``) - strictness is based on the length of the line. + +- **Loose** (``1``) - the least restrictive set of line-breaking rules. Typically used for short lines. + +- **Normal** (``2``) - the most common set of line-breaking rules. + +- **Strict** (``3``) - the most stringent set of line-breaking rules. + +See `Line Breaking Strictness: the line-break property `__ for more info. + +.. rst-class:: classref-item-separator + +---- + .. _class_ProjectSettings_property_internationalization/locale/test: .. rst-class:: classref-property @@ -9056,6 +9688,18 @@ Default link connection radius for 2D navigation maps. See :ref:`NavigationServe ---- +.. _class_ProjectSettings_property_navigation/2d/merge_rasterizer_cell_scale: + +.. rst-class:: classref-property + +:ref:`float` **navigation/2d/merge_rasterizer_cell_scale** = ``1.0`` :ref:`🔗` + +Default merge rasterizer cell scale for 2D navigation maps. See :ref:`NavigationServer2D.map_set_merge_rasterizer_cell_scale()`. + +.. rst-class:: classref-item-separator + +---- + .. _class_ProjectSettings_property_navigation/2d/use_edge_connections: .. rst-class:: classref-property @@ -9236,6 +9880,18 @@ If enabled, navigation map synchronization uses an async process that runs on a ---- +.. _class_ProjectSettings_property_navigation/world/region_use_async_iterations: + +.. rst-class:: classref-property + +:ref:`bool` **navigation/world/region_use_async_iterations** = ``true`` :ref:`🔗` + +If enabled, navigation region synchronization uses an async process that runs on a background thread. This avoids stalling the main thread but adds an additional delay to any navigation region change. + +.. rst-class:: classref-item-separator + +---- + .. _class_ProjectSettings_property_network/limits/debugger/max_chars_per_second: .. rst-class:: classref-property @@ -9482,7 +10138,7 @@ If ``true``, the 2D physics server runs on a separate thread, making better use .. rst-class:: classref-property -:ref:`float` **physics/2d/sleep_threshold_angular** = ``0.139626`` :ref:`🔗` +:ref:`float` **physics/2d/sleep_threshold_angular** = ``0.13962634`` :ref:`🔗` Threshold angular velocity under which a 2D physics body will be considered inactive. See :ref:`PhysicsServer2D.SPACE_PARAM_BODY_ANGULAR_VELOCITY_SLEEP_THRESHOLD`. @@ -9710,6 +10366,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 @@ -9728,7 +10402,7 @@ If ``true``, the 3D physics server runs on a separate thread, making better use .. rst-class:: classref-property -:ref:`float` **physics/3d/sleep_threshold_angular** = ``0.139626`` :ref:`🔗` +:ref:`float` **physics/3d/sleep_threshold_angular** = ``0.13962634`` :ref:`🔗` Threshold angular velocity under which a 3D physics body will be considered inactive. See :ref:`PhysicsServer3D.SPACE_PARAM_BODY_ANGULAR_VELOCITY_SLEEP_THRESHOLD`. @@ -9840,7 +10514,9 @@ Enables :ref:`Viewport.physics_object_picking` **physics/common/max_physics_steps_per_frame** = ``8`` :ref:`🔗` -Controls the maximum number of physics steps that can be simulated each rendered frame. The default value is tuned to avoid "spiral of death" situations where expensive physics simulations trigger more expensive simulations indefinitely. However, the game will appear to slow down if the rendering FPS is less than ``1 / max_physics_steps_per_frame`` of :ref:`physics/common/physics_ticks_per_second`. This occurs even if ``delta`` is consistently used in physics calculations. To avoid this, increase :ref:`physics/common/max_physics_steps_per_frame` if you have increased :ref:`physics/common/physics_ticks_per_second` significantly above its default value. +Controls the maximum number of physics steps that can be simulated each rendered frame. The default value is tuned to avoid situations where the framerate suddenly drops to a very low value beyond a certain amount of physics simulation. This occurs because the physics engine can't keep up with the expected simulation rate. In this case, the framerate will start dropping, but the engine is only allowed to simulate a certain number of physics steps per rendered frame. This snowballs into a situation where framerate keeps dropping until it reaches a very low framerate (typically 1-2 FPS) and is called the *physics spiral of death*. + +However, the game will appear to slow down if the rendering FPS is less than ``1 / max_physics_steps_per_frame`` of :ref:`physics/common/physics_ticks_per_second`. This occurs even if ``delta`` is consistently used in physics calculations. To avoid this, increase :ref:`physics/common/max_physics_steps_per_frame` if you have increased :ref:`physics/common/physics_ticks_per_second` significantly above its default value. \ **Note:** This property is only read when the project starts. To change the maximum number of simulated physics steps per frame at runtime, set :ref:`Engine.max_physics_steps_per_frame` instead. @@ -9854,12 +10530,14 @@ Controls the maximum number of physics steps that can be simulated each rendered :ref:`bool` **physics/common/physics_interpolation** = ``false`` :ref:`🔗` -If ``true``, the renderer will interpolate the transforms of physics objects between the last two transforms, so that smooth motion is seen even when physics ticks do not coincide with rendered frames. See also :ref:`Node.physics_interpolation_mode` and :ref:`Node.reset_physics_interpolation()`. +If ``true``, the renderer will interpolate the transforms of objects (both physics and non-physics) between the last two transforms, so that smooth motion is seen even when physics ticks do not coincide with rendered frames. See also :ref:`Node.reset_physics_interpolation()`. -\ **Note:** If ``true``, the physics jitter fix should be disabled by setting :ref:`physics/common/physics_jitter_fix` to ``0.0``. +\ **Note:** Although this is a global setting, finer control of individual branches of the :ref:`SceneTree` is possible using :ref:`Node.physics_interpolation_mode`. \ **Note:** This property is only read when the project starts. To toggle physics interpolation at runtime, set :ref:`SceneTree.physics_interpolation` instead. +\ **Note:** Property :ref:`physics/common/physics_jitter_fix` is automatically disabled if :ref:`physics/common/physics_interpolation` is set to ``true``, as the two methods are incompatible. + .. rst-class:: classref-item-separator ---- @@ -9902,7 +10580,7 @@ The number of fixed iterations per second. This controls how often physics simul .. rst-class:: classref-property -:ref:`float` **physics/jolt_physics_3d/collisions/active_edge_threshold** = ``0.872665`` :ref:`🔗` +:ref:`float` **physics/jolt_physics_3d/collisions/active_edge_threshold** = ``0.87266463`` :ref:`🔗` The maximum angle, in radians, between two adjacent triangles in a :ref:`ConcavePolygonShape3D` or :ref:`HeightMapShape3D` for which the edge between those triangles is considered inactive. @@ -9914,8 +10592,6 @@ Collisions against an inactive edge will have its normal overridden to instead b \ **Note:** This does not apply when enabling Jolt's enhanced internal edge removal, which supersedes this. -\ **Note:** This setting will only be read once during the lifetime of the application. - .. rst-class:: classref-item-separator ---- @@ -9932,8 +10608,6 @@ The amount of collision margin to use for certain convex collision shapes, such \ **Note:** Setting this value too close to ``0.0`` may also negatively affect the accuracy of the collision detection with convex shapes. -\ **Note:** This setting will only be read once during the lifetime of the application. - .. rst-class:: classref-item-separator ---- @@ -9956,7 +10630,7 @@ Which of the two nodes bound by a joint should represent the world when one of t .. rst-class:: classref-property -:ref:`float` **physics/jolt_physics_3d/limits/max_angular_velocity** = ``47.1239`` :ref:`🔗` +:ref:`float` **physics/jolt_physics_3d/limits/max_angular_velocity** = ``47.12389`` :ref:`🔗` The maximum angular velocity that a :ref:`RigidBody3D` can reach, in radians per second. @@ -10056,8 +10730,6 @@ Fraction of the total penetration to depenetrate per iteration during motion que \ **Note:** This affects methods :ref:`CharacterBody3D.move_and_slide()`, :ref:`PhysicsBody3D.move_and_collide()`, :ref:`PhysicsBody3D.test_move()` and :ref:`PhysicsServer3D.body_test_motion()`. -\ **Note:** This setting will only be read once during the lifetime of the application. - .. rst-class:: classref-item-separator ---- @@ -10072,8 +10744,6 @@ The number of iterations to run when depenetrating during motion queries. \ **Note:** This affects methods :ref:`CharacterBody3D.move_and_slide()`, :ref:`PhysicsBody3D.move_and_collide()`, :ref:`PhysicsBody3D.test_move()` and :ref:`PhysicsServer3D.body_test_motion()`. -\ **Note:** This setting will only be read once during the lifetime of the application. - .. rst-class:: classref-item-separator ---- @@ -10088,8 +10758,6 @@ If ``true``, enables Jolt's enhanced internal edge removal during motion queries \ **Note:** This affects methods :ref:`CharacterBody3D.move_and_slide()`, :ref:`PhysicsBody3D.move_and_collide()`, :ref:`PhysicsBody3D.test_move()` and :ref:`PhysicsServer3D.body_test_motion()`. -\ **Note:** This setting will only be read once during the lifetime of the application. - .. rst-class:: classref-item-separator ---- @@ -10104,8 +10772,6 @@ If ``true``, populates the ``face_index`` field in the results of :ref:`PhysicsD \ **Note:** Enabling this setting will increase Jolt's memory usage for :ref:`ConcavePolygonShape3D` by around 25%. -\ **Note:** This setting will only be read once during the lifetime of the application. - .. rst-class:: classref-item-separator ---- @@ -10122,8 +10788,6 @@ If ``true``, enables Jolt's enhanced internal edge removal during shape queries. \ **Note:** Enabling this setting can cause certain shapes to be culled from the results entirely, but you will get at least one intersection per body. -\ **Note:** This setting will only be read once during the lifetime of the application. - .. rst-class:: classref-item-separator ---- @@ -10140,24 +10804,6 @@ If ``true``, :ref:`RigidBody3D` nodes are allowed to go to sl ---- -.. _class_ProjectSettings_property_physics/jolt_physics_3d/simulation/areas_detect_static_bodies: - -.. rst-class:: classref-property - -:ref:`bool` **physics/jolt_physics_3d/simulation/areas_detect_static_bodies** = ``false`` :ref:`🔗` - -If ``true``, :ref:`Area3D` nodes are able to detect overlaps with :ref:`StaticBody3D` nodes. - -\ **Note:** Enabling this setting can come at a heavy CPU and memory cost if you allow many/large :ref:`Area3D` to overlap with complex static geometry, such as :ref:`ConcavePolygonShape3D` or :ref:`HeightMapShape3D`. It is strongly recommended that you set up your collision layers and masks in such a way that only a few small :ref:`Area3D` nodes can detect :ref:`StaticBody3D` nodes. - -\ **Note:** This also applies to overlaps with a :ref:`RigidBody3D` frozen with :ref:`RigidBody3D.FREEZE_MODE_STATIC`. - -\ **Note:** This is not needed to detect overlaps with :ref:`AnimatableBody3D`, as it is a kinematic body, despite inheriting from :ref:`StaticBody3D`. - -.. rst-class:: classref-item-separator - ----- - .. _class_ProjectSettings_property_physics/jolt_physics_3d/simulation/baumgarte_stabilization_factor: .. rst-class:: classref-property @@ -10176,7 +10822,7 @@ How much of the position error of a :ref:`RigidBody3D` to fix .. rst-class:: classref-property -:ref:`float` **physics/jolt_physics_3d/simulation/body_pair_contact_cache_angle_threshold** = ``0.0349066`` :ref:`🔗` +:ref:`float` **physics/jolt_physics_3d/simulation/body_pair_contact_cache_angle_threshold** = ``0.034906585`` :ref:`🔗` The maximum relative angle by which a body pair can move and still reuse the collision results from the previous physics step, in radians. @@ -10216,8 +10862,6 @@ If ``true``, enables the body pair contact cache, which removes the need for pot The minimum velocity needed before a collision can be bouncy, in meters per second. -\ **Note:** This setting will only be read once during the lifetime of the application. - .. rst-class:: classref-item-separator ---- @@ -10380,7 +11024,7 @@ Maximum number of canvas item commands that can be batched into a single draw ca Maximum number of uniform sets that will be cached by the 2D renderer when batching draw calls. -\ **Note:** A project that uses a large number of unique sprite textures per frame may benefit from increasing this value. +\ **Note:** Increasing this value can improve performance if the project renders many unique sprite textures every frame. .. rst-class:: classref-item-separator @@ -10514,13 +11158,27 @@ 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 :ref:`bool` **rendering/anti_aliasing/quality/use_debanding** = ``false`` :ref:`🔗` -If ``true``, uses a fast post-processing filter to make banding significantly less visible in 3D. 2D rendering is *not* affected by debanding unless the :ref:`Environment.background_mode` is :ref:`Environment.BG_CANVAS`. +If ``true``, uses a fast post-processing filter to make banding significantly less visible. If :ref:`rendering/viewport/hdr_2d` is ``false``, 2D rendering is *not* affected by debanding unless the :ref:`Environment.background_mode` is :ref:`Environment.BG_CANVAS`. If :ref:`rendering/viewport/hdr_2d` is ``true``, debanding will affect all 2D and 3D rendering, including canvas items. In some cases, debanding may introduce a slightly noticeable dithering pattern. It's recommended to enable debanding only when actually needed since the dithering pattern will make lossless-compressed screenshots larger. @@ -10696,6 +11354,8 @@ Default background clear color. Overridable per :ref:`Viewport` Sets how the glow effect is upscaled before being copied onto the screen. Linear is faster, but looks blocky. Bicubic is slower but looks smooth. +\ **Note:** :ref:`rendering/environment/glow/upscale_mode` is only effective when using the Forward+ or Mobile rendering methods, as Compatibility uses a different glow implementation. + .. rst-class:: classref-item-separator ---- @@ -11080,7 +11740,7 @@ Two options are supported: :ref:`bool` **rendering/gl_compatibility/fallback_to_angle** = ``true`` :ref:`🔗` -If ``true``, the compatibility renderer will fall back to ANGLE if native OpenGL is not supported or the device is listed in :ref:`rendering/gl_compatibility/force_angle_on_devices`. +If ``true``, the Compatibility renderer will fall back to ANGLE if native OpenGL is not supported or the device is listed in :ref:`rendering/gl_compatibility/force_angle_on_devices`. \ **Note:** This setting is implemented only on Windows. @@ -11094,7 +11754,7 @@ If ``true``, the compatibility renderer will fall back to ANGLE if native OpenGL :ref:`bool` **rendering/gl_compatibility/fallback_to_gles** = ``true`` :ref:`🔗` -If ``true``, the compatibility renderer will fall back to OpenGLES if desktop OpenGL is not supported. +If ``true``, the Compatibility renderer will fall back to OpenGLES if desktop OpenGL is not supported. \ **Note:** This setting is implemented only on Linux/X11. @@ -11108,7 +11768,7 @@ If ``true``, the compatibility renderer will fall back to OpenGLES if desktop Op :ref:`bool` **rendering/gl_compatibility/fallback_to_native** = ``true`` :ref:`🔗` -If ``true``, the compatibility renderer will fall back to native OpenGL if ANGLE is not supported, or ANGLE dynamic libraries aren't found. +If ``true``, the Compatibility renderer will fall back to native OpenGL if ANGLE is not supported, or ANGLE dynamic libraries aren't found. \ **Note:** This setting is implemented on macOS and Windows. @@ -11526,7 +12186,7 @@ Use 16 bits for the omni/spot shadow depth map. Enabling this results in shadows :ref:`int` **rendering/lights_and_shadows/positional_shadow/atlas_quadrant_0_subdiv** = ``2`` :ref:`🔗` -Subdivision quadrant size for shadow mapping. See shadow mapping documentation. +The subdivision amount of the first quadrant on the shadow atlas. See the `documentation <../tutorials/tutorials/3d/lights_and_shadows.html#shadow-atlas>`__ for more information. .. rst-class:: classref-item-separator @@ -11538,7 +12198,7 @@ Subdivision quadrant size for shadow mapping. See shadow mapping documentation. :ref:`int` **rendering/lights_and_shadows/positional_shadow/atlas_quadrant_1_subdiv** = ``2`` :ref:`🔗` -Subdivision quadrant size for shadow mapping. See shadow mapping documentation. +The subdivision amount of the second quadrant on the shadow atlas. See the `documentation <../tutorials/tutorials/3d/lights_and_shadows.html#shadow-atlas>`__ for more information. .. rst-class:: classref-item-separator @@ -11550,7 +12210,7 @@ Subdivision quadrant size for shadow mapping. See shadow mapping documentation. :ref:`int` **rendering/lights_and_shadows/positional_shadow/atlas_quadrant_2_subdiv** = ``3`` :ref:`🔗` -Subdivision quadrant size for shadow mapping. See shadow mapping documentation. +The subdivision amount of the third quadrant on the shadow atlas. See the `documentation <../tutorials/tutorials/3d/lights_and_shadows.html#shadow-atlas>`__ for more information. .. rst-class:: classref-item-separator @@ -11562,7 +12222,7 @@ Subdivision quadrant size for shadow mapping. See shadow mapping documentation. :ref:`int` **rendering/lights_and_shadows/positional_shadow/atlas_quadrant_3_subdiv** = ``4`` :ref:`🔗` -Subdivision quadrant size for shadow mapping. See shadow mapping documentation. +The subdivision amount of the fourth quadrant on the shadow atlas. See the `documentation <../tutorials/tutorials/3d/lights_and_shadows.html#shadow-atlas>`__ for more information. .. rst-class:: classref-item-separator @@ -11574,7 +12234,7 @@ Subdivision quadrant size for shadow mapping. See shadow mapping documentation. :ref:`int` **rendering/lights_and_shadows/positional_shadow/atlas_size** = ``4096`` :ref:`🔗` -Size for shadow atlas (used for OmniLights and SpotLights). See documentation. +The size of the shadow atlas used for :ref:`OmniLight3D` and :ref:`SpotLight3D` nodes. See the `documentation <../tutorials/tutorials/3d/lights_and_shadows.html#shadow-atlas>`__ for more information. .. rst-class:: classref-item-separator @@ -11738,7 +12398,7 @@ The minimum number of instances that must be present in a scene to enable cullin .. container:: contribute - There is currently no description for this property. Please help us by :ref:`contributing one `! + There is currently no description for this property. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -11922,6 +12582,8 @@ Limits the number of layers to use in radiance maps when using importance sampli If ``true``, uses texture arrays instead of mipmaps for reflection probes and panorama backgrounds (sky). This reduces jitter noise and upscaling artifacts on reflections, but is significantly slower to compute and uses :ref:`rendering/reflections/sky_reflections/roughness_layers` times more memory. +\ **Note:** Texture array reflections are always disabled on macOS on Intel GPUs due to driver bugs. + .. rst-class:: classref-item-separator ---- @@ -11938,6 +12600,18 @@ Lower-end override for :ref:`rendering/reflections/sky_reflections/texture_array ---- +.. _class_ProjectSettings_property_rendering/reflections/specular_occlusion/enabled: + +.. rst-class:: classref-property + +:ref:`bool` **rendering/reflections/specular_occlusion/enabled** = ``true`` :ref:`🔗` + +If ``true``, reduces reflections based on ambient light. + +.. rst-class:: classref-item-separator + +---- + .. _class_ProjectSettings_property_rendering/renderer/rendering_method: .. rst-class:: classref-property @@ -12138,6 +12812,22 @@ Two options are supported: ---- +.. _class_ProjectSettings_property_rendering/rendering_device/driver.visionos: + +.. rst-class:: classref-property + +:ref:`String` **rendering/rendering_device/driver.visionos** = ``"metal"`` :ref:`🔗` + +visionOS override for :ref:`rendering/rendering_device/driver`. + +Only one option is supported: + +- ``metal`` (default), Metal from native drivers. + +.. rst-class:: classref-item-separator + +---- + .. _class_ProjectSettings_property_rendering/rendering_device/driver.windows: .. rst-class:: classref-property @@ -12178,7 +12868,7 @@ If ``true``, the forward renderer will fall back to Direct3D 12 if Vulkan is not If ``true``, the forward renderer will fall back to OpenGL 3 if Direct3D 12, Metal, and Vulkan are not supported. -\ **Note:** This setting is implemented only on Windows, Android, macOS, iOS, and Linux/X11. +\ **Note:** This setting is implemented on Windows, Android, macOS, iOS, and Linux/X11. .. rst-class:: classref-item-separator @@ -12192,7 +12882,7 @@ If ``true``, the forward renderer will fall back to OpenGL 3 if Direct3D 12, Met If ``true``, the forward renderer will fall back to Vulkan if Direct3D 12 (on Windows) or Metal (on macOS x86_64) are not supported. The fallback is always attempted regardless of this setting if Direct3D 12 (Windows) or Metal (macOS) driver support was disabled at compile time. -\ **Note:** This setting is implemented only on Windows and macOS. +\ **Note:** This setting is implemented on Windows and macOS. .. rst-class:: classref-item-separator @@ -12410,7 +13100,7 @@ Scales the 3D render buffer based on the viewport size uses an image filter spec .. container:: contribute - There is currently no description for this property. Please help us by :ref:`contributing one `! + There is currently no description for this property. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -12436,7 +13126,7 @@ Enable the shader cache, which stores compiled shaders to disk to prevent stutte .. container:: contribute - There is currently no description for this property. Please help us by :ref:`contributing one `! + There is currently no description for this property. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -12450,7 +13140,7 @@ Enable the shader cache, which stores compiled shaders to disk to prevent stutte .. container:: contribute - There is currently no description for this property. Please help us by :ref:`contributing one `! + There is currently no description for this property. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -12464,7 +13154,7 @@ Enable the shader cache, which stores compiled shaders to disk to prevent stutte .. container:: contribute - There is currently no description for this property. Please help us by :ref:`contributing one `! + There is currently no description for this property. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -12506,6 +13196,44 @@ If ``true``, forces vertex shading for all rendering. This can increase performa ---- +.. _class_ProjectSettings_property_rendering/textures/basis_universal/rdo_dict_size: + +.. rst-class:: classref-property + +:ref:`int` **rendering/textures/basis_universal/rdo_dict_size** = ``1024`` :ref:`🔗` + +The dictionary size for Rate-Distortion Optimization (RDO) when importing textures as Basis Universal and when RDO is enabled, ranging from ``64`` to ``65536``. Higher values reduce the file sizes further, but make encoding times significantly longer. + +.. rst-class:: classref-item-separator + +---- + +.. _class_ProjectSettings_property_rendering/textures/basis_universal/zstd_supercompression: + +.. rst-class:: classref-property + +:ref:`bool` **rendering/textures/basis_universal/zstd_supercompression** = ``true`` :ref:`🔗` + +If ``true``, enables Zstandard supercompression to reduce file size when importing textures as Basis Universal. + +\ **Note:** Basis Universal textures need to be compressed to gain the benefit of smaller file sizes, otherwise they are as large as VRAM-compressed textures. + +.. rst-class:: classref-item-separator + +---- + +.. _class_ProjectSettings_property_rendering/textures/basis_universal/zstd_supercompression_level: + +.. rst-class:: classref-property + +:ref:`int` **rendering/textures/basis_universal/zstd_supercompression_level** = ``6`` :ref:`🔗` + +Specify the compression level for Basis Universal Zstandard supercompression, ranging from ``1`` to ``22``. + +.. rst-class:: classref-item-separator + +---- + .. _class_ProjectSettings_property_rendering/textures/canvas_textures/default_texture_filter: .. rst-class:: classref-property @@ -12708,9 +13436,11 @@ The default compression factor for lossless WebP. Decompression speed is mostly :ref:`bool` **rendering/viewport/hdr_2d** = ``false`` :ref:`🔗` -If ``true``, enables :ref:`Viewport.use_hdr_2d` on the root viewport. 2D rendering will use an high dynamic range (HDR) format framebuffer matching the bit depth of the 3D framebuffer. When using the Forward+ renderer this will be an ``RGBA16`` framebuffer, while when using the Mobile renderer it will be an ``RGB10_A2`` framebuffer. Additionally, 2D rendering will take place in linear color space and will be converted to sRGB space immediately before blitting to the screen. Practically speaking, this means that the end result of the Viewport will not be clamped into the ``0-1`` range and can be used in 3D rendering without color space adjustments. This allows 2D rendering to take advantage of effects requiring high dynamic range (e.g. 2D glow) as well as substantially improves the appearance of effects requiring highly detailed gradients. +If ``true``, enables :ref:`Viewport.use_hdr_2d` on the root viewport. 2D rendering will use a high dynamic range (HDR) format framebuffer matching the bit depth of the 3D framebuffer. When using the Forward+ or Compatibility renderer, this will be an ``RGBA16`` framebuffer. When using the Mobile renderer, it will be an ``RGB10_A2`` framebuffer. -\ **Note:** This setting will have no effect when using the Compatibility renderer, which always renders in low dynamic range for performance reasons. +Additionally, 2D rendering will take place in linear color space and will be converted to sRGB space immediately before blitting to the screen (if the Viewport is attached to the screen). + +Practically speaking, this means that the end result of the Viewport will not be clamped to the ``0-1`` range and can be used in 3D rendering without color space adjustments. This allows 2D rendering to take advantage of effects requiring high dynamic range (e.g. 2D glow) as well as substantially improves the appearance of effects requiring highly detailed gradients. \ **Note:** This property is only read when the project starts. To toggle HDR 2D at runtime, set :ref:`Viewport.use_hdr_2d` on the root :ref:`Viewport`. @@ -12787,7 +13517,7 @@ The ratio of :ref:`WorkerThreadPool`'s threads that will :ref:`int` **threading/worker_pool/max_threads** = ``-1`` :ref:`🔗` -Maximum number of threads to be used by :ref:`WorkerThreadPool`. Value of ``-1`` means no limit. +Maximum number of threads to be used by :ref:`WorkerThreadPool`. Value of ``-1`` means ``1`` on Web, or a number of *logical* CPU cores available on other platforms (see :ref:`OS.get_processor_count()`). .. rst-class:: classref-item-separator @@ -12923,7 +13653,7 @@ If ``true``, the hand tracking extension is enabled if available. If ``true``, support for the controller inferred data source is requested. If supported, you will receive hand tracking data even if the user has a controller in hand, with finger positions automatically inferred from controller input and/or sensors. -\ **Node:** This requires the OpenXR data source extension and controller inferred handtracking to be supported by the XR runtime. If not supported this setting will be ignored. :ref:`xr/openxr/extensions/hand_tracking` must be enabled for this setting to be used. +\ **Note:** This requires the OpenXR data source extension and controller inferred handtracking to be supported by the XR runtime. If not supported this setting will be ignored. :ref:`xr/openxr/extensions/hand_tracking` must be enabled for this setting to be used. .. rst-class:: classref-item-separator @@ -12937,7 +13667,21 @@ If ``true``, support for the controller inferred data source is requested. If su If ``true``, support for the unobstructed data source is requested. If supported, you will receive hand tracking data based on the actual finger positions of the user often determined by optical tracking. -\ **Node:** This requires the OpenXR data source extension and unobstructed handtracking to be supported by the XR runtime. If not supported this setting will be ignored. :ref:`xr/openxr/extensions/hand_tracking` must be enabled for this setting to be used. +\ **Note:** This requires the OpenXR data source extension and unobstructed handtracking to be supported by the XR runtime. If not supported this setting will be ignored. :ref:`xr/openxr/extensions/hand_tracking` must be enabled for this setting to be used. + +.. rst-class:: classref-item-separator + +---- + +.. _class_ProjectSettings_property_xr/openxr/extensions/render_model: + +.. rst-class:: classref-property + +:ref:`bool` **xr/openxr/extensions/render_model** = ``false`` :ref:`🔗` + +If ``true`` we enable the render model extension if available. + +\ **Note:** This relates to the core OpenXR render model extension and has no relation to any vendor render model extensions. .. rst-class:: classref-item-separator @@ -12963,8 +13707,6 @@ Specify whether OpenXR should be configured for an HMD or a hand held device. If ``true`` and foveation is supported, will automatically adjust foveation level based on framerate up to the level set on :ref:`xr/openxr/foveation_level`. -\ **Note:** Only works on the Compatibility rendering method. - .. rst-class:: classref-item-separator ---- @@ -12977,7 +13719,7 @@ If ``true`` and foveation is supported, will automatically adjust foveation leve Applied foveation level if supported: 0 = off, 1 = low, 2 = medium, 3 = high. -\ **Note:** Only works on the Compatibility rendering method. On platforms other than Android, if :ref:`rendering/anti_aliasing/quality/msaa_3d` is enabled, this feature will be disabled. +\ **Note:** On platforms other than Android, if :ref:`rendering/anti_aliasing/quality/msaa_3d` is enabled, this feature will be disabled. .. rst-class:: classref-item-separator @@ -13068,32 +13810,34 @@ Adds a custom property info to a property. The dictionary must contain: .. code-tab:: gdscript ProjectSettings.set("category/property_name", 0) - + var property_info = { "name": "category/property_name", "type": TYPE_INT, "hint": PROPERTY_HINT_ENUM, "hint_string": "one,two,three" } - + ProjectSettings.add_property_info(property_info) .. code-tab:: csharp ProjectSettings.Singleton.Set("category/property_name", 0); - + var propertyInfo = new Godot.Collections.Dictionary { - {"name", "category/propertyName"}, - {"type", (int)Variant.Type.Int}, - {"hint", (int)PropertyHint.Enum}, - {"hint_string", "one,two,three"}, + { "name", "category/propertyName" }, + { "type", (int)Variant.Type.Int }, + { "hint", (int)PropertyHint.Enum }, + { "hint_string", "one,two,three" }, }; - + ProjectSettings.AddPropertyInfo(propertyInfo); +\ **Note:** Setting ``"usage"`` for the property is not supported. Use :ref:`set_as_basic()`, :ref:`set_restart_if_changed()`, and :ref:`set_as_internal()` to modify usage flags. + .. rst-class:: classref-item-separator ---- @@ -13171,6 +13915,8 @@ Returns the value of the setting identified by ``name``. If the setting doesn't \ **Note:** This method doesn't take potential feature overrides into account automatically. Use :ref:`get_setting_with_override()` to handle seamlessly. +See also :ref:`has_setting()` to check whether a setting exists. + .. rst-class:: classref-item-separator ---- @@ -13198,6 +13944,18 @@ Similar to :ref:`get_setting()`, but a +.. rst-class:: classref-item-separator + +---- + +.. _class_ProjectSettings_method_get_setting_with_override_and_custom_features: + +.. rst-class:: classref-method + +:ref:`Variant` **get_setting_with_override_and_custom_features**\ (\ name\: :ref:`StringName`, features\: :ref:`PackedStringArray`\ ) |const| :ref:`🔗` + +Similar to :ref:`get_setting_with_override()`, but applies feature tag overrides instead of current OS features. + .. rst-class:: classref-item-separator ---- @@ -13238,6 +13996,8 @@ Returns the absolute, native OS path corresponding to the localized ``path`` (st Returns ``true`` if a configuration value is present. +\ **Note:** In order to be be detected, custom settings have to be either defined with :ref:`set_setting()`, or exist in the ``project.godot`` file. This is especially relevant when using :ref:`set_initial_value()`. + .. rst-class:: classref-item-separator ---- @@ -13328,7 +14088,22 @@ Defines if the specified setting is considered internal. An internal setting won |void| **set_initial_value**\ (\ name\: :ref:`String`, value\: :ref:`Variant`\ ) :ref:`🔗` -Sets the specified setting's initial value. This is the value the setting reverts to. +Sets the specified setting's initial value. This is the value the setting reverts to. The setting should already exist before calling this method. Note that project settings equal to their default value are not saved, so your code needs to account for that. + +:: + + extends EditorPlugin + + const SETTING_NAME = "addons/my_setting" + const SETTING_DEFAULT = 10.0 + + func _enter_tree(): + if not ProjectSettings.has_setting(SETTING_NAME): + ProjectSettings.set_setting(SETTING_NAME, SETTING_DEFAULT) + + ProjectSettings.set_initial_value(SETTING_NAME, SETTING_DEFAULT) + +If you have a project setting defined by an :ref:`EditorPlugin`, but want to use it in a running project, you will need a similar code at runtime. .. rst-class:: classref-item-separator @@ -13384,6 +14159,7 @@ Sets the value of a setting. This can also be used to erase custom project settings. To do this change the setting value to ``null``. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_propertytweener.rst b/classes/class_propertytweener.rst index e720d6fe3..36c9ffa53 100644 --- a/classes/class_propertytweener.rst +++ b/classes/class_propertytweener.rst @@ -157,12 +157,12 @@ Allows interpolating the value with a custom easing function. The provided ``int .. code-tab:: gdscript @export var curve: Curve - + func _ready(): var tween = create_tween() # Interpolate the value using a custom curve. tween.tween_property(self, "position:x", 300, 1).as_relative().set_custom_interpolator(tween_curve) - + func tween_curve(v): return curve.sample_baked(v) @@ -170,7 +170,7 @@ Allows interpolating the value with a custom easing function. The provided ``int [Export] public Curve Curve { get; set; } - + public override void _Ready() { Tween tween = CreateTween(); @@ -178,7 +178,7 @@ Allows interpolating the value with a custom easing function. The provided ``int Callable tweenCurveCallable = Callable.From(TweenCurve); tween.TweenProperty(this, "position:x", 300.0f, 1.0f).AsRelative().SetCustomInterpolator(tweenCurveCallable); } - + private float TweenCurve(float value) { return Curve.SampleBaked(value); @@ -223,6 +223,7 @@ Sets the type of used easing from :ref:`EaseType`. If not s Sets the type of used transition from :ref:`TransitionType`. If not set, the default transition is used from the :ref:`Tween` that contains this Tweener. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_quadmesh.rst b/classes/class_quadmesh.rst index e2046e1fe..ce3318bc0 100644 --- a/classes/class_quadmesh.rst +++ b/classes/class_quadmesh.rst @@ -45,6 +45,7 @@ Properties +------------------------------------------------+-------------+-------------------------------------------------------------------------------+ .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_quadoccluder3d.rst b/classes/class_quadoccluder3d.rst index d9dfed4fb..13ad09f7c 100644 --- a/classes/class_quadoccluder3d.rst +++ b/classes/class_quadoccluder3d.rst @@ -65,6 +65,7 @@ Property Descriptions The quad's size in 3D units. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_quaternion.rst b/classes/class_quaternion.rst index a10209e56..7187a8ef6 100644 --- a/classes/class_quaternion.rst +++ b/classes/class_quaternion.rst @@ -750,6 +750,7 @@ Returns the same value as if the ``+`` was not there. Unary ``+`` does nothing, Returns the negative value of the **Quaternion**. This is the same as multiplying all components by ``-1``. This operation results in a quaternion that represents the same rotation. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_randomnumbergenerator.rst b/classes/class_randomnumbergenerator.rst index c3d170009..d11d35de4 100644 --- a/classes/class_randomnumbergenerator.rst +++ b/classes/class_randomnumbergenerator.rst @@ -138,7 +138,7 @@ The current state of the random number generator. Save and restore this property \ **Note:** Do not set state to arbitrary values, since the random number generator requires the state to have certain qualities to behave properly. It should only be set to values that came from the state property itself. To initialize the random number generator with arbitrary input, use :ref:`seed` instead. -\ **Note:** The default value of this property is pseudo-random, and changes when calling :ref:`randomize()`. The ``0`` value documented here is a placeholder, and not the actual default seed. +\ **Note:** The default value of this property is pseudo-random, and changes when calling :ref:`randomize()`. The ``0`` value documented here is a placeholder, and not the actual default state. .. rst-class:: classref-section-separator @@ -163,10 +163,10 @@ Returns a random index with non-uniform weights. Prints an error and returns ``- .. code-tab:: gdscript var rng = RandomNumberGenerator.new() - + var my_array = ["one", "two", "three", "four"] var weights = PackedFloat32Array([0.5, 1, 1, 2]) - + # Prints one of the four elements in `my_array`. # It is more likely to print "four", and less likely to print "one". print(my_array[rng.rand_weighted(weights)]) @@ -248,6 +248,7 @@ Returns a pseudo-random 32-bit signed integer between ``from`` and ``to`` (inclu Sets up a time-based seed for this **RandomNumberGenerator** instance. Unlike the :ref:`@GlobalScope` random number generation functions, different **RandomNumberGenerator** instances can use different seeds. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_range.rst b/classes/class_range.rst index 377dd4f0f..afbeab2f4 100644 --- a/classes/class_range.rst +++ b/classes/class_range.rst @@ -158,7 +158,7 @@ If ``true``, :ref:`value` may be less than :ref:`min - |void| **set_exp_ratio**\ (\ value\: :ref:`bool`\ ) - :ref:`bool` **is_ratio_exp**\ (\ ) -If ``true``, and :ref:`min_value` is greater than 0, :ref:`value` will be represented exponentially rather than linearly. +If ``true``, and :ref:`min_value` is greater or equal to ``0``, :ref:`value` will be represented exponentially rather than linearly. .. rst-class:: classref-item-separator @@ -260,7 +260,7 @@ If ``true``, :ref:`value` will always be rounded to - |void| **set_step**\ (\ value\: :ref:`float`\ ) - :ref:`float` **get_step**\ (\ ) -If greater than 0, :ref:`value` will always be rounded to a multiple of this property's value. If :ref:`rounded` is also ``true``, :ref:`value` will first be rounded to a multiple of this property's value, then rounded to the nearest integer. +If greater than 0, :ref:`value` will always be rounded to a multiple of this property's value above :ref:`min_value`. For example, if :ref:`min_value` is ``0.1`` and step is 0.2, then :ref:`value` is limited to ``0.1``, ``0.3``, ``0.5``, and so on. If :ref:`rounded` is also ``true``, :ref:`value` will first be rounded to a multiple of this property's value, then rounded to the nearest integer. .. rst-class:: classref-item-separator @@ -333,6 +333,7 @@ Binds two **Range**\ s together along with any ranges previously grouped with ei Stops the **Range** from sharing its member variables with any other. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_raycast2d.rst b/classes/class_raycast2d.rst index 3f6fc01fd..91f3ae4bb 100644 --- a/classes/class_raycast2d.rst +++ b/classes/class_raycast2d.rst @@ -12,14 +12,14 @@ RayCast2D **Inherits:** :ref:`Node2D` **<** :ref:`CanvasItem` **<** :ref:`Node` **<** :ref:`Object` -A ray in 2D space, used to find the first :ref:`CollisionObject2D` it intersects. +A ray in 2D space, used to find the first collision object it intersects. .. rst-class:: classref-introduction-group Description ----------- -A raycast represents a ray from its origin to its :ref:`target_position` that finds the closest :ref:`CollisionObject2D` along its path, if it intersects any. +A raycast represents a ray from its origin to its :ref:`target_position` that finds the closest object along its path, if it intersects any. \ **RayCast2D** can ignore some objects by adding them to an exception list, by making its detection reporting ignore :ref:`Area2D`\ s (:ref:`collide_with_areas`) or :ref:`PhysicsBody2D`\ s (:ref:`collide_with_bodies`), or by configuring physics layers. @@ -184,7 +184,7 @@ If ``true``, collisions will be reported. - |void| **set_exclude_parent_body**\ (\ value\: :ref:`bool`\ ) - :ref:`bool` **get_exclude_parent_body**\ (\ ) -If ``true``, the parent node will be excluded from collision detection. +If ``true``, this raycast will not report collisions with its parent node. This property only has an effect if the parent node is a :ref:`CollisionObject2D`. See also :ref:`Node.get_parent()` and :ref:`add_exception()`. .. rst-class:: classref-item-separator @@ -218,7 +218,7 @@ If ``true``, the ray will detect a hit when starting inside shapes. In this case - |void| **set_target_position**\ (\ value\: :ref:`Vector2`\ ) - :ref:`Vector2` **get_target_position**\ (\ ) -The ray's destination point, relative to the RayCast's ``position``. +The ray's destination point, relative to this raycast's :ref:`Node2D.position`. .. rst-class:: classref-section-separator @@ -235,7 +235,7 @@ Method Descriptions |void| **add_exception**\ (\ node\: :ref:`CollisionObject2D`\ ) :ref:`🔗` -Adds a collision exception so the ray does not report collisions with the specified :ref:`CollisionObject2D` node. +Adds a collision exception so the ray does not report collisions with the specified ``node``. .. rst-class:: classref-item-separator @@ -287,6 +287,8 @@ Updates the collision information for the ray immediately, without waiting for t Returns the first object that the ray intersects, or ``null`` if no object is intersecting the ray (i.e. :ref:`is_colliding()` returns ``false``). +\ **Note:** This object is not guaranteed to be a :ref:`CollisionObject2D`. For example, if the ray intersects a :ref:`TileMapLayer`, the method will return a :ref:`TileMapLayer` instance. + .. rst-class:: classref-item-separator ---- @@ -394,7 +396,7 @@ Returns whether any object is intersecting with the ray's vector (considering th |void| **remove_exception**\ (\ node\: :ref:`CollisionObject2D`\ ) :ref:`🔗` -Removes a collision exception so the ray does report collisions with the specified :ref:`CollisionObject2D` node. +Removes a collision exception so the ray can report collisions with the specified specified ``node``. .. rst-class:: classref-item-separator @@ -406,7 +408,7 @@ Removes a collision exception so the ray does report collisions with the specifi |void| **remove_exception_rid**\ (\ rid\: :ref:`RID`\ ) :ref:`🔗` -Removes a collision exception so the ray does report collisions with the specified :ref:`RID`. +Removes a collision exception so the ray can report collisions with the specified :ref:`RID`. .. rst-class:: classref-item-separator @@ -421,6 +423,7 @@ Removes a collision exception so the ray does report collisions with the specifi Based on ``value``, enables or disables the specified layer in the :ref:`collision_mask`, given a ``layer_number`` between 1 and 32. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_raycast3d.rst b/classes/class_raycast3d.rst index 3af4b0f92..b3f015053 100644 --- a/classes/class_raycast3d.rst +++ b/classes/class_raycast3d.rst @@ -12,7 +12,7 @@ RayCast3D **Inherits:** :ref:`Node3D` **<** :ref:`Node` **<** :ref:`Object` -A ray in 3D space, used to find the first object it intersects. +A ray in 3D space, used to find the first collision object it intersects. .. rst-class:: classref-introduction-group @@ -230,7 +230,7 @@ If ``true``, collisions will be reported. - |void| **set_exclude_parent_body**\ (\ value\: :ref:`bool`\ ) - :ref:`bool` **get_exclude_parent_body**\ (\ ) -If ``true``, collisions will be ignored for this RayCast3D's immediate parent. +If ``true``, this raycast will not report collisions with its parent node. This property only has an effect if the parent node is a :ref:`CollisionObject3D`. See also :ref:`Node.get_parent()` and :ref:`add_exception()`. .. rst-class:: classref-item-separator @@ -281,7 +281,7 @@ If ``true``, the ray will detect a hit when starting inside shapes. In this case - |void| **set_target_position**\ (\ value\: :ref:`Vector3`\ ) - :ref:`Vector3` **get_target_position**\ (\ ) -The ray's destination point, relative to the RayCast's ``position``. +The ray's destination point, relative to this raycast's :ref:`Node3D.position`. .. rst-class:: classref-section-separator @@ -298,7 +298,7 @@ Method Descriptions |void| **add_exception**\ (\ node\: :ref:`CollisionObject3D`\ ) :ref:`🔗` -Adds a collision exception so the ray does not report collisions with the specified :ref:`CollisionObject3D` node. +Adds a collision exception so the ray does not report collisions with the specified ``node``. .. rst-class:: classref-item-separator @@ -471,7 +471,7 @@ Returns whether any object is intersecting with the ray's vector (considering th |void| **remove_exception**\ (\ node\: :ref:`CollisionObject3D`\ ) :ref:`🔗` -Removes a collision exception so the ray does report collisions with the specified :ref:`CollisionObject3D` node. +Removes a collision exception so the ray can report collisions with the specified ``node``. .. rst-class:: classref-item-separator @@ -483,7 +483,7 @@ Removes a collision exception so the ray does report collisions with the specifi |void| **remove_exception_rid**\ (\ rid\: :ref:`RID`\ ) :ref:`🔗` -Removes a collision exception so the ray does report collisions with the specified :ref:`RID`. +Removes a collision exception so the ray can report collisions with the specified :ref:`RID`. .. rst-class:: classref-item-separator @@ -498,6 +498,7 @@ Removes a collision exception so the ray does report collisions with the specifi Based on ``value``, enables or disables the specified layer in the :ref:`collision_mask`, given a ``layer_number`` between 1 and 32. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_rdattachmentformat.rst b/classes/class_rdattachmentformat.rst index 60636ddeb..0964508d6 100644 --- a/classes/class_rdattachmentformat.rst +++ b/classes/class_rdattachmentformat.rst @@ -94,6 +94,7 @@ The number of samples used when sampling the attachment. The attachment's usage flags, which determine what can be done with it. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_rdframebufferpass.rst b/classes/class_rdframebufferpass.rst index 44b9d828a..6b6b3bff8 100644 --- a/classes/class_rdframebufferpass.rst +++ b/classes/class_rdframebufferpass.rst @@ -161,6 +161,7 @@ If the color attachments are multisampled, non-multisampled resolve attachments **Note:** The returned array is *copied* and any changes to it will not update the original property value. See :ref:`PackedInt32Array` for more details. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_rdpipelinecolorblendstate.rst b/classes/class_rdpipelinecolorblendstate.rst index 20e6d96ec..2745d7ba4 100644 --- a/classes/class_rdpipelinecolorblendstate.rst +++ b/classes/class_rdpipelinecolorblendstate.rst @@ -113,6 +113,7 @@ If ``true``, performs the logic operation defined in :ref:`logic_op` is ``true``. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_rdpipelinecolorblendstateattachment.rst b/classes/class_rdpipelinecolorblendstateattachment.rst index 43bde5d42..19da9b6ad 100644 --- a/classes/class_rdpipelinecolorblendstateattachment.rst +++ b/classes/class_rdpipelinecolorblendstateattachment.rst @@ -342,6 +342,7 @@ Method Descriptions Convenience method to perform standard mix blending with straight (non-premultiplied) alpha. This sets :ref:`enable_blend` to ``true``, :ref:`src_color_blend_factor` to :ref:`RenderingDevice.BLEND_FACTOR_SRC_ALPHA`, :ref:`dst_color_blend_factor` to :ref:`RenderingDevice.BLEND_FACTOR_ONE_MINUS_SRC_ALPHA`, :ref:`src_alpha_blend_factor` to :ref:`RenderingDevice.BLEND_FACTOR_SRC_ALPHA` and :ref:`dst_alpha_blend_factor` to :ref:`RenderingDevice.BLEND_FACTOR_ONE_MINUS_SRC_ALPHA`. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_rdpipelinedepthstencilstate.rst b/classes/class_rdpipelinedepthstencilstate.rst index 66c5a6c82..539987063 100644 --- a/classes/class_rdpipelinedepthstencilstate.rst +++ b/classes/class_rdpipelinedepthstencilstate.rst @@ -436,6 +436,7 @@ The value the previous front stencil value will be compared to. Selects which bits from the front stencil value will be changed. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_rdpipelinemultisamplestate.rst b/classes/class_rdpipelinemultisamplestate.rst index 6dc1add85..3d3c90af2 100644 --- a/classes/class_rdpipelinemultisamplestate.rst +++ b/classes/class_rdpipelinemultisamplestate.rst @@ -151,6 +151,7 @@ The number of MSAA samples (or SSAA samples if :ref:`enable_sample_shading`__ for more details. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_rdpipelinerasterizationstate.rst b/classes/class_rdpipelinerasterizationstate.rst index 415ab1e7d..a4aa124c5 100644 --- a/classes/class_rdpipelinerasterizationstate.rst +++ b/classes/class_rdpipelinerasterizationstate.rst @@ -246,6 +246,7 @@ The number of control points to use when drawing a patch with tessellation enabl If ``true``, performs wireframe rendering for triangles instead of flat or textured rendering. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_rdpipelinespecializationconstant.rst b/classes/class_rdpipelinespecializationconstant.rst index fc39ef453..5eda19dd6 100644 --- a/classes/class_rdpipelinespecializationconstant.rst +++ b/classes/class_rdpipelinespecializationconstant.rst @@ -77,6 +77,7 @@ The identifier of the specialization constant. This is a value starting from ``0 The specialization constant's value. Only :ref:`bool`, :ref:`int` and :ref:`float` types are valid for specialization constants. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_rdsamplerstate.rst b/classes/class_rdsamplerstate.rst index b27506a03..7fd9eb97d 100644 --- a/classes/class_rdsamplerstate.rst +++ b/classes/class_rdsamplerstate.rst @@ -324,6 +324,7 @@ If ``true``, the texture will be sampled with coordinates ranging from 0 to the If ``true``, perform anisotropic sampling. See :ref:`anisotropy_max`. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_rdshaderfile.rst b/classes/class_rdshaderfile.rst index 1ae5bbc8c..4c8346bf2 100644 --- a/classes/class_rdshaderfile.rst +++ b/classes/class_rdshaderfile.rst @@ -115,6 +115,7 @@ Returns the list of compiled versions for this shader. Sets the SPIR-V ``bytecode`` that will be compiled for the specified ``version``. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_rdshadersource.rst b/classes/class_rdshadersource.rst index 08a64d99c..f9e0b9816 100644 --- a/classes/class_rdshadersource.rst +++ b/classes/class_rdshadersource.rst @@ -198,6 +198,7 @@ Sets ``source`` code for the specified shader ``stage``. Equivalent to setting o \ **Note:** If you set the compute shader source code using this method directly, remember to remove the Godot-specific hint ``#[compute]``. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_rdshaderspirv.rst b/classes/class_rdshaderspirv.rst index a5039f778..aa16f7dee 100644 --- a/classes/class_rdshaderspirv.rst +++ b/classes/class_rdshaderspirv.rst @@ -12,14 +12,14 @@ RDShaderSPIRV **Inherits:** :ref:`Resource` **<** :ref:`RefCounted` **<** :ref:`Object` -SPIR-V intermediate representation as part of a :ref:`RDShaderFile` (used by :ref:`RenderingDevice`). +SPIR-V intermediate representation as part of an :ref:`RDShaderFile` (used by :ref:`RenderingDevice`). .. rst-class:: classref-introduction-group Description ----------- -**RDShaderSPIRV** represents a :ref:`RDShaderFile`'s `SPIR-V `__ code for various shader stages, as well as possible compilation error messages. SPIR-V is a low-level intermediate shader representation. This intermediate representation is not used directly by GPUs for rendering, but it can be compiled into binary shaders that GPUs can understand. Unlike compiled shaders, SPIR-V is portable across GPU models and driver versions. +**RDShaderSPIRV** represents an :ref:`RDShaderFile`'s `SPIR-V `__ code for various shader stages, as well as possible compilation error messages. SPIR-V is a low-level intermediate shader representation. This intermediate representation is not used directly by GPUs for rendering, but it can be compiled into binary shaders that GPUs can understand. Unlike compiled shaders, SPIR-V is portable across GPU models and driver versions. This object is used by :ref:`RenderingDevice`. @@ -310,6 +310,7 @@ Sets the SPIR-V ``bytecode`` for the given shader ``stage``. Equivalent to setti Sets the compilation error message for the given shader ``stage`` to ``compile_error``. Equivalent to setting one of :ref:`compile_error_compute`, :ref:`compile_error_fragment`, :ref:`compile_error_tesselation_control`, :ref:`compile_error_tesselation_evaluation`, :ref:`compile_error_vertex`. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_rdtextureformat.rst b/classes/class_rdtextureformat.rst index 411f88b4a..5c7b9acd2 100644 --- a/classes/class_rdtextureformat.rst +++ b/classes/class_rdtextureformat.rst @@ -291,6 +291,7 @@ Adds ``format`` as a valid format for the corresponding :ref:`RDTextureView`'s :ref:`RDTextureView.format_override` property can be set to. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_rdtextureview.rst b/classes/class_rdtextureview.rst index 5e5f54c16..0643147fa 100644 --- a/classes/class_rdtextureview.rst +++ b/classes/class_rdtextureview.rst @@ -30,7 +30,7 @@ Properties :widths: auto +------------------------------------------------------------+----------------------------------------------------------------------+---------+ - | :ref:`DataFormat` | :ref:`format_override` | ``218`` | + | :ref:`DataFormat` | :ref:`format_override` | ``232`` | +------------------------------------------------------------+----------------------------------------------------------------------+---------+ | :ref:`TextureSwizzle` | :ref:`swizzle_a` | ``6`` | +------------------------------------------------------------+----------------------------------------------------------------------+---------+ @@ -54,7 +54,7 @@ Property Descriptions .. rst-class:: classref-property -:ref:`DataFormat` **format_override** = ``218`` :ref:`🔗` +:ref:`DataFormat` **format_override** = ``232`` :ref:`🔗` .. rst-class:: classref-property-setget @@ -132,6 +132,7 @@ The channel to sample when sampling the green color channel. The channel to sample when sampling the red color channel. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_rduniform.rst b/classes/class_rduniform.rst index e9f8c6f7c..6c8272eee 100644 --- a/classes/class_rduniform.rst +++ b/classes/class_rduniform.rst @@ -132,6 +132,7 @@ Unbinds all ids currently bound to the uniform. Returns an array of all ids currently bound to the uniform. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_rdvertexattribute.rst b/classes/class_rdvertexattribute.rst index d8c35a411..52316adbd 100644 --- a/classes/class_rdvertexattribute.rst +++ b/classes/class_rdvertexattribute.rst @@ -30,7 +30,7 @@ Properties :widths: auto +--------------------------------------------------------------+--------------------------------------------------------------+---------+ - | :ref:`DataFormat` | :ref:`format` | ``218`` | + | :ref:`DataFormat` | :ref:`format` | ``232`` | +--------------------------------------------------------------+--------------------------------------------------------------+---------+ | :ref:`VertexFrequency` | :ref:`frequency` | ``0`` | +--------------------------------------------------------------+--------------------------------------------------------------+---------+ @@ -54,7 +54,7 @@ Property Descriptions .. rst-class:: classref-property -:ref:`DataFormat` **format** = ``218`` :ref:`🔗` +:ref:`DataFormat` **format** = ``232`` :ref:`🔗` .. rst-class:: classref-property-setget @@ -132,6 +132,7 @@ The number of bytes between the start of the vertex buffer and the first instanc The number of bytes between the starts of consecutive instances of this attribute. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_rect2.rst b/classes/class_rect2.rst index 364c6f955..7ef3ead49 100644 --- a/classes/class_rect2.rst +++ b/classes/class_rect2.rst @@ -298,14 +298,14 @@ Returns a copy of this rectangle expanded to align the edges with the given ``to .. code-tab:: gdscript var rect = Rect2(0, 0, 5, 2) - + rect = rect.expand(Vector2(10, 0)) # rect is Rect2(0, 0, 10, 2) rect = rect.expand(Vector2(-5, 5)) # rect is Rect2(-5, 0, 15, 5) .. code-tab:: csharp var rect = new Rect2(0, 0, 5, 2); - + rect = rect.Expand(new Vector2(10, 0)); // rect is Rect2(0, 0, 10, 2) rect = rect.Expand(new Vector2(-5, 5)); // rect is Rect2(-5, 0, 15, 5) @@ -443,14 +443,14 @@ Returns the intersection between this rectangle and ``b``. If the rectangles do var rect1 = Rect2(0, 0, 5, 10) var rect2 = Rect2(2, 0, 8, 4) - + var a = rect1.intersection(rect2) # a is Rect2(2, 0, 3, 4) .. code-tab:: csharp var rect1 = new Rect2(0, 0, 5, 10); var rect2 = new Rect2(2, 0, 8, 4); - + var a = rect1.Intersection(rect2); // a is Rect2(2, 0, 3, 4) @@ -555,6 +555,7 @@ Returns ``true`` if both :ref:`position` and :ref \ **Note:** Due to floating-point precision errors, consider using :ref:`is_equal_approx()` instead, which is more reliable. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_rect2i.rst b/classes/class_rect2i.rst index a2f11b7e6..3feee0e1a 100644 --- a/classes/class_rect2i.rst +++ b/classes/class_rect2i.rst @@ -288,14 +288,14 @@ Returns a copy of this rectangle expanded to align the edges with the given ``to .. code-tab:: gdscript var rect = Rect2i(0, 0, 5, 2) - + rect = rect.expand(Vector2i(10, 0)) # rect is Rect2i(0, 0, 10, 2) rect = rect.expand(Vector2i(-5, 5)) # rect is Rect2i(-5, 0, 15, 5) .. code-tab:: csharp var rect = new Rect2I(0, 0, 5, 2); - + rect = rect.Expand(new Vector2I(10, 0)); // rect is Rect2I(0, 0, 10, 2) rect = rect.Expand(new Vector2I(-5, 5)); // rect is Rect2I(-5, 0, 15, 5) @@ -423,14 +423,14 @@ Returns the intersection between this rectangle and ``b``. If the rectangles do var a = Rect2i(0, 0, 5, 10) var b = Rect2i(2, 0, 8, 4) - + var c = a.intersection(b) # c is Rect2i(2, 0, 3, 4) .. code-tab:: csharp var a = new Rect2I(0, 0, 5, 10); var b = new Rect2I(2, 0, 8, 4); - + var c = rect1.Intersection(rect2); // c is Rect2I(2, 0, 3, 4) @@ -491,6 +491,7 @@ Returns ``true`` if the :ref:`position` or :ref: Returns ``true`` if both :ref:`position` and :ref:`size` of the rectangles are equal, respectively. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_rectangleshape2d.rst b/classes/class_rectangleshape2d.rst index 941b35d5a..289b5531a 100644 --- a/classes/class_rectangleshape2d.rst +++ b/classes/class_rectangleshape2d.rst @@ -67,6 +67,7 @@ Property Descriptions The rectangle's width and height. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_refcounted.rst b/classes/class_refcounted.rst index 6ed715a9a..a7fc49efb 100644 --- a/classes/class_refcounted.rst +++ b/classes/class_refcounted.rst @@ -12,7 +12,7 @@ RefCounted **Inherits:** :ref:`Object` -**Inherited By:** :ref:`AESContext`, :ref:`AStar2D`, :ref:`AStar3D`, :ref:`AStarGrid2D`, :ref:`AudioEffectInstance`, :ref:`AudioSample`, :ref:`AudioSamplePlayback`, :ref:`AudioStreamPlayback`, :ref:`CameraFeed`, :ref:`CharFXTransform`, :ref:`ConfigFile`, :ref:`Crypto`, :ref:`DirAccess`, :ref:`DTLSServer`, :ref:`EditorContextMenuPlugin`, :ref:`EditorDebuggerPlugin`, :ref:`EditorDebuggerSession`, :ref:`EditorExportPlatform`, :ref:`EditorExportPlugin`, :ref:`EditorExportPreset`, :ref:`EditorFeatureProfile`, :ref:`EditorFileSystemImportFormatSupportQuery`, :ref:`EditorInspectorPlugin`, :ref:`EditorResourceConversionPlugin`, :ref:`EditorResourcePreviewGenerator`, :ref:`EditorResourceTooltipPlugin`, :ref:`EditorSceneFormatImporter`, :ref:`EditorScenePostImport`, :ref:`EditorScenePostImportPlugin`, :ref:`EditorScript`, :ref:`EditorTranslationParserPlugin`, :ref:`EncodedObjectAsID`, :ref:`ENetConnection`, :ref:`EngineProfiler`, :ref:`Expression`, :ref:`FileAccess`, :ref:`GLTFObjectModelProperty`, :ref:`HashingContext`, :ref:`HMACContext`, :ref:`HTTPClient`, :ref:`ImageFormatLoader`, :ref:`JavaClass`, :ref:`JavaObject`, :ref:`JavaScriptObject`, :ref:`KinematicCollision2D`, :ref:`KinematicCollision3D`, :ref:`Lightmapper`, :ref:`MeshConvexDecompositionSettings`, :ref:`MeshDataTool`, :ref:`MultiplayerAPI`, :ref:`Mutex`, :ref:`NavigationPathQueryParameters2D`, :ref:`NavigationPathQueryParameters3D`, :ref:`NavigationPathQueryResult2D`, :ref:`NavigationPathQueryResult3D`, :ref:`Node3DGizmo`, :ref:`OggPacketSequencePlayback`, :ref:`OpenXRAPIExtension`, :ref:`PackedDataContainerRef`, :ref:`PacketPeer`, :ref:`PCKPacker`, :ref:`PhysicsPointQueryParameters2D`, :ref:`PhysicsPointQueryParameters3D`, :ref:`PhysicsRayQueryParameters2D`, :ref:`PhysicsRayQueryParameters3D`, :ref:`PhysicsShapeQueryParameters2D`, :ref:`PhysicsShapeQueryParameters3D`, :ref:`PhysicsTestMotionParameters2D`, :ref:`PhysicsTestMotionParameters3D`, :ref:`PhysicsTestMotionResult2D`, :ref:`PhysicsTestMotionResult3D`, :ref:`RandomNumberGenerator`, :ref:`RDAttachmentFormat`, :ref:`RDFramebufferPass`, :ref:`RDPipelineColorBlendState`, :ref:`RDPipelineColorBlendStateAttachment`, :ref:`RDPipelineDepthStencilState`, :ref:`RDPipelineMultisampleState`, :ref:`RDPipelineRasterizationState`, :ref:`RDPipelineSpecializationConstant`, :ref:`RDSamplerState`, :ref:`RDShaderSource`, :ref:`RDTextureFormat`, :ref:`RDTextureView`, :ref:`RDUniform`, :ref:`RDVertexAttribute`, :ref:`RegEx`, :ref:`RegExMatch`, :ref:`RenderSceneBuffers`, :ref:`RenderSceneBuffersConfiguration`, :ref:`Resource`, :ref:`ResourceFormatLoader`, :ref:`ResourceFormatSaver`, :ref:`ResourceImporter`, :ref:`SceneState`, :ref:`SceneTreeTimer`, :ref:`Semaphore`, :ref:`SkinReference`, :ref:`StreamPeer`, :ref:`SurfaceTool`, :ref:`TCPServer`, :ref:`TextLine`, :ref:`TextParagraph`, :ref:`TextServer`, :ref:`Thread`, :ref:`TLSOptions`, :ref:`TranslationDomain`, :ref:`TriangleMesh`, :ref:`Tween`, :ref:`Tweener`, :ref:`UDPServer`, :ref:`UPNP`, :ref:`UPNPDevice`, :ref:`WeakRef`, :ref:`WebRTCPeerConnection`, :ref:`XMLParser`, :ref:`XRInterface`, :ref:`XRPose`, :ref:`XRTracker`, :ref:`ZIPPacker`, :ref:`ZIPReader` +**Inherited By:** :ref:`AESContext`, :ref:`AStar2D`, :ref:`AStar3D`, :ref:`AStarGrid2D`, :ref:`AudioEffectInstance`, :ref:`AudioSample`, :ref:`AudioSamplePlayback`, :ref:`AudioStreamPlayback`, :ref:`CameraFeed`, :ref:`CharFXTransform`, :ref:`ConfigFile`, :ref:`Crypto`, :ref:`DirAccess`, :ref:`DTLSServer`, :ref:`EditorContextMenuPlugin`, :ref:`EditorDebuggerPlugin`, :ref:`EditorDebuggerSession`, :ref:`EditorExportPlatform`, :ref:`EditorExportPlugin`, :ref:`EditorExportPreset`, :ref:`EditorFeatureProfile`, :ref:`EditorFileSystemImportFormatSupportQuery`, :ref:`EditorInspectorPlugin`, :ref:`EditorResourceConversionPlugin`, :ref:`EditorResourcePreviewGenerator`, :ref:`EditorResourceTooltipPlugin`, :ref:`EditorSceneFormatImporter`, :ref:`EditorScenePostImport`, :ref:`EditorScenePostImportPlugin`, :ref:`EditorScript`, :ref:`EditorTranslationParserPlugin`, :ref:`EncodedObjectAsID`, :ref:`ENetConnection`, :ref:`EngineProfiler`, :ref:`Expression`, :ref:`FileAccess`, :ref:`GLTFObjectModelProperty`, :ref:`HashingContext`, :ref:`HMACContext`, :ref:`HTTPClient`, :ref:`ImageFormatLoader`, :ref:`JavaClass`, :ref:`JavaObject`, :ref:`JavaScriptObject`, :ref:`KinematicCollision2D`, :ref:`KinematicCollision3D`, :ref:`Lightmapper`, :ref:`Logger`, :ref:`MeshConvexDecompositionSettings`, :ref:`MeshDataTool`, :ref:`MultiplayerAPI`, :ref:`Mutex`, :ref:`NavigationPathQueryParameters2D`, :ref:`NavigationPathQueryParameters3D`, :ref:`NavigationPathQueryResult2D`, :ref:`NavigationPathQueryResult3D`, :ref:`Node3DGizmo`, :ref:`OggPacketSequencePlayback`, :ref:`OpenXRAPIExtension`, :ref:`OpenXRFutureResult`, :ref:`PackedDataContainerRef`, :ref:`PacketPeer`, :ref:`PCKPacker`, :ref:`PhysicsPointQueryParameters2D`, :ref:`PhysicsPointQueryParameters3D`, :ref:`PhysicsRayQueryParameters2D`, :ref:`PhysicsRayQueryParameters3D`, :ref:`PhysicsShapeQueryParameters2D`, :ref:`PhysicsShapeQueryParameters3D`, :ref:`PhysicsTestMotionParameters2D`, :ref:`PhysicsTestMotionParameters3D`, :ref:`PhysicsTestMotionResult2D`, :ref:`PhysicsTestMotionResult3D`, :ref:`RandomNumberGenerator`, :ref:`RDAttachmentFormat`, :ref:`RDFramebufferPass`, :ref:`RDPipelineColorBlendState`, :ref:`RDPipelineColorBlendStateAttachment`, :ref:`RDPipelineDepthStencilState`, :ref:`RDPipelineMultisampleState`, :ref:`RDPipelineRasterizationState`, :ref:`RDPipelineSpecializationConstant`, :ref:`RDSamplerState`, :ref:`RDShaderSource`, :ref:`RDTextureFormat`, :ref:`RDTextureView`, :ref:`RDUniform`, :ref:`RDVertexAttribute`, :ref:`RegEx`, :ref:`RegExMatch`, :ref:`RenderSceneBuffers`, :ref:`RenderSceneBuffersConfiguration`, :ref:`Resource`, :ref:`ResourceFormatLoader`, :ref:`ResourceFormatSaver`, :ref:`ResourceImporter`, :ref:`SceneState`, :ref:`SceneTreeTimer`, :ref:`ScriptBacktrace`, :ref:`Semaphore`, :ref:`SkinReference`, :ref:`StreamPeer`, :ref:`SurfaceTool`, :ref:`TCPServer`, :ref:`TextLine`, :ref:`TextParagraph`, :ref:`TextServer`, :ref:`Thread`, :ref:`TLSOptions`, :ref:`TranslationDomain`, :ref:`TriangleMesh`, :ref:`Tween`, :ref:`Tweener`, :ref:`UDPServer`, :ref:`UPNP`, :ref:`UPNPDevice`, :ref:`WeakRef`, :ref:`WebRTCPeerConnection`, :ref:`XMLParser`, :ref:`XRInterface`, :ref:`XRPose`, :ref:`XRTracker`, :ref:`ZIPPacker`, :ref:`ZIPReader` Base class for reference-counted objects. @@ -116,6 +116,7 @@ Decrements the internal reference counter. Use this only if you really know what Returns ``true`` if the object should be freed after the decrement, ``false`` otherwise. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_referencerect.rst b/classes/class_referencerect.rst index 7f0adfa02..9b49cb5d0 100644 --- a/classes/class_referencerect.rst +++ b/classes/class_referencerect.rst @@ -12,14 +12,14 @@ ReferenceRect **Inherits:** :ref:`Control` **<** :ref:`CanvasItem` **<** :ref:`Node` **<** :ref:`Object` -A rectangle hint for designing UIs. +A rectangular box for designing UIs. .. rst-class:: classref-introduction-group Description ----------- -A rectangle box that displays only a colored border around its rectangle. It is used to visualize the extents of a :ref:`Control`. +A rectangular box that displays only a colored border around its rectangle (see :ref:`Control.get_rect()`). It can be used to visualize the extents of a :ref:`Control` node, for testing purposes. .. rst-class:: classref-reftable-group @@ -94,6 +94,7 @@ Sets the border width of the **ReferenceRect**. The border grows both inwards an If ``true``, the **ReferenceRect** will only be visible while in editor. Otherwise, **ReferenceRect** will be visible in the running project. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_reflectionprobe.rst b/classes/class_reflectionprobe.rst index d50f977ec..1c88dd3cd 100644 --- a/classes/class_reflectionprobe.rst +++ b/classes/class_reflectionprobe.rst @@ -28,7 +28,7 @@ The **ReflectionProbe** is used to create high-quality reflections at a low perf \ **Note:** Unlike :ref:`VoxelGI` and SDFGI, **ReflectionProbe**\ s only source their environment from a :ref:`WorldEnvironment` node. If you specify an :ref:`Environment` resource within a :ref:`Camera3D` node, it will be ignored by the **ReflectionProbe**. This can lead to incorrect lighting within the **ReflectionProbe**. -\ **Note:** Reflection probes are only supported in the Forward+ and Mobile rendering methods, not Compatibility. When using the Mobile rendering method, only 8 reflection probes can be displayed on each mesh resource. Attempting to display more than 8 reflection probes on a single mesh resource will result in reflection probes flickering in and out as the camera moves. +\ **Note:** When using the Mobile rendering method, only ``8`` reflection probes can be displayed on each mesh resource, while the Compatibility rendering method only supports up to ``2`` reflection probes on each mesh. Attempting to display more than ``8`` reflection probes on a single mesh resource using the Mobile renderer will result in reflection probes flickering in and out as the camera moves, while the Compatibility renderer will not render any additional probes if more than ``2`` reflection probes are being used. \ **Note:** When using the Mobile rendering method, reflection probes will only correctly affect meshes whose visibility AABB intersects with the reflection probe's AABB. If using a shader to deform the mesh in a way that makes it go outside its AABB, :ref:`GeometryInstance3D.extra_cull_margin` must be increased on the mesh. Otherwise, the reflection probe may not be visible on the mesh. @@ -415,6 +415,7 @@ The size of the reflection probe. The larger the size, the more space covered by Sets how frequently the **ReflectionProbe** is updated. Can be :ref:`UPDATE_ONCE` or :ref:`UPDATE_ALWAYS`. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_regex.rst b/classes/class_regex.rst index 167ae2021..308b5b2d0 100644 --- a/classes/class_regex.rst +++ b/classes/class_regex.rst @@ -38,7 +38,7 @@ Using :ref:`search()`, you can find the pattern withi regex.compile("\\w-(\\d+)") var result = regex.search("abc n-0123") if result: - print(result.get_string()) # Would print n-0123 + print(result.get_string()) # Prints "n-0123" The results of capturing groups ``()`` can be retrieved by passing the group number to the various methods in :ref:`RegExMatch`. Group 0 is the default and will always refer to the entire pattern. In the above example, calling ``result.get_string(1)`` would give you ``0123``. @@ -50,15 +50,15 @@ This version of RegEx also supports named capturing groups, and the names can be regex.compile("d(?[0-9]+)|x(?[0-9a-f]+)") var result = regex.search("the number is x2f") if result: - print(result.get_string("digit")) # Would print 2f + print(result.get_string("digit")) # Prints "2f" If you need to process multiple results, :ref:`search_all()` generates a list of all non-overlapping results. This can be combined with a ``for`` loop for convenience. :: + # Prints "01 03 0 3f 42" for result in regex.search_all("d01, d03, d0c, x3f and x42"): print(result.get_string("digit")) - # Would print 01 03 0 3f 42 \ **Example:** Split a string using a RegEx: @@ -69,7 +69,7 @@ If you need to process multiple results, :ref:`search_all()`__ library. You can view the full pattern reference `here `__. @@ -237,6 +237,7 @@ Searches the text for the compiled pattern and replaces it with the specified st The region to search within can be specified with ``offset`` and ``end``. This is useful when searching for another match in the same ``subject`` by calling this method again after a previous success. Note that setting these parameters differs from passing over a shortened string. For example, the start anchor ``^`` is not affected by ``offset``, and the character before ``offset`` will be checked for the word boundary ``\b``. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_regexmatch.rst b/classes/class_regexmatch.rst index c67a4fbfa..9adaaf2dd 100644 --- a/classes/class_regexmatch.rst +++ b/classes/class_regexmatch.rst @@ -170,6 +170,7 @@ Returns the substring of the match from the source string. Capturing groups can Returns an empty string if the group did not match or doesn't exist. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_remotetransform2d.rst b/classes/class_remotetransform2d.rst index 7a3d0395c..fd0f65c09 100644 --- a/classes/class_remotetransform2d.rst +++ b/classes/class_remotetransform2d.rst @@ -163,6 +163,7 @@ Method Descriptions **RemoteTransform2D** caches the remote node. It may not notice if the remote node disappears; :ref:`force_update_cache()` forces it to update the cache again. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_remotetransform3d.rst b/classes/class_remotetransform3d.rst index 885cb79d9..4e4db944b 100644 --- a/classes/class_remotetransform3d.rst +++ b/classes/class_remotetransform3d.rst @@ -163,6 +163,7 @@ Method Descriptions **RemoteTransform3D** caches the remote node. It may not notice if the remote node disappears; :ref:`force_update_cache()` forces it to update the cache again. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_renderdata.rst b/classes/class_renderdata.rst index 38ac0fb68..469962df7 100644 --- a/classes/class_renderdata.rst +++ b/classes/class_renderdata.rst @@ -97,6 +97,7 @@ Returns the :ref:`RenderSceneBuffers` object managing Returns the :ref:`RenderSceneData` object managing this frames scene data. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_renderdataextension.rst b/classes/class_renderdataextension.rst index b6981ea11..c2ed970b4 100644 --- a/classes/class_renderdataextension.rst +++ b/classes/class_renderdataextension.rst @@ -93,6 +93,7 @@ Implement this in GDExtension to return the implementation's :ref:`RenderSceneBu Implement this in GDExtension to return the implementation's :ref:`RenderSceneDataExtension` object. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_renderdatard.rst b/classes/class_renderdatard.rst index 02f36a9d9..e8f5ce65c 100644 --- a/classes/class_renderdatard.rst +++ b/classes/class_renderdatard.rst @@ -26,6 +26,7 @@ This object manages all render data for the rendering device based renderers. \ **Note:** This is an internal rendering server object only exposed for GDExtension plugins. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_renderingdevice.rst b/classes/class_renderingdevice.rst index 88e503e14..a6f87ad6d 100644 --- a/classes/class_renderingdevice.rst +++ b/classes/class_renderingdevice.rst @@ -239,7 +239,7 @@ Methods +------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`RID` | :ref:`texture_create`\ (\ format\: :ref:`RDTextureFormat`, view\: :ref:`RDTextureView`, data\: :ref:`Array`\[:ref:`PackedByteArray`\] = []\ ) | +------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`RID` | :ref:`texture_create_from_extension`\ (\ type\: :ref:`TextureType`, format\: :ref:`DataFormat`, samples\: :ref:`TextureSamples`, usage_flags\: |bitfield|\[:ref:`TextureUsageBits`\], image\: :ref:`int`, width\: :ref:`int`, height\: :ref:`int`, depth\: :ref:`int`, layers\: :ref:`int`\ ) | + | :ref:`RID` | :ref:`texture_create_from_extension`\ (\ type\: :ref:`TextureType`, format\: :ref:`DataFormat`, samples\: :ref:`TextureSamples`, usage_flags\: |bitfield|\[:ref:`TextureUsageBits`\], image\: :ref:`int`, width\: :ref:`int`, height\: :ref:`int`, depth\: :ref:`int`, layers\: :ref:`int`, mipmaps\: :ref:`int` = 1\ ) | +------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`RID` | :ref:`texture_create_shared`\ (\ view\: :ref:`RDTextureView`, with_texture\: :ref:`RID`\ ) | +------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ @@ -359,9 +359,13 @@ enum **DriverResource**: :ref:`🔗` :ref:`DriverResource` **DRIVER_RESOURCE_LOGICAL_DEVICE** = ``0`` -Specific device object based on a physical device. +Specific device object based on a physical device (``rid`` parameter is ignored). -- Vulkan: Vulkan device driver resource (``VkDevice``). (``rid`` argument doesn't apply.) +- Vulkan: Vulkan device driver resource (``VkDevice``). + +- D3D12: D3D12 device driver resource (``ID3D12Device``). + +- Metal: Metal device driver resource (``MTLDevice``). .. _class_RenderingDevice_constant_DRIVER_RESOURCE_PHYSICAL_DEVICE: @@ -369,9 +373,11 @@ Specific device object based on a physical device. :ref:`DriverResource` **DRIVER_RESOURCE_PHYSICAL_DEVICE** = ``1`` -Physical device the specific logical device is based on. +Physical device the specific logical device is based on (``rid`` parameter is ignored). -- Vulkan: ``VkDevice``. (``rid`` argument doesn't apply.) +- Vulkan: ``VkPhysicalDevice``. + +- D3D12: ``IDXGIAdapter``. .. _class_RenderingDevice_constant_DRIVER_RESOURCE_TOPMOST_OBJECT: @@ -379,9 +385,9 @@ Physical device the specific logical device is based on. :ref:`DriverResource` **DRIVER_RESOURCE_TOPMOST_OBJECT** = ``2`` -Top-most graphics API entry object. +Top-most graphics API entry object (``rid`` parameter is ignored). -- Vulkan: ``VkInstance``. (``rid`` argument doesn't apply.) +- Vulkan: ``VkInstance``. .. _class_RenderingDevice_constant_DRIVER_RESOURCE_COMMAND_QUEUE: @@ -389,9 +395,11 @@ Top-most graphics API entry object. :ref:`DriverResource` **DRIVER_RESOURCE_COMMAND_QUEUE** = ``3`` -The main graphics-compute command queue. +The main graphics-compute command queue (``rid`` parameter is ignored). -- Vulkan: ``VkQueue``. (``rid`` argument doesn't apply.) +- Vulkan: ``VkQueue``. + +- Metal: ``MTLCommandQueue``. .. _class_RenderingDevice_constant_DRIVER_RESOURCE_QUEUE_FAMILY: @@ -399,9 +407,9 @@ The main graphics-compute command queue. :ref:`DriverResource` **DRIVER_RESOURCE_QUEUE_FAMILY** = ``4`` -The specific family the main queue belongs to. +The specific family the main queue belongs to (``rid`` parameter is ignored). -- Vulkan: the queue family index, an ``uint32_t``. (``rid`` argument doesn't apply.) +- Vulkan: The queue family index, a ``uint32_t``. .. _class_RenderingDevice_constant_DRIVER_RESOURCE_TEXTURE: @@ -421,6 +429,8 @@ The view of an owned or shared texture. - Vulkan: ``VkImageView``. +- D3D12: ``ID3D12Resource``. + .. _class_RenderingDevice_constant_DRIVER_RESOURCE_TEXTURE_DATA_FORMAT: .. rst-class:: classref-enumeration-constant @@ -431,6 +441,8 @@ The native id of the data format of the texture. - Vulkan: ``VkFormat``. +- D3D12: ``DXGI_FORMAT``. + .. _class_RenderingDevice_constant_DRIVER_RESOURCE_SAMPLER: .. rst-class:: classref-enumeration-constant @@ -457,6 +469,8 @@ Buffer of any kind of (storage, vertex, etc.). - Vulkan: ``VkBuffer``. +- D3D12: ``ID3D12Resource``. + .. _class_RenderingDevice_constant_DRIVER_RESOURCE_COMPUTE_PIPELINE: .. rst-class:: classref-enumeration-constant @@ -465,6 +479,8 @@ Buffer of any kind of (storage, vertex, etc.). - Vulkan: ``VkPipeline``. +- Metal: ``MTLComputePipelineState``. + .. _class_RenderingDevice_constant_DRIVER_RESOURCE_RENDER_PIPELINE: .. rst-class:: classref-enumeration-constant @@ -473,6 +489,8 @@ Buffer of any kind of (storage, vertex, etc.). - Vulkan: ``VkPipeline``. +- Metal: ``MTLRenderPipelineState``. + .. _class_RenderingDevice_constant_DRIVER_RESOURCE_VULKAN_DEVICE: .. rst-class:: classref-enumeration-constant @@ -845,7 +863,7 @@ Alpha/red/green/blue channel data format with 1 bit of alpha, 5 bits of red, 6 b :ref:`DataFormat` **DATA_FORMAT_R8G8B8_SRGB** = ``28`` -8-bit-per-channel unsigned floating-point red/green/blue/blue channel data format with normalized value and non-linear sRGB encoding. Values are in the ``[0.0, 1.0]`` range. +8-bit-per-channel unsigned floating-point red/green/blue channel data format with normalized value and non-linear sRGB encoding. Values are in the ``[0.0, 1.0]`` range. .. _class_RenderingDevice_constant_DATA_FORMAT_B8G8R8_UNORM: @@ -2359,11 +2377,179 @@ VRAM-compressed unsigned floating-point data format with normalized value and no 16-bit-per-channel unsigned floating-point green/blue/red channel data with normalized value, plus 6 unused bits after each channel. Stored across 3 separate planes (green + blue + red). Values are in the ``[0.0, 1.0]`` range. +.. _class_RenderingDevice_constant_DATA_FORMAT_ASTC_4x4_SFLOAT_BLOCK: + +.. rst-class:: classref-enumeration-constant + +:ref:`DataFormat` **DATA_FORMAT_ASTC_4x4_SFLOAT_BLOCK** = ``218`` + +.. container:: contribute + + There is currently no description for this enum. Please help us by `contributing one `__! + + + +.. _class_RenderingDevice_constant_DATA_FORMAT_ASTC_5x4_SFLOAT_BLOCK: + +.. rst-class:: classref-enumeration-constant + +:ref:`DataFormat` **DATA_FORMAT_ASTC_5x4_SFLOAT_BLOCK** = ``219`` + +.. container:: contribute + + There is currently no description for this enum. Please help us by `contributing one `__! + + + +.. _class_RenderingDevice_constant_DATA_FORMAT_ASTC_5x5_SFLOAT_BLOCK: + +.. rst-class:: classref-enumeration-constant + +:ref:`DataFormat` **DATA_FORMAT_ASTC_5x5_SFLOAT_BLOCK** = ``220`` + +.. container:: contribute + + There is currently no description for this enum. Please help us by `contributing one `__! + + + +.. _class_RenderingDevice_constant_DATA_FORMAT_ASTC_6x5_SFLOAT_BLOCK: + +.. rst-class:: classref-enumeration-constant + +:ref:`DataFormat` **DATA_FORMAT_ASTC_6x5_SFLOAT_BLOCK** = ``221`` + +.. container:: contribute + + There is currently no description for this enum. Please help us by `contributing one `__! + + + +.. _class_RenderingDevice_constant_DATA_FORMAT_ASTC_6x6_SFLOAT_BLOCK: + +.. rst-class:: classref-enumeration-constant + +:ref:`DataFormat` **DATA_FORMAT_ASTC_6x6_SFLOAT_BLOCK** = ``222`` + +.. container:: contribute + + There is currently no description for this enum. Please help us by `contributing one `__! + + + +.. _class_RenderingDevice_constant_DATA_FORMAT_ASTC_8x5_SFLOAT_BLOCK: + +.. rst-class:: classref-enumeration-constant + +:ref:`DataFormat` **DATA_FORMAT_ASTC_8x5_SFLOAT_BLOCK** = ``223`` + +.. container:: contribute + + There is currently no description for this enum. Please help us by `contributing one `__! + + + +.. _class_RenderingDevice_constant_DATA_FORMAT_ASTC_8x6_SFLOAT_BLOCK: + +.. rst-class:: classref-enumeration-constant + +:ref:`DataFormat` **DATA_FORMAT_ASTC_8x6_SFLOAT_BLOCK** = ``224`` + +.. container:: contribute + + There is currently no description for this enum. Please help us by `contributing one `__! + + + +.. _class_RenderingDevice_constant_DATA_FORMAT_ASTC_8x8_SFLOAT_BLOCK: + +.. rst-class:: classref-enumeration-constant + +:ref:`DataFormat` **DATA_FORMAT_ASTC_8x8_SFLOAT_BLOCK** = ``225`` + +.. container:: contribute + + There is currently no description for this enum. Please help us by `contributing one `__! + + + +.. _class_RenderingDevice_constant_DATA_FORMAT_ASTC_10x5_SFLOAT_BLOCK: + +.. rst-class:: classref-enumeration-constant + +:ref:`DataFormat` **DATA_FORMAT_ASTC_10x5_SFLOAT_BLOCK** = ``226`` + +.. container:: contribute + + There is currently no description for this enum. Please help us by `contributing one `__! + + + +.. _class_RenderingDevice_constant_DATA_FORMAT_ASTC_10x6_SFLOAT_BLOCK: + +.. rst-class:: classref-enumeration-constant + +:ref:`DataFormat` **DATA_FORMAT_ASTC_10x6_SFLOAT_BLOCK** = ``227`` + +.. container:: contribute + + There is currently no description for this enum. Please help us by `contributing one `__! + + + +.. _class_RenderingDevice_constant_DATA_FORMAT_ASTC_10x8_SFLOAT_BLOCK: + +.. rst-class:: classref-enumeration-constant + +:ref:`DataFormat` **DATA_FORMAT_ASTC_10x8_SFLOAT_BLOCK** = ``228`` + +.. container:: contribute + + There is currently no description for this enum. Please help us by `contributing one `__! + + + +.. _class_RenderingDevice_constant_DATA_FORMAT_ASTC_10x10_SFLOAT_BLOCK: + +.. rst-class:: classref-enumeration-constant + +:ref:`DataFormat` **DATA_FORMAT_ASTC_10x10_SFLOAT_BLOCK** = ``229`` + +.. container:: contribute + + There is currently no description for this enum. Please help us by `contributing one `__! + + + +.. _class_RenderingDevice_constant_DATA_FORMAT_ASTC_12x10_SFLOAT_BLOCK: + +.. rst-class:: classref-enumeration-constant + +:ref:`DataFormat` **DATA_FORMAT_ASTC_12x10_SFLOAT_BLOCK** = ``230`` + +.. container:: contribute + + There is currently no description for this enum. Please help us by `contributing one `__! + + + +.. _class_RenderingDevice_constant_DATA_FORMAT_ASTC_12x12_SFLOAT_BLOCK: + +.. rst-class:: classref-enumeration-constant + +:ref:`DataFormat` **DATA_FORMAT_ASTC_12x12_SFLOAT_BLOCK** = ``231`` + +.. container:: contribute + + There is currently no description for this enum. Please help us by `contributing one `__! + + + .. _class_RenderingDevice_constant_DATA_FORMAT_MAX: .. rst-class:: classref-enumeration-constant -:ref:`DataFormat` **DATA_FORMAT_MAX** = ``218`` +:ref:`DataFormat` **DATA_FORMAT_MAX** = ``232`` Represents the size of the :ref:`DataFormat` enum. @@ -2887,7 +3073,7 @@ Return a floating-point transparent black color when sampling outside the ``[0.0 :ref:`SamplerBorderColor` **SAMPLER_BORDER_COLOR_INT_TRANSPARENT_BLACK** = ``1`` -Return a integer transparent black color when sampling outside the ``[0.0, 1.0]`` range. Only effective if the sampler repeat mode is :ref:`SAMPLER_REPEAT_MODE_CLAMP_TO_BORDER`. +Return an integer transparent black color when sampling outside the ``[0.0, 1.0]`` range. Only effective if the sampler repeat mode is :ref:`SAMPLER_REPEAT_MODE_CLAMP_TO_BORDER`. .. _class_RenderingDevice_constant_SAMPLER_BORDER_COLOR_FLOAT_OPAQUE_BLACK: @@ -2903,7 +3089,7 @@ Return a floating-point opaque black color when sampling outside the ``[0.0, 1.0 :ref:`SamplerBorderColor` **SAMPLER_BORDER_COLOR_INT_OPAQUE_BLACK** = ``3`` -Return a integer opaque black color when sampling outside the ``[0.0, 1.0]`` range. Only effective if the sampler repeat mode is :ref:`SAMPLER_REPEAT_MODE_CLAMP_TO_BORDER`. +Return an integer opaque black color when sampling outside the ``[0.0, 1.0]`` range. Only effective if the sampler repeat mode is :ref:`SAMPLER_REPEAT_MODE_CLAMP_TO_BORDER`. .. _class_RenderingDevice_constant_SAMPLER_BORDER_COLOR_FLOAT_OPAQUE_WHITE: @@ -2919,7 +3105,7 @@ Return a floating-point opaque white color when sampling outside the ``[0.0, 1.0 :ref:`SamplerBorderColor` **SAMPLER_BORDER_COLOR_INT_OPAQUE_WHITE** = ``5`` -Return a integer opaque white color when sampling outside the ``[0.0, 1.0]`` range. Only effective if the sampler repeat mode is :ref:`SAMPLER_REPEAT_MODE_CLAMP_TO_BORDER`. +Return an integer opaque white color when sampling outside the ``[0.0, 1.0]`` range. Only effective if the sampler repeat mode is :ref:`SAMPLER_REPEAT_MODE_CLAMP_TO_BORDER`. .. _class_RenderingDevice_constant_SAMPLER_BORDER_COLOR_MAX: @@ -2999,7 +3185,7 @@ flags **StorageBufferUsage**: :ref:`🔗`! + There is currently no description for this enum. Please help us by `contributing one `__! @@ -3027,10 +3213,10 @@ Optionally, set this flag if you wish to use :ref:`buffer_get_device_address()`__\ - **Note:** Adjacency is only useful with geometry shaders, which Godot does not expose. +\ **Note:** Adjacency is only useful with geometry shaders, which Godot does not expose. .. _class_RenderingDevice_constant_RENDER_PRIMITIVE_TRIANGLE_STRIPS: @@ -3888,7 +4074,7 @@ Allows dynamically changing the depth bias. .. container:: contribute - There is currently no description for this enum. Please help us by :ref:`contributing one `! + There is currently no description for this enum. Please help us by `contributing one `__! @@ -3900,7 +4086,7 @@ Allows dynamically changing the depth bias. .. container:: contribute - There is currently no description for this enum. Please help us by :ref:`contributing one `! + There is currently no description for this enum. Please help us by `contributing one `__! @@ -3912,7 +4098,7 @@ Allows dynamically changing the depth bias. .. container:: contribute - There is currently no description for this enum. Please help us by :ref:`contributing one `! + There is currently no description for this enum. Please help us by `contributing one `__! @@ -3924,7 +4110,7 @@ Allows dynamically changing the depth bias. .. container:: contribute - There is currently no description for this enum. Please help us by :ref:`contributing one `! + There is currently no description for this enum. Please help us by `contributing one `__! @@ -3936,7 +4122,7 @@ Allows dynamically changing the depth bias. .. container:: contribute - There is currently no description for this enum. Please help us by :ref:`contributing one `! + There is currently no description for this enum. Please help us by `contributing one `__! @@ -4268,6 +4454,22 @@ Floating-point specialization constant. enum **Features**: :ref:`🔗` +.. _class_RenderingDevice_constant_SUPPORTS_METALFX_SPATIAL: + +.. rst-class:: classref-enumeration-constant + +:ref:`Features` **SUPPORTS_METALFX_SPATIAL** = ``3`` + +Support for MetalFX spatial upscaling. + +.. _class_RenderingDevice_constant_SUPPORTS_METALFX_TEMPORAL: + +.. rst-class:: classref-enumeration-constant + +:ref:`Features` **SUPPORTS_METALFX_TEMPORAL** = ``4`` + +Support for MetalFX temporal upscaling. + .. _class_RenderingDevice_constant_SUPPORTS_BUFFER_DEVICE_ADDRESS: .. rst-class:: classref-enumeration-constant @@ -4276,6 +4478,14 @@ enum **Features**: :ref:`🔗` Features support for buffer device address extension. +.. _class_RenderingDevice_constant_SUPPORTS_IMAGE_ATOMIC_32_BIT: + +.. rst-class:: classref-enumeration-constant + +:ref:`Features` **SUPPORTS_IMAGE_ATOMIC_32_BIT** = ``7`` + +Support for 32-bit image atomic operations. + .. rst-class:: classref-item-separator ---- @@ -4652,11 +4862,7 @@ enum **BreadcrumbMarker**: :ref:`🔗` :ref:`BreadcrumbMarker` **NONE** = ``0`` -.. container:: contribute - - There is currently no description for this enum. Please help us by :ref:`contributing one `! - - +No breadcrumb marker will be added. .. _class_RenderingDevice_constant_REFLECTION_PROBES: @@ -4664,11 +4870,7 @@ enum **BreadcrumbMarker**: :ref:`🔗` :ref:`BreadcrumbMarker` **REFLECTION_PROBES** = ``65536`` -.. container:: contribute - - There is currently no description for this enum. Please help us by :ref:`contributing one `! - - +During a GPU crash in dev or debug mode, Godot's error message will include ``"REFLECTION_PROBES"`` for added context as to when the crash occurred. .. _class_RenderingDevice_constant_SKY_PASS: @@ -4676,11 +4878,7 @@ enum **BreadcrumbMarker**: :ref:`🔗` :ref:`BreadcrumbMarker` **SKY_PASS** = ``131072`` -.. container:: contribute - - There is currently no description for this enum. Please help us by :ref:`contributing one `! - - +During a GPU crash in dev or debug mode, Godot's error message will include ``"SKY_PASS"`` for added context as to when the crash occurred. .. _class_RenderingDevice_constant_LIGHTMAPPER_PASS: @@ -4688,11 +4886,7 @@ enum **BreadcrumbMarker**: :ref:`🔗` :ref:`BreadcrumbMarker` **LIGHTMAPPER_PASS** = ``196608`` -.. container:: contribute - - There is currently no description for this enum. Please help us by :ref:`contributing one `! - - +During a GPU crash in dev or debug mode, Godot's error message will include ``"LIGHTMAPPER_PASS"`` for added context as to when the crash occurred. .. _class_RenderingDevice_constant_SHADOW_PASS_DIRECTIONAL: @@ -4700,11 +4894,7 @@ enum **BreadcrumbMarker**: :ref:`🔗` :ref:`BreadcrumbMarker` **SHADOW_PASS_DIRECTIONAL** = ``262144`` -.. container:: contribute - - There is currently no description for this enum. Please help us by :ref:`contributing one `! - - +During a GPU crash in dev or debug mode, Godot's error message will include ``"SHADOW_PASS_DIRECTIONAL"`` for added context as to when the crash occurred. .. _class_RenderingDevice_constant_SHADOW_PASS_CUBE: @@ -4712,11 +4902,7 @@ enum **BreadcrumbMarker**: :ref:`🔗` :ref:`BreadcrumbMarker` **SHADOW_PASS_CUBE** = ``327680`` -.. container:: contribute - - There is currently no description for this enum. Please help us by :ref:`contributing one `! - - +During a GPU crash in dev or debug mode, Godot's error message will include ``"SHADOW_PASS_CUBE"`` for added context as to when the crash occurred. .. _class_RenderingDevice_constant_OPAQUE_PASS: @@ -4724,11 +4910,7 @@ enum **BreadcrumbMarker**: :ref:`🔗` :ref:`BreadcrumbMarker` **OPAQUE_PASS** = ``393216`` -.. container:: contribute - - There is currently no description for this enum. Please help us by :ref:`contributing one `! - - +During a GPU crash in dev or debug mode, Godot's error message will include ``"OPAQUE_PASS"`` for added context as to when the crash occurred. .. _class_RenderingDevice_constant_ALPHA_PASS: @@ -4736,11 +4918,7 @@ enum **BreadcrumbMarker**: :ref:`🔗` :ref:`BreadcrumbMarker` **ALPHA_PASS** = ``458752`` -.. container:: contribute - - There is currently no description for this enum. Please help us by :ref:`contributing one `! - - +During a GPU crash in dev or debug mode, Godot's error message will include ``"ALPHA_PASS"`` for added context as to when the crash occurred. .. _class_RenderingDevice_constant_TRANSPARENT_PASS: @@ -4748,11 +4926,7 @@ enum **BreadcrumbMarker**: :ref:`🔗` :ref:`BreadcrumbMarker` **TRANSPARENT_PASS** = ``524288`` -.. container:: contribute - - There is currently no description for this enum. Please help us by :ref:`contributing one `! - - +During a GPU crash in dev or debug mode, Godot's error message will include ``"TRANSPARENT_PASS"`` for added context as to when the crash occurred. .. _class_RenderingDevice_constant_POST_PROCESSING_PASS: @@ -4760,11 +4934,7 @@ enum **BreadcrumbMarker**: :ref:`🔗` :ref:`BreadcrumbMarker` **POST_PROCESSING_PASS** = ``589824`` -.. container:: contribute - - There is currently no description for this enum. Please help us by :ref:`contributing one `! - - +During a GPU crash in dev or debug mode, Godot's error message will include ``"POST_PROCESSING_PASS"`` for added context as to when the crash occurred. .. _class_RenderingDevice_constant_BLIT_PASS: @@ -4772,11 +4942,7 @@ enum **BreadcrumbMarker**: :ref:`🔗` :ref:`BreadcrumbMarker` **BLIT_PASS** = ``655360`` -.. container:: contribute - - There is currently no description for this enum. Please help us by :ref:`contributing one `! - - +During a GPU crash in dev or debug mode, Godot's error message will include ``"BLIT_PASS"`` for added context as to when the crash occurred. .. _class_RenderingDevice_constant_UI_PASS: @@ -4784,11 +4950,7 @@ enum **BreadcrumbMarker**: :ref:`🔗` :ref:`BreadcrumbMarker` **UI_PASS** = ``720896`` -.. container:: contribute - - There is currently no description for this enum. Please help us by :ref:`contributing one `! - - +During a GPU crash in dev or debug mode, Godot's error message will include ``"UI_PASS"`` for added context as to when the crash occurred. .. _class_RenderingDevice_constant_DEBUG_PASS: @@ -4796,11 +4958,7 @@ enum **BreadcrumbMarker**: :ref:`🔗` :ref:`BreadcrumbMarker` **DEBUG_PASS** = ``786432`` -.. container:: contribute - - There is currently no description for this enum. Please help us by :ref:`contributing one `! - - +During a GPU crash in dev or debug mode, Godot's error message will include ``"DEBUG_PASS"`` for added context as to when the crash occurred. .. rst-class:: classref-item-separator @@ -5148,9 +5306,9 @@ Asynchronous version of :ref:`buffer_get_data()` or :ref:`texture_set_discardable()`. @@ -6014,7 +6172,7 @@ This is only used by Vulkan in debug builds and can return 0 when this informati :ref:`int` **get_driver_resource**\ (\ resource\: :ref:`DriverResource`, rid\: :ref:`RID`, index\: :ref:`int`\ ) :ref:`🔗` -Returns the unique identifier of the driver ``resource`` for the specified ``rid``. Some driver resource types ignore the specified ``rid`` (see :ref:`DriverResource` descriptions). ``index`` is always ignored but must be specified anyway. +Returns the unique identifier of the driver ``resource`` for the specified ``rid``. Some driver resource types ignore the specified ``rid``. ``index`` is always ignored but must be specified anyway. .. rst-class:: classref-item-separator @@ -6102,7 +6260,7 @@ This is only used by Vulkan in debug builds. Godot must also be started with the :ref:`int` **get_tracked_object_type_count**\ (\ ) |const| :ref:`🔗` -Returns how many types of trackable objects are. +Returns how many types of trackable objects there are. This is only used by Vulkan in debug builds. Godot must also be started with the ``--extra-gpu-memory-tracking`` :doc:`command line argument <../tutorials/editor/command_line_tutorial>`. @@ -6294,7 +6452,7 @@ Compiles a binary shader from ``spirv_data`` and returns the compiled binary dat :ref:`RDShaderSPIRV` **shader_compile_spirv_from_source**\ (\ shader_source\: :ref:`RDShaderSource`, allow_cache\: :ref:`bool` = true\ ) :ref:`🔗` -Compiles a SPIR-V from the shader source code in ``shader_source`` and returns the SPIR-V as a :ref:`RDShaderSPIRV`. This intermediate language shader is portable across different GPU models and driver versions, but cannot be run directly by GPUs until compiled into a binary shader using :ref:`shader_compile_binary_from_spirv()`. +Compiles a SPIR-V from the shader source code in ``shader_source`` and returns the SPIR-V as an :ref:`RDShaderSPIRV`. This intermediate language shader is portable across different GPU models and driver versions, but cannot be run directly by GPUs until compiled into a binary shader using :ref:`shader_compile_binary_from_spirv()`. If ``allow_cache`` is ``true``, make use of the shader cache generated by Godot. This avoids a potentially lengthy shader compilation step if the shader is already in cache. If ``allow_cache`` is ``false``, Godot's shader cache is ignored and the shader will always be recompiled. @@ -6458,6 +6616,8 @@ Creates a new texture. It can be accessed with the RID that is returned. Once finished with your RID, you will want to free the RID using the RenderingDevice's :ref:`free_rid()` method. +\ **Note:** ``data`` takes an :ref:`Array` of :ref:`PackedByteArray`\ s. For :ref:`TEXTURE_TYPE_1D`, :ref:`TEXTURE_TYPE_2D`, and :ref:`TEXTURE_TYPE_3D` types, this array should only have one element, a :ref:`PackedByteArray` containing all the data for the texture. For ``_ARRAY`` and ``_CUBE`` types, the length should be the same as the number of :ref:`RDTextureFormat.array_layers` in ``format``. + \ **Note:** Not to be confused with :ref:`RenderingServer.texture_2d_create()`, which creates the Godot-specific :ref:`Texture2D` resource as opposed to the graphics API's own texture type. .. rst-class:: classref-item-separator @@ -6468,9 +6628,9 @@ Once finished with your RID, you will want to free the RID using the RenderingDe .. rst-class:: classref-method -:ref:`RID` **texture_create_from_extension**\ (\ type\: :ref:`TextureType`, format\: :ref:`DataFormat`, samples\: :ref:`TextureSamples`, usage_flags\: |bitfield|\[:ref:`TextureUsageBits`\], image\: :ref:`int`, width\: :ref:`int`, height\: :ref:`int`, depth\: :ref:`int`, layers\: :ref:`int`\ ) :ref:`🔗` +:ref:`RID` **texture_create_from_extension**\ (\ type\: :ref:`TextureType`, format\: :ref:`DataFormat`, samples\: :ref:`TextureSamples`, usage_flags\: |bitfield|\[:ref:`TextureUsageBits`\], image\: :ref:`int`, width\: :ref:`int`, height\: :ref:`int`, depth\: :ref:`int`, layers\: :ref:`int`, mipmaps\: :ref:`int` = 1\ ) :ref:`🔗` -Returns an RID for an existing ``image`` (``VkImage``) with the given ``type``, ``format``, ``samples``, ``usage_flags``, ``width``, ``height``, ``depth``, and ``layers``. This can be used to allow Godot to render onto foreign images. +Returns an RID for an existing ``image`` (``VkImage``) with the given ``type``, ``format``, ``samples``, ``usage_flags``, ``width``, ``height``, ``depth``, ``layers``, and ``mipmaps``. This can be used to allow Godot to render onto foreign images. .. rst-class:: classref-item-separator @@ -6512,9 +6672,9 @@ For 2D textures (which only have one layer), ``layer`` must be ``0``. Returns the ``texture`` data for the specified ``layer`` as raw binary data. For 2D textures (which only have one layer), ``layer`` must be ``0``. -\ **Note:** ``texture`` can't be retrieved while a draw list that uses it as part of a framebuffer is being created. Ensure the draw list is finalized (and that the color/depth texture using it is not set to :ref:`FINAL_ACTION_CONTINUE`) to retrieve this texture. Otherwise, an error is printed and a empty :ref:`PackedByteArray` is returned. +\ **Note:** ``texture`` can't be retrieved while a draw list that uses it as part of a framebuffer is being created. Ensure the draw list is finalized (and that the color/depth texture using it is not set to :ref:`FINAL_ACTION_CONTINUE`) to retrieve this texture. Otherwise, an error is printed and an empty :ref:`PackedByteArray` is returned. -\ **Note:** ``texture`` requires the :ref:`TEXTURE_USAGE_CAN_COPY_FROM_BIT` to be retrieved. Otherwise, an error is printed and a empty :ref:`PackedByteArray` is returned. +\ **Note:** ``texture`` requires the :ref:`TEXTURE_USAGE_CAN_COPY_FROM_BIT` to be retrieved. Otherwise, an error is printed and an empty :ref:`PackedByteArray` is returned. \ **Note:** This method will block the GPU from working until the data is retrieved. Refer to :ref:`texture_get_data_async()` for an alternative that returns the data in more performant way. @@ -6538,9 +6698,9 @@ Asynchronous version of :ref:`texture_get_data()` **vertex_buffer_create**\ (\ size_bytes\: :ref:`int`, data\: :ref:`PackedByteArray` = PackedByteArray(), creation_bits\: |bitfield|\[:ref:`BufferCreationBits`\] = 0\ ) :ref:`🔗` -It can be accessed with the RID that is returned. +Creates a new vertex buffer. It can be accessed with the RID that is returned. Once finished with your RID, you will want to free the RID using the RenderingDevice's :ref:`free_rid()` method. @@ -6758,6 +6918,7 @@ Once finished with your RID, you will want to free the RID using the RenderingDe Creates a new vertex format with the specified ``vertex_descriptions``. Returns a unique vertex format ID corresponding to the newly created vertex format. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_renderingserver.rst b/classes/class_renderingserver.rst index f444a44cd..e5bda724c 100644 --- a/classes/class_renderingserver.rst +++ b/classes/class_renderingserver.rst @@ -363,6 +363,8 @@ Methods +----------------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`environment_set_fog`\ (\ env\: :ref:`RID`, enable\: :ref:`bool`, light_color\: :ref:`Color`, light_energy\: :ref:`float`, sun_scatter\: :ref:`float`, density\: :ref:`float`, height\: :ref:`float`, height_density\: :ref:`float`, aerial_perspective\: :ref:`float`, sky_affect\: :ref:`float`, fog_mode\: :ref:`EnvironmentFogMode` = 0\ ) | +----------------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`environment_set_fog_depth`\ (\ env\: :ref:`RID`, curve\: :ref:`float`, begin\: :ref:`float`, end\: :ref:`float`\ ) | + +----------------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`environment_set_glow`\ (\ env\: :ref:`RID`, enable\: :ref:`bool`, levels\: :ref:`PackedFloat32Array`, intensity\: :ref:`float`, strength\: :ref:`float`, mix\: :ref:`float`, bloom_threshold\: :ref:`float`, blend_mode\: :ref:`EnvironmentGlowBlendMode`, hdr_bleed_threshold\: :ref:`float`, hdr_bleed_scale\: :ref:`float`, hdr_luminance_cap\: :ref:`float`, glow_map_strength\: :ref:`float`, glow_map\: :ref:`RID`\ ) | +----------------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`environment_set_sdfgi`\ (\ env\: :ref:`RID`, enable\: :ref:`bool`, cascades\: :ref:`int`, min_cell_size\: :ref:`float`, y_scale\: :ref:`EnvironmentSDFGIYScale`, use_occlusion\: :ref:`bool`, bounce_feedback\: :ref:`float`, read_sky\: :ref:`bool`, energy\: :ref:`float`, normal_bias\: :ref:`float`, probe_bias\: :ref:`float`\ ) | @@ -493,8 +495,6 @@ Methods +----------------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`instance_geometry_set_visibility_range`\ (\ instance\: :ref:`RID`, min\: :ref:`float`, max\: :ref:`float`, min_margin\: :ref:`float`, max_margin\: :ref:`float`, fade_mode\: :ref:`VisibilityRangeFadeMode`\ ) | +----------------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`instance_reset_physics_interpolation`\ (\ instance\: :ref:`RID`\ ) | - +----------------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`instance_set_base`\ (\ instance\: :ref:`RID`, base\: :ref:`RID`\ ) | +----------------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`instance_set_blend_shape_weight`\ (\ instance\: :ref:`RID`, shape\: :ref:`int`, weight\: :ref:`float`\ ) | @@ -505,8 +505,6 @@ Methods +----------------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`instance_set_ignore_culling`\ (\ instance\: :ref:`RID`, enabled\: :ref:`bool`\ ) | +----------------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`instance_set_interpolated`\ (\ instance\: :ref:`RID`, interpolated\: :ref:`bool`\ ) | - +----------------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`instance_set_layer_mask`\ (\ instance\: :ref:`RID`, mask\: :ref:`int`\ ) | +----------------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`instance_set_pivot_data`\ (\ instance\: :ref:`RID`, sorting_offset\: :ref:`float`, use_aabb_center\: :ref:`bool`\ ) | @@ -521,6 +519,8 @@ Methods +----------------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`instance_set_visible`\ (\ instance\: :ref:`RID`, visible\: :ref:`bool`\ ) | +----------------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`instance_teleport`\ (\ instance\: :ref:`RID`\ ) | + +----------------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`PackedInt64Array` | :ref:`instances_cull_aabb`\ (\ aabb\: :ref:`AABB`, scenario\: :ref:`RID` = RID()\ ) |const| | +----------------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`PackedInt64Array` | :ref:`instances_cull_convex`\ (\ convex\: :ref:`Array`\[:ref:`Plane`\], scenario\: :ref:`RID` = RID()\ ) |const| | @@ -631,6 +631,8 @@ Methods +----------------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`mesh_surface_get_format_attribute_stride`\ (\ format\: |bitfield|\[:ref:`ArrayFormat`\], vertex_count\: :ref:`int`\ ) |const| | +----------------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`mesh_surface_get_format_index_stride`\ (\ format\: |bitfield|\[:ref:`ArrayFormat`\], vertex_count\: :ref:`int`\ ) |const| | + +----------------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`mesh_surface_get_format_normal_tangent_stride`\ (\ format\: |bitfield|\[:ref:`ArrayFormat`\], vertex_count\: :ref:`int`\ ) |const| | +----------------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`mesh_surface_get_format_offset`\ (\ format\: |bitfield|\[:ref:`ArrayFormat`\], vertex_count\: :ref:`int`, array_index\: :ref:`int`\ ) |const| | @@ -647,6 +649,8 @@ Methods +----------------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`mesh_surface_update_attribute_region`\ (\ mesh\: :ref:`RID`, surface\: :ref:`int`, offset\: :ref:`int`, data\: :ref:`PackedByteArray`\ ) | +----------------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`mesh_surface_update_index_region`\ (\ mesh\: :ref:`RID`, surface\: :ref:`int`, offset\: :ref:`int`, data\: :ref:`PackedByteArray`\ ) | + +----------------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`mesh_surface_update_skin_region`\ (\ mesh\: :ref:`RID`, surface\: :ref:`int`, offset\: :ref:`int`, data\: :ref:`PackedByteArray`\ ) | +----------------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`mesh_surface_update_vertex_region`\ (\ mesh\: :ref:`RID`, surface\: :ref:`int`, offset\: :ref:`int`, data\: :ref:`PackedByteArray`\ ) | @@ -1720,7 +1724,7 @@ Flag used to mark that the array contains 2D vertices. :ref:`ArrayFormat` **ARRAY_FLAG_USE_DYNAMIC_UPDATE** = ``67108864`` -Flag indices that the mesh data will use ``GL_DYNAMIC_DRAW`` on GLES. Unused on Vulkan. +Flag used to mark that the mesh data will use ``GL_DYNAMIC_DRAW`` on GLES. Unused on Vulkan. .. _class_RenderingServer_constant_ARRAY_FLAG_USE_8_BONE_WEIGHTS: @@ -2158,7 +2162,7 @@ Normal bias used to offset shadow lookup by object normal. Can be used to fix se :ref:`LightParam` **LIGHT_PARAM_SHADOW_BIAS** = ``15`` -Bias the shadow lookup to fix self-shadowing artifacts. +Bias for the shadow lookup to fix self-shadowing artifacts. .. _class_RenderingServer_constant_LIGHT_PARAM_SHADOW_PANCAKE_SIZE: @@ -2192,7 +2196,7 @@ Blurs the edges of the shadow. Can be used to hide pixel artifacts in low resolu .. container:: contribute - There is currently no description for this enum. Please help us by :ref:`contributing one `! + There is currently no description for this enum. Please help us by `contributing one `__! @@ -2646,7 +2650,7 @@ enum **ParticlesTransformAlign**: :ref:`🔗`! + There is currently no description for this enum. Please help us by `contributing one `__! @@ -2658,7 +2662,7 @@ enum **ParticlesTransformAlign**: :ref:`🔗`! + There is currently no description for this enum. Please help us by `contributing one `__! @@ -2670,7 +2674,7 @@ enum **ParticlesTransformAlign**: :ref:`🔗`! + There is currently no description for this enum. Please help us by `contributing one `__! @@ -2682,7 +2686,7 @@ enum **ParticlesTransformAlign**: :ref:`🔗`! + There is currently no description for this enum. Please help us by `contributing one `__! @@ -2746,7 +2750,7 @@ enum **ParticlesCollisionType**: :ref:`🔗`! + There is currently no description for this enum. Please help us by `contributing one `__! @@ -2758,7 +2762,7 @@ enum **ParticlesCollisionType**: :ref:`🔗`! + There is currently no description for this enum. Please help us by `contributing one `__! @@ -2770,7 +2774,7 @@ enum **ParticlesCollisionType**: :ref:`🔗`! + There is currently no description for this enum. Please help us by `contributing one `__! @@ -2782,7 +2786,7 @@ enum **ParticlesCollisionType**: :ref:`🔗`! + There is currently no description for this enum. Please help us by `contributing one `__! @@ -2794,7 +2798,7 @@ enum **ParticlesCollisionType**: :ref:`🔗`! + There is currently no description for this enum. Please help us by `contributing one `__! @@ -2806,7 +2810,7 @@ enum **ParticlesCollisionType**: :ref:`🔗`! + There is currently no description for this enum. Please help us by `contributing one `__! @@ -2818,7 +2822,7 @@ enum **ParticlesCollisionType**: :ref:`🔗`! + There is currently no description for this enum. Please help us by `contributing one `__! @@ -2840,7 +2844,7 @@ enum **ParticlesCollisionHeightfieldResolution**: :ref:`🔗`! + There is currently no description for this enum. Please help us by `contributing one `__! @@ -2852,7 +2856,7 @@ enum **ParticlesCollisionHeightfieldResolution**: :ref:`🔗`! + There is currently no description for this enum. Please help us by `contributing one `__! @@ -2864,7 +2868,7 @@ enum **ParticlesCollisionHeightfieldResolution**: :ref:`🔗`! + There is currently no description for this enum. Please help us by `contributing one `__! @@ -2876,7 +2880,7 @@ enum **ParticlesCollisionHeightfieldResolution**: :ref:`🔗`! + There is currently no description for this enum. Please help us by `contributing one `__! @@ -2888,7 +2892,7 @@ enum **ParticlesCollisionHeightfieldResolution**: :ref:`🔗`! + There is currently no description for this enum. Please help us by `contributing one `__! @@ -2900,7 +2904,7 @@ enum **ParticlesCollisionHeightfieldResolution**: :ref:`🔗`! + There is currently no description for this enum. Please help us by `contributing one `__! @@ -2994,7 +2998,7 @@ Use bilinear scaling for the viewport's 3D buffer. The amount of scaling can be :ref:`ViewportScaling3DMode` **VIEWPORT_SCALING_3D_MODE_FSR** = ``1`` -Use AMD FidelityFX Super Resolution 1.0 upscaling for the viewport's 3D buffer. The amount of scaling can be set using :ref:`Viewport.scaling_3d_scale`. Values less than ``1.0`` will be result in the viewport being upscaled using FSR. Values greater than ``1.0`` are not supported and bilinear downsampling will be used instead. A value of ``1.0`` disables scaling. +Use AMD FidelityFX Super Resolution 1.0 upscaling for the viewport's 3D buffer. The amount of scaling can be set using :ref:`Viewport.scaling_3d_scale`. Values less than ``1.0`` will result in the viewport being upscaled using FSR. Values greater than ``1.0`` are not supported and bilinear downsampling will be used instead. A value of ``1.0`` disables scaling. .. _class_RenderingServer_constant_VIEWPORT_SCALING_3D_MODE_FSR2: @@ -3002,7 +3006,7 @@ Use AMD FidelityFX Super Resolution 1.0 upscaling for the viewport's 3D buffer. :ref:`ViewportScaling3DMode` **VIEWPORT_SCALING_3D_MODE_FSR2** = ``2`` -Use AMD FidelityFX Super Resolution 2.2 upscaling for the viewport's 3D buffer. The amount of scaling can be set using :ref:`Viewport.scaling_3d_scale`. Values less than ``1.0`` will be result in the viewport being upscaled using FSR2. Values greater than ``1.0`` are not supported and bilinear downsampling will be used instead. A value of ``1.0`` will use FSR2 at native resolution as a TAA solution. +Use AMD FidelityFX Super Resolution 2.2 upscaling for the viewport's 3D buffer. The amount of scaling can be set using :ref:`Viewport.scaling_3d_scale`. Values less than ``1.0`` will result in the viewport being upscaled using FSR2. Values greater than ``1.0`` are not supported and bilinear downsampling will be used instead. A value of ``1.0`` will use FSR2 at native resolution as a TAA solution. .. _class_RenderingServer_constant_VIEWPORT_SCALING_3D_MODE_METALFX_SPATIAL: @@ -3010,7 +3014,7 @@ Use AMD FidelityFX Super Resolution 2.2 upscaling for the viewport's 3D buffer. :ref:`ViewportScaling3DMode` **VIEWPORT_SCALING_3D_MODE_METALFX_SPATIAL** = ``3`` -Use MetalFX spatial upscaling for the viewport's 3D buffer. The amount of scaling can be set using :ref:`Viewport.scaling_3d_scale`. Values less than ``1.0`` will be result in the viewport being upscaled using MetalFX. Values greater than ``1.0`` are not supported and bilinear downsampling will be used instead. A value of ``1.0`` disables scaling. +Use MetalFX spatial upscaling for the viewport's 3D buffer. The amount of scaling can be set using :ref:`Viewport.scaling_3d_scale`. Values less than ``1.0`` will result in the viewport being upscaled using MetalFX. Values greater than ``1.0`` are not supported and bilinear downsampling will be used instead. A value of ``1.0`` disables scaling. \ **Note:** Only supported when the Metal rendering driver is in use, which limits this scaling mode to macOS and iOS. @@ -3020,7 +3024,7 @@ Use MetalFX spatial upscaling for the viewport's 3D buffer. The amount of scalin :ref:`ViewportScaling3DMode` **VIEWPORT_SCALING_3D_MODE_METALFX_TEMPORAL** = ``4`` -Use MetalFX temporal upscaling for the viewport's 3D buffer. The amount of scaling can be set using :ref:`Viewport.scaling_3d_scale`. Values less than ``1.0`` will be result in the viewport being upscaled using MetalFX. Values greater than ``1.0`` are not supported and bilinear downsampling will be used instead. A value of ``1.0`` will use MetalFX at native resolution as a TAA solution. +Use MetalFX temporal upscaling for the viewport's 3D buffer. The amount of scaling can be set using :ref:`Viewport.scaling_3d_scale`. Values less than ``1.0`` will result in the viewport being upscaled using MetalFX. Values greater than ``1.0`` are not supported and bilinear downsampling will be used instead. A value of ``1.0`` will use MetalFX at native resolution as a TAA solution. \ **Note:** Only supported when the Metal rendering driver is in use, which limits this scaling mode to macOS and iOS. @@ -3384,11 +3388,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. @@ -3544,6 +3556,8 @@ Objects are displayed without light information. Objects are displayed with only light information. +\ **Note:** When using this debug draw mode, custom shaders are ignored since all materials in the scene temporarily use a debug material. This means the result from custom shader functions (such as vertex displacement) won't be visible anymore when using this debug draw mode. + .. _class_RenderingServer_constant_VIEWPORT_DEBUG_DRAW_OVERDRAW: .. rst-class:: classref-enumeration-constant @@ -3552,7 +3566,7 @@ Objects are displayed with only light information. Objects are displayed semi-transparent with additive blending so you can see where they are drawing over top of one another. A higher overdraw (represented by brighter colors) means you are wasting performance on drawing pixels that are being hidden behind others. -\ **Note:** When using this debug draw mode, custom shaders will be ignored. This means vertex displacement won't be visible anymore. +\ **Note:** When using this debug draw mode, custom shaders are ignored since all materials in the scene temporarily use a debug material. This means the result from custom shader functions (such as vertex displacement) won't be visible anymore when using this debug draw mode. .. _class_RenderingServer_constant_VIEWPORT_DEBUG_DRAW_WIREFRAME: @@ -3578,7 +3592,9 @@ Normal buffer is drawn instead of regular scene so you can see the per-pixel nor :ref:`ViewportDebugDraw` **VIEWPORT_DEBUG_DRAW_VOXEL_GI_ALBEDO** = ``6`` -Objects are displayed with only the albedo value from :ref:`VoxelGI`\ s. +Objects are displayed with only the albedo value from :ref:`VoxelGI`\ s. Requires at least one visible :ref:`VoxelGI` node that has been baked to have a visible effect. + +\ **Note:** Only supported when using the Forward+ rendering method. .. _class_RenderingServer_constant_VIEWPORT_DEBUG_DRAW_VOXEL_GI_LIGHTING: @@ -3586,7 +3602,9 @@ Objects are displayed with only the albedo value from :ref:`VoxelGI` **VIEWPORT_DEBUG_DRAW_VOXEL_GI_LIGHTING** = ``7`` -Objects are displayed with only the lighting value from :ref:`VoxelGI`\ s. +Objects are displayed with only the lighting value from :ref:`VoxelGI`\ s. Requires at least one visible :ref:`VoxelGI` node that has been baked to have a visible effect. + +\ **Note:** Only supported when using the Forward+ rendering method. .. _class_RenderingServer_constant_VIEWPORT_DEBUG_DRAW_VOXEL_GI_EMISSION: @@ -3594,7 +3612,9 @@ Objects are displayed with only the lighting value from :ref:`VoxelGI` **VIEWPORT_DEBUG_DRAW_VOXEL_GI_EMISSION** = ``8`` -Objects are displayed with only the emission color from :ref:`VoxelGI`\ s. +Objects are displayed with only the emission color from :ref:`VoxelGI`\ s. Requires at least one visible :ref:`VoxelGI` node that has been baked to have a visible effect. + +\ **Note:** Only supported when using the Forward+ rendering method. .. _class_RenderingServer_constant_VIEWPORT_DEBUG_DRAW_SHADOW_ATLAS: @@ -3624,6 +3644,8 @@ The last cascade shows all frustum slices to illustrate the coverage of all slic Draws the estimated scene luminance. This is a 1×1 texture that is generated when autoexposure is enabled to control the scene's exposure. +\ **Note:** Only supported when using the Forward+ or Mobile rendering methods. + .. _class_RenderingServer_constant_VIEWPORT_DEBUG_DRAW_SSAO: .. rst-class:: classref-enumeration-constant @@ -3632,6 +3654,8 @@ Draws the estimated scene luminance. This is a 1×1 texture that is generated wh Draws the screen space ambient occlusion texture instead of the scene so that you can clearly see how it is affecting objects. In order for this display mode to work, you must have :ref:`Environment.ssao_enabled` set in your :ref:`WorldEnvironment`. +\ **Note:** Only supported when using the Forward+ rendering method. + .. _class_RenderingServer_constant_VIEWPORT_DEBUG_DRAW_SSIL: .. rst-class:: classref-enumeration-constant @@ -3640,13 +3664,19 @@ Draws the screen space ambient occlusion texture instead of the scene so that yo Draws the screen space indirect lighting texture instead of the scene so that you can clearly see how it is affecting objects. In order for this display mode to work, you must have :ref:`Environment.ssil_enabled` set in your :ref:`WorldEnvironment`. +\ **Note:** Only supported when using the Forward+ rendering method. + .. _class_RenderingServer_constant_VIEWPORT_DEBUG_DRAW_PSSM_SPLITS: .. rst-class:: classref-enumeration-constant :ref:`ViewportDebugDraw` **VIEWPORT_DEBUG_DRAW_PSSM_SPLITS** = ``14`` -Colors each PSSM split for the :ref:`DirectionalLight3D`\ s in the scene a different color so you can see where the splits are. In order they will be colored red, green, blue, yellow. +Colors each PSSM split for the :ref:`DirectionalLight3D`\ s in the scene a different color so you can see where the splits are. In order (from closest to furthest from the camera), they are colored red, green, blue, and yellow. + +\ **Note:** When using this debug draw mode, custom shaders are ignored since all materials in the scene temporarily use a debug material. This means the result from custom shader functions (such as vertex displacement) won't be visible anymore when using this debug draw mode. + +\ **Note:** Only supported when using the Forward+ or Mobile rendering methods. .. _class_RenderingServer_constant_VIEWPORT_DEBUG_DRAW_DECAL_ATLAS: @@ -3656,6 +3686,8 @@ Colors each PSSM split for the :ref:`DirectionalLight3D`\ s. +\ **Note:** Only supported when using the Forward+ or Mobile rendering methods. + .. _class_RenderingServer_constant_VIEWPORT_DEBUG_DRAW_SDFGI: .. rst-class:: classref-enumeration-constant @@ -3664,6 +3696,8 @@ Draws the decal atlas that stores decal textures from :ref:`Decal`\ Draws SDFGI cascade data. This is the data structure that is used to bounce lighting against and create reflections. +\ **Note:** Only supported when using the Forward+ rendering method. + .. _class_RenderingServer_constant_VIEWPORT_DEBUG_DRAW_SDFGI_PROBES: .. rst-class:: classref-enumeration-constant @@ -3672,13 +3706,17 @@ Draws SDFGI cascade data. This is the data structure that is used to bounce ligh Draws SDFGI probe data. This is the data structure that is used to give indirect lighting dynamic objects moving within the scene. +\ **Note:** Only supported when using the Forward+ rendering method. + .. _class_RenderingServer_constant_VIEWPORT_DEBUG_DRAW_GI_BUFFER: .. rst-class:: classref-enumeration-constant :ref:`ViewportDebugDraw` **VIEWPORT_DEBUG_DRAW_GI_BUFFER** = ``18`` -Draws the global illumination buffer (:ref:`VoxelGI` or SDFGI). +Draws the global illumination buffer from :ref:`VoxelGI` or SDFGI. Requires :ref:`VoxelGI` (at least one visible baked VoxelGI node) or SDFGI (:ref:`Environment.sdfgi_enabled`) to be enabled to have a visible effect. + +\ **Note:** Only supported when using the Forward+ rendering method. .. _class_RenderingServer_constant_VIEWPORT_DEBUG_DRAW_DISABLE_LOD: @@ -3696,6 +3734,8 @@ Disable mesh LOD. All meshes are drawn with full detail, which can be used to co Draws the :ref:`OmniLight3D` cluster. Clustering determines where lights are positioned in screen-space, which allows the engine to only process these portions of the screen for lighting. +\ **Note:** Only supported when using the Forward+ rendering method. + .. _class_RenderingServer_constant_VIEWPORT_DEBUG_DRAW_CLUSTER_SPOT_LIGHTS: .. rst-class:: classref-enumeration-constant @@ -3704,6 +3744,8 @@ Draws the :ref:`OmniLight3D` cluster. Clustering determines w Draws the :ref:`SpotLight3D` cluster. Clustering determines where lights are positioned in screen-space, which allows the engine to only process these portions of the screen for lighting. +\ **Note:** Only supported when using the Forward+ rendering method. + .. _class_RenderingServer_constant_VIEWPORT_DEBUG_DRAW_CLUSTER_DECALS: .. rst-class:: classref-enumeration-constant @@ -3712,6 +3754,8 @@ Draws the :ref:`SpotLight3D` cluster. Clustering determines w Draws the :ref:`Decal` cluster. Clustering determines where decals are positioned in screen-space, which allows the engine to only process these portions of the screen for decals. +\ **Note:** Only supported when using the Forward+ rendering method. + .. _class_RenderingServer_constant_VIEWPORT_DEBUG_DRAW_CLUSTER_REFLECTION_PROBES: .. rst-class:: classref-enumeration-constant @@ -3720,6 +3764,8 @@ Draws the :ref:`Decal` cluster. Clustering determines where decals Draws the :ref:`ReflectionProbe` cluster. Clustering determines where reflection probes are positioned in screen-space, which allows the engine to only process these portions of the screen for reflection probes. +\ **Note:** Only supported when using the Forward+ rendering method. + .. _class_RenderingServer_constant_VIEWPORT_DEBUG_DRAW_OCCLUDERS: .. rst-class:: classref-enumeration-constant @@ -3728,6 +3774,8 @@ Draws the :ref:`ReflectionProbe` cluster. Clustering dete Draws the occlusion culling buffer. This low-resolution occlusion culling buffer is rasterized on the CPU and is used to check whether instances are occluded by other objects. +\ **Note:** Only supported when using the Forward+ or Mobile rendering methods. + .. _class_RenderingServer_constant_VIEWPORT_DEBUG_DRAW_MOTION_VECTORS: .. rst-class:: classref-enumeration-constant @@ -3736,6 +3784,8 @@ Draws the occlusion culling buffer. This low-resolution occlusion culling buffer Draws the motion vectors buffer. This is used by temporal antialiasing to correct for motion that occurs during gameplay. +\ **Note:** Only supported when using the Forward+ rendering method. + .. _class_RenderingServer_constant_VIEWPORT_DEBUG_DRAW_INTERNAL_BUFFER: .. rst-class:: classref-enumeration-constant @@ -3744,6 +3794,8 @@ Draws the motion vectors buffer. This is used by temporal antialiasing to correc Internal buffer is drawn instead of regular scene so you can see the per-pixel output that will be used by post-processing effects. +\ **Note:** Only supported when using the Forward+ or Mobile rendering methods. + .. rst-class:: classref-item-separator ---- @@ -3980,7 +4032,7 @@ The callback is called after our transparent rendering pass, but before any buil .. container:: contribute - There is currently no description for this enum. Please help us by :ref:`contributing one `! + There is currently no description for this enum. Please help us by `contributing one `__! @@ -5290,7 +5342,7 @@ Parent is used for clipping child, but parent is also drawn underneath child as .. container:: contribute - There is currently no description for this enum. Please help us by :ref:`contributing one `! + There is currently no description for this enum. Please help us by `contributing one `__! @@ -5670,7 +5722,7 @@ Cubemap sampler global shader parameter (``global uniform samplerCube ...``). Ex :ref:`GlobalShaderParameterType` **GLOBAL_VAR_TYPE_SAMPLEREXT** = ``28`` -External sampler global shader parameter (``global uniform samplerExternalOES ...``). Exposed as a :ref:`ExternalTexture` in the editor UI. +External sampler global shader parameter (``global uniform samplerExternalOES ...``). Exposed as an :ref:`ExternalTexture` in the editor UI. .. _class_RenderingServer_constant_GLOBAL_VAR_TYPE_MAX: @@ -5760,7 +5812,7 @@ Number of pipeline compilations that were triggered by loading meshes. These com :ref:`RenderingInfo` **RENDERING_INFO_PIPELINE_COMPILATIONS_SURFACE** = ``8`` -Number of pipeline compilations that were triggered by building the surface cache before rendering the scene. These compilations will show up as a stutter when loading an scene the first time a user runs the game and the pipeline is required. +Number of pipeline compilations that were triggered by building the surface cache before rendering the scene. These compilations will show up as a stutter when loading a scene the first time a user runs the game and the pipeline is required. .. _class_RenderingServer_constant_RENDERING_INFO_PIPELINE_COMPILATIONS_DRAW: @@ -5907,6 +5959,22 @@ The minimum Z-layer for canvas items. The maximum Z-layer for canvas items. +.. _class_RenderingServer_constant_CANVAS_LAYER_MIN: + +.. rst-class:: classref-constant + +**CANVAS_LAYER_MIN** = ``-2147483648`` :ref:`🔗` + +The minimum canvas layer. + +.. _class_RenderingServer_constant_CANVAS_LAYER_MAX: + +.. rst-class:: classref-constant + +**CANVAS_LAYER_MAX** = ``2147483647`` :ref:`🔗` + +The maximum canvas layer. + .. _class_RenderingServer_constant_MAX_GLOW_LEVELS: .. rst-class:: classref-constant @@ -5973,7 +6041,7 @@ The number of custom data arrays available (:ref:`ARRAY_CUSTOM0`! + There is currently no description for this constant. Please help us by `contributing one `__! @@ -5985,7 +6053,7 @@ The number of custom data arrays available (:ref:`ARRAY_CUSTOM0`! + There is currently no description for this constant. Please help us by `contributing one `__! @@ -5997,7 +6065,7 @@ The number of custom data arrays available (:ref:`ARRAY_CUSTOM0`! + There is currently no description for this constant. Please help us by `contributing one `__! @@ -6009,7 +6077,7 @@ The number of custom data arrays available (:ref:`ARRAY_CUSTOM0`! + There is currently no description for this constant. Please help us by `contributing one `__! @@ -6021,7 +6089,7 @@ The number of custom data arrays available (:ref:`ARRAY_CUSTOM0`! + There is currently no description for this constant. Please help us by `contributing one `__! @@ -6074,7 +6142,7 @@ Bakes the material data of the Mesh passed in the ``base`` parameter with option |void| **call_on_render_thread**\ (\ callable\: :ref:`Callable`\ ) :ref:`🔗` -As the RenderingServer actual logic may run on an separate thread, accessing its internals from the main (or any other) thread will result in errors. To make it easier to run code that can safely access the rendering internals (such as :ref:`RenderingDevice` and similar RD classes), push a callable via this function so it will be executed on the render thread. +As the RenderingServer actual logic may run on a separate thread, accessing its internals from the main (or any other) thread will result in errors. To make it easier to run code that can safely access the rendering internals (such as :ref:`RenderingDevice` and similar RD classes), push a callable via this function so it will be executed on the render thread. .. rst-class:: classref-item-separator @@ -6126,7 +6194,7 @@ Sets the parameters to use with the DOF blur effect. These parameters take on th |void| **camera_attributes_set_dof_blur_bokeh_shape**\ (\ shape\: :ref:`DOFBokehShape`\ ) :ref:`🔗` -Sets the shape of the DOF bokeh pattern. Different shapes may be used to achieve artistic effect, or to meet performance targets. For more detail on available options see :ref:`DOFBokehShape`. +Sets the shape of the DOF bokeh pattern to ``shape``. Different shapes may be used to achieve artistic effect, or to meet performance targets. .. rst-class:: classref-item-separator @@ -6138,7 +6206,7 @@ Sets the shape of the DOF bokeh pattern. Different shapes may be used to achieve |void| **camera_attributes_set_dof_blur_quality**\ (\ quality\: :ref:`DOFBlurQuality`, use_jitter\: :ref:`bool`\ ) :ref:`🔗` -Sets the quality level of the DOF blur effect to one of the options in :ref:`DOFBlurQuality`. ``use_jitter`` can be used to jitter samples taken during the blur pass to hide artifacts at the cost of looking more fuzzy. +Sets the quality level of the DOF blur effect to ``quality``. ``use_jitter`` can be used to jitter samples taken during the blur pass to hide artifacts at the cost of looking more fuzzy. .. rst-class:: classref-item-separator @@ -6536,7 +6604,7 @@ Draws the specified region of a 2D textured rectangle on the :ref:`CanvasItem` pointed to by the ``item`` :ref:`RID`. This is internally used by :ref:`Line2D` and :ref:`StyleBoxFlat` for rendering. :ref:`canvas_item_add_triangle_array()` is highly flexible, but more complex to use than :ref:`canvas_item_add_polygon()`. -\ **Note:** ``count`` is unused and can be left unspecified. +\ **Note:** If ``count`` is set to a non-negative value, only the first ``count * 3`` indices (corresponding to ``count`` triangles) will be drawn. Otherwise, all indices are drawn. .. rst-class:: classref-item-separator @@ -7020,7 +7088,7 @@ This is useful when moving an occluder to a new location, to give an instantaneo .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -7120,7 +7188,7 @@ This is useful when moving a canvas item to a new location, to give an instantan |void| **canvas_light_set_blend_mode**\ (\ light\: :ref:`RID`, mode\: :ref:`CanvasLightBlendMode`\ ) :ref:`🔗` -Sets the blend mode for the given canvas light. See :ref:`CanvasLightBlendMode` for options. Equivalent to :ref:`Light2D.blend_mode`. +Sets the blend mode for the given canvas light to ``mode``. Equivalent to :ref:`Light2D.blend_mode`. .. rst-class:: classref-item-separator @@ -7228,7 +7296,7 @@ The layer range that gets rendered with this light. |void| **canvas_light_set_mode**\ (\ light\: :ref:`RID`, mode\: :ref:`CanvasLightMode`\ ) :ref:`🔗` -The mode of the light, see :ref:`CanvasLightMode` constants. +Sets the mode of the canvas light. .. rst-class:: classref-item-separator @@ -7264,7 +7332,7 @@ Enables or disables the canvas light's shadow. |void| **canvas_light_set_shadow_filter**\ (\ light\: :ref:`RID`, filter\: :ref:`CanvasLightShadowFilter`\ ) :ref:`🔗` -Sets the canvas light's shadow's filter, see :ref:`CanvasLightShadowFilter` constants. +Sets the canvas light's shadow's filter. .. rst-class:: classref-item-separator @@ -7378,7 +7446,7 @@ Once finished with your RID, you will want to free the RID using the RenderingSe |void| **canvas_occluder_polygon_set_cull_mode**\ (\ occluder_polygon\: :ref:`RID`, mode\: :ref:`CanvasOccluderPolygonCullMode`\ ) :ref:`🔗` -Sets an occluder polygons cull mode. See :ref:`CanvasOccluderPolygonCullMode` constants. +Sets an occluder polygon's cull mode. .. rst-class:: classref-item-separator @@ -7404,7 +7472,7 @@ Sets the shape of the occluder polygon. .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -7848,6 +7916,8 @@ Once finished with your RID, you will want to free the RID using the RenderingSe If ``enable`` is ``true``, enables bicubic upscaling for glow which improves quality at the cost of performance. Equivalent to :ref:`ProjectSettings.rendering/environment/glow/upscale_mode`. +\ **Note:** This setting is only effective when using the Forward+ or Mobile rendering methods, as Compatibility uses a different glow implementation. + .. rst-class:: classref-item-separator ---- @@ -7948,6 +8018,18 @@ Configures fog for the specified environment RID. See ``fog_*`` properties in :r ---- +.. _class_RenderingServer_method_environment_set_fog_depth: + +.. rst-class:: classref-method + +|void| **environment_set_fog_depth**\ (\ env\: :ref:`RID`, curve\: :ref:`float`, begin\: :ref:`float`, end\: :ref:`float`\ ) :ref:`🔗` + +Configures fog depth for the specified environment RID. Only has an effect when the fog mode of the environment is :ref:`ENV_FOG_MODE_DEPTH`. See ``fog_depth_*`` properties in :ref:`Environment` for more information. + +.. rst-class:: classref-item-separator + +---- + .. _class_RenderingServer_method_environment_set_glow: .. rst-class:: classref-method @@ -8100,7 +8182,7 @@ Sets the variables to be used with the screen-space reflections (SSR) post-proce .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -8250,7 +8332,11 @@ Tries to free an object in the RenderingServer. To avoid memory leaks, this shou Returns the name of the current rendering driver. This can be ``vulkan``, ``d3d12``, ``metal``, ``opengl3``, ``opengl3_es``, or ``opengl3_angle``. See also :ref:`get_current_rendering_method()`. -The rendering driver is determined by :ref:`ProjectSettings.rendering/rendering_device/driver`, the ``--rendering-driver`` command line argument that overrides this project setting, or an automatic fallback that is applied depending on the hardware. +When :ref:`ProjectSettings.rendering/renderer/rendering_method` is ``forward_plus`` or ``mobile``, the rendering driver is determined by :ref:`ProjectSettings.rendering/rendering_device/driver`. + +When :ref:`ProjectSettings.rendering/renderer/rendering_method` is ``gl_compatibility``, the rendering driver is determined by :ref:`ProjectSettings.rendering/gl_compatibility/driver`. + +The rendering driver is also determined by the ``--rendering-driver`` command line argument that overrides this project setting, or an automatic fallback that is applied depending on the hardware. .. rst-class:: classref-item-separator @@ -8314,7 +8400,7 @@ Returns the global RenderingDevice. :ref:`int` **get_rendering_info**\ (\ info\: :ref:`RenderingInfo`\ ) :ref:`🔗` -Returns a statistic about the rendering engine which can be used for performance profiling. See :ref:`RenderingInfo` for a list of values that can be queried. See also :ref:`viewport_get_render_info()`, which returns information specific to a viewport. +Returns a statistic about the rendering engine which can be used for performance profiling. See also :ref:`viewport_get_render_info()`, which returns information specific to a viewport. \ **Note:** Only 3D rendering is currently taken into account by some of these values, such as the number of draw calls. @@ -8325,7 +8411,7 @@ Returns a statistic about the rendering engine which can be used for performance func _ready(): for _i in 2: await get_tree().process_frame - + print(RenderingServer.get_rendering_info(RENDERING_INFO_TOTAL_DRAW_CALLS_IN_FRAME)) .. rst-class:: classref-item-separator @@ -8696,7 +8782,7 @@ Returns a dictionary of per-instance shader uniform names of the per-instance sh |void| **instance_geometry_set_cast_shadows_setting**\ (\ instance\: :ref:`RID`, shadow_casting_setting\: :ref:`ShadowCastingSetting`\ ) :ref:`🔗` -Sets the shadow casting setting to one of :ref:`ShadowCastingSetting`. Equivalent to :ref:`GeometryInstance3D.cast_shadow`. +Sets the shadow casting setting. Equivalent to :ref:`GeometryInstance3D.cast_shadow`. .. rst-class:: classref-item-separator @@ -8708,7 +8794,7 @@ Sets the shadow casting setting to one of :ref:`ShadowCastingSetting`, flag\: :ref:`InstanceFlags`, enabled\: :ref:`bool`\ ) :ref:`🔗` -Sets the flag for a given :ref:`InstanceFlags`. See :ref:`InstanceFlags` for more details. +Sets the ``flag`` for a given ``instance`` to ``enabled``. .. rst-class:: classref-item-separator @@ -8804,20 +8890,6 @@ Sets the visibility range values for the given geometry instance. Equivalent to ---- -.. _class_RenderingServer_method_instance_reset_physics_interpolation: - -.. rst-class:: classref-method - -|void| **instance_reset_physics_interpolation**\ (\ instance\: :ref:`RID`\ ) :ref:`🔗` - -Prevents physics interpolation for the current physics tick. - -This is useful when moving an instance to a new location, to give an instantaneous change rather than interpolation from the previous location. - -.. rst-class:: classref-item-separator - ----- - .. _class_RenderingServer_method_instance_set_base: .. rst-class:: classref-method @@ -8878,18 +8950,6 @@ If ``true``, ignores both frustum and occlusion culling on the specified 3D geom ---- -.. _class_RenderingServer_method_instance_set_interpolated: - -.. rst-class:: classref-method - -|void| **instance_set_interpolated**\ (\ instance\: :ref:`RID`, interpolated\: :ref:`bool`\ ) :ref:`🔗` - -Turns on and off physics interpolation for the instance. - -.. rst-class:: classref-item-separator - ----- - .. _class_RenderingServer_method_instance_set_layer_mask: .. rst-class:: classref-method @@ -8974,6 +9034,18 @@ Sets whether an instance is drawn or not. Equivalent to :ref:`Node3D.visible`\ ) :ref:`🔗` + +Resets motion vectors and other interpolated values. Use this *after* teleporting a mesh from one position to another to avoid ghosting artifacts. + +.. rst-class:: classref-item-separator + +---- + .. _class_RenderingServer_method_instances_cull_aabb: .. rst-class:: classref-method @@ -9046,7 +9118,7 @@ If ``true``, this directional light will blend between shadow map splits resulti |void| **light_directional_set_shadow_mode**\ (\ light\: :ref:`RID`, mode\: :ref:`LightDirectionalShadowMode`\ ) :ref:`🔗` -Sets the shadow mode for this directional light. Equivalent to :ref:`DirectionalLight3D.directional_shadow_mode`. See :ref:`LightDirectionalShadowMode` for options. +Sets the shadow mode for this directional light. Equivalent to :ref:`DirectionalLight3D.directional_shadow_mode`. .. rst-class:: classref-item-separator @@ -9166,7 +9238,7 @@ If ``true``, the 3D light will subtract light instead of adding light. Equivalen |void| **light_set_param**\ (\ light\: :ref:`RID`, param\: :ref:`LightParam`, value\: :ref:`float`\ ) :ref:`🔗` -Sets the specified 3D light parameter. See :ref:`LightParam` for options. Equivalent to :ref:`Light3D.set_param()`. +Sets the specified 3D light parameter. Equivalent to :ref:`Light3D.set_param()`. .. rst-class:: classref-item-separator @@ -9244,7 +9316,7 @@ Once finished with your RID, you will want to free the RID using the RenderingSe .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -9258,7 +9330,7 @@ Once finished with your RID, you will want to free the RID using the RenderingSe .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -9272,7 +9344,7 @@ Once finished with your RID, you will want to free the RID using the RenderingSe .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -9286,7 +9358,7 @@ Once finished with your RID, you will want to free the RID using the RenderingSe .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -9312,7 +9384,7 @@ Used to inform the renderer what exposure normalization value was used while bak .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -9326,7 +9398,7 @@ Used to inform the renderer what exposure normalization value was used while bak .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -9340,7 +9412,7 @@ Used to inform the renderer what exposure normalization value was used while bak .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -9354,7 +9426,7 @@ Used to inform the renderer what exposure normalization value was used while bak .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -9480,7 +9552,7 @@ Sets a shader material's shader. .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -9494,7 +9566,7 @@ Sets a shader material's shader. .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -9538,7 +9610,7 @@ To place in a scene, attach this mesh to an instance using :ref:`instance_set_ba .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -9588,7 +9660,7 @@ Returns a mesh's custom aabb. .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -9638,7 +9710,7 @@ Sets a mesh's custom aabb. .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -9680,6 +9752,18 @@ Returns the stride of the attribute buffer for a mesh with given ``format``. ---- +.. _class_RenderingServer_method_mesh_surface_get_format_index_stride: + +.. rst-class:: classref-method + +:ref:`int` **mesh_surface_get_format_index_stride**\ (\ format\: |bitfield|\[:ref:`ArrayFormat`\], vertex_count\: :ref:`int`\ ) |const| :ref:`🔗` + +Returns the stride of the index buffer for a mesh with the given ``format``. + +.. rst-class:: classref-item-separator + +---- + .. _class_RenderingServer_method_mesh_surface_get_format_normal_tangent_stride: .. rst-class:: classref-method @@ -9772,7 +9856,19 @@ Sets a mesh's surface's material. .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! + +.. rst-class:: classref-item-separator + +---- + +.. _class_RenderingServer_method_mesh_surface_update_index_region: + +.. rst-class:: classref-method + +|void| **mesh_surface_update_index_region**\ (\ mesh\: :ref:`RID`, surface\: :ref:`int`, offset\: :ref:`int`, data\: :ref:`PackedByteArray`\ ) :ref:`🔗` + +Updates the index buffer of the mesh surface with the given ``data``. The expected data are 16 or 32-bit unsigned integers, which can be determined with :ref:`mesh_surface_get_format_index_stride()`. .. rst-class:: classref-item-separator @@ -9786,7 +9882,7 @@ Sets a mesh's surface's material. .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -9800,7 +9896,7 @@ Sets a mesh's surface's material. .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -9814,7 +9910,7 @@ Sets a mesh's surface's material. .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -10502,7 +10598,7 @@ Sets the amount ratio for particles to be emitted. Equivalent to :ref:`GPUPartic .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -10526,7 +10622,7 @@ Sets a custom axis-aligned bounding box for the particle system. Equivalent to : |void| **particles_set_draw_order**\ (\ particles\: :ref:`RID`, order\: :ref:`ParticlesDrawOrder`\ ) :ref:`🔗` -Sets the draw order of the particles to one of the named enums from :ref:`ParticlesDrawOrder`. See :ref:`ParticlesDrawOrder` for options. Equivalent to :ref:`GPUParticles3D.draw_order`. +Sets the draw order of the particles. Equivalent to :ref:`GPUParticles3D.draw_order`. .. rst-class:: classref-item-separator @@ -10648,7 +10744,7 @@ Sets the value that informs a :ref:`ParticleProcessMaterial`! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -10748,7 +10844,7 @@ Sets the speed scale of the particle system. Equivalent to :ref:`GPUParticles3D. .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -10762,7 +10858,7 @@ Sets the speed scale of the particle system. Equivalent to :ref:`GPUParticles3D. .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -10788,7 +10884,7 @@ If ``enable`` is ``true``, enables trails for the ``particles`` with the specifi .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -11022,7 +11118,7 @@ Sets the size of the area that the reflection probe will capture. Equivalent to |void| **reflection_probe_set_update_mode**\ (\ probe\: :ref:`RID`, mode\: :ref:`ReflectionProbeUpdateMode`\ ) :ref:`🔗` -Sets how often the reflection probe updates. Can either be once or every frame. See :ref:`ReflectionProbeUpdateMode` for options. +Sets how often the reflection probe updates. Can either be once or every frame. .. rst-class:: classref-item-separator @@ -11254,7 +11350,7 @@ Sets the path hint for the specified shader. This should generally match the :re .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -11342,7 +11438,7 @@ Returns the number of bones allocated for this skeleton. .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -11666,7 +11762,7 @@ Returns the internal graphics handle for this texture object. For use when commu .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -11744,7 +11840,7 @@ Replaces ``texture``'s texture data by the texture specified by the ``by_texture .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -11758,7 +11854,7 @@ Replaces ``texture``'s texture data by the texture specified by the ``by_texture .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -11772,7 +11868,7 @@ Replaces ``texture``'s texture data by the texture specified by the ``by_texture .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -11881,7 +11977,7 @@ Returns the GPU time taken to render the last frame in milliseconds. To get a co :ref:`int` **viewport_get_render_info**\ (\ viewport\: :ref:`RID`, type\: :ref:`ViewportRenderInfoType`, info\: :ref:`ViewportRenderInfo`\ ) :ref:`🔗` -Returns a statistic about the rendering engine which can be used for performance profiling. This is separated into render pass ``type``\ s, each of them having the same ``info``\ s you can query (different passes will return different values). See :ref:`ViewportRenderInfoType` for a list of render pass types and :ref:`ViewportRenderInfo` for a list of information that can be queried. +Returns a statistic about the rendering engine which can be used for performance profiling. This is separated into render pass ``type``\ s, each of them having the same ``info``\ s you can query (different passes will return different values). See also :ref:`get_rendering_info()`, which returns global information across all viewports. @@ -11892,7 +11988,7 @@ See also :ref:`get_rendering_info()` **viewport_get_update_mode**\ (\ viewport\: :ref:`RID`\ ) |const| :ref:`🔗` -Returns the viewport's update mode. See :ref:`ViewportUpdateMode` constants for options. +Returns the viewport's update mode. \ **Warning:** Calling this from any thread other than the rendering thread will be detrimental to performance. @@ -12005,6 +12101,8 @@ Sets the stacking order for a viewport's canvas. \ ``layer`` is the actual canvas layer, while ``sublayer`` specifies the stacking order of the canvas among those in the same layer. +\ **Note:** ``layer`` should be between :ref:`CANVAS_LAYER_MIN` and :ref:`CANVAS_LAYER_MAX` (inclusive). Any other value will wrap around. + .. rst-class:: classref-item-separator ---- @@ -12027,7 +12125,7 @@ Sets the transformation of a viewport's canvas. |void| **viewport_set_clear_mode**\ (\ viewport\: :ref:`RID`, clear_mode\: :ref:`ViewportClearMode`\ ) :ref:`🔗` -Sets the clear mode of a viewport. See :ref:`ViewportClearMode` for options. +Sets the clear mode of a viewport. .. rst-class:: classref-item-separator @@ -12039,7 +12137,7 @@ Sets the clear mode of a viewport. See :ref:`ViewportClearMode`, draw\: :ref:`ViewportDebugDraw`\ ) :ref:`🔗` -Sets the debug draw mode of a viewport. See :ref:`ViewportDebugDraw` for options. +Sets the debug draw mode of a viewport. .. rst-class:: classref-item-separator @@ -12051,7 +12149,7 @@ Sets the debug draw mode of a viewport. See :ref:`ViewportDebugDraw`, filter\: :ref:`CanvasItemTextureFilter`\ ) :ref:`🔗` -Sets the default texture filtering mode for the specified ``viewport`` RID. See :ref:`CanvasItemTextureFilter` for options. +Sets the default texture filtering mode for the specified ``viewport`` RID. .. rst-class:: classref-item-separator @@ -12063,7 +12161,7 @@ Sets the default texture filtering mode for the specified ``viewport`` RID. See |void| **viewport_set_default_canvas_item_texture_repeat**\ (\ viewport\: :ref:`RID`, repeat\: :ref:`CanvasItemTextureRepeat`\ ) :ref:`🔗` -Sets the default texture repeat mode for the specified ``viewport`` RID. See :ref:`CanvasItemTextureRepeat` for options. +Sets the default texture repeat mode for the specified ``viewport`` RID. .. rst-class:: classref-item-separator @@ -12147,7 +12245,7 @@ Sets the measurement for the given ``viewport`` RID (obtained using :ref:`Viewpo |void| **viewport_set_msaa_2d**\ (\ viewport\: :ref:`RID`, msaa\: :ref:`ViewportMSAA`\ ) :ref:`🔗` -Sets the multisample antialiasing mode for 2D/Canvas on the specified ``viewport`` RID. See :ref:`ViewportMSAA` for options. Equivalent to :ref:`ProjectSettings.rendering/anti_aliasing/quality/msaa_2d` or :ref:`Viewport.msaa_2d`. +Sets the multisample antialiasing mode for 2D/Canvas on the specified ``viewport`` RID. Equivalent to :ref:`ProjectSettings.rendering/anti_aliasing/quality/msaa_2d` or :ref:`Viewport.msaa_2d`. .. rst-class:: classref-item-separator @@ -12159,7 +12257,7 @@ Sets the multisample antialiasing mode for 2D/Canvas on the specified ``viewport |void| **viewport_set_msaa_3d**\ (\ viewport\: :ref:`RID`, msaa\: :ref:`ViewportMSAA`\ ) :ref:`🔗` -Sets the multisample antialiasing mode for 3D on the specified ``viewport`` RID. See :ref:`ViewportMSAA` for options. Equivalent to :ref:`ProjectSettings.rendering/anti_aliasing/quality/msaa_3d` or :ref:`Viewport.msaa_3d`. +Sets the multisample antialiasing mode for 3D on the specified ``viewport`` RID. Equivalent to :ref:`ProjectSettings.rendering/anti_aliasing/quality/msaa_3d` or :ref:`Viewport.msaa_3d`. .. rst-class:: classref-item-separator @@ -12369,7 +12467,7 @@ If ``true``, the viewport renders its background as transparent. |void| **viewport_set_update_mode**\ (\ viewport\: :ref:`RID`, update_mode\: :ref:`ViewportUpdateMode`\ ) :ref:`🔗` -Sets when the viewport should be updated. See :ref:`ViewportUpdateMode` constants for options. +Sets when the viewport should be updated. .. rst-class:: classref-item-separator @@ -12381,7 +12479,7 @@ Sets when the viewport should be updated. See :ref:`ViewportUpdateMode`, enable\: :ref:`bool`\ ) :ref:`🔗` -If ``true``, enables debanding on the specified viewport. Equivalent to :ref:`ProjectSettings.rendering/anti_aliasing/quality/use_debanding` or :ref:`Viewport.use_debanding`. +Equivalent to :ref:`Viewport.use_debanding`. See also :ref:`ProjectSettings.rendering/anti_aliasing/quality/use_debanding`. .. rst-class:: classref-item-separator @@ -12393,9 +12491,11 @@ If ``true``, enables debanding on the specified viewport. Equivalent to :ref:`Pr |void| **viewport_set_use_hdr_2d**\ (\ viewport\: :ref:`RID`, enabled\: :ref:`bool`\ ) :ref:`🔗` -If ``true``, 2D rendering will use a high dynamic range (HDR) format framebuffer matching the bit depth of the 3D framebuffer. When using the Forward+ renderer this will be an ``RGBA16`` framebuffer, while when using the Mobile renderer it will be an ``RGB10_A2`` framebuffer. Additionally, 2D rendering will take place in linear color space and will be converted to sRGB space immediately before blitting to the screen (if the Viewport is attached to the screen). Practically speaking, this means that the end result of the Viewport will not be clamped into the ``0-1`` range and can be used in 3D rendering without color space adjustments. This allows 2D rendering to take advantage of effects requiring high dynamic range (e.g. 2D glow) as well as substantially improves the appearance of effects requiring highly detailed gradients. This setting has the same effect as :ref:`Viewport.use_hdr_2d`. +If ``true``, 2D rendering will use a high dynamic range (HDR) format framebuffer matching the bit depth of the 3D framebuffer. When using the Forward+ or Compatibility renderer, this will be an ``RGBA16`` framebuffer. When using the Mobile renderer, it will be an ``RGB10_A2`` framebuffer. -\ **Note:** This setting will have no effect when using the Compatibility renderer, which always renders in low dynamic range for performance reasons. +Additionally, 2D rendering will take place in linear color space and will be converted to sRGB space immediately before blitting to the screen (if the Viewport is attached to the screen). + +Practically speaking, this means that the end result of the Viewport will not be clamped to the ``0-1`` range and can be used in 3D rendering without color space adjustments. This allows 2D rendering to take advantage of effects requiring high dynamic range (e.g. 2D glow) as well as substantially improves the appearance of effects requiring highly detailed gradients. This setting has the same effect as :ref:`Viewport.use_hdr_2d`. .. rst-class:: classref-item-separator @@ -12501,7 +12601,7 @@ To place in a scene, attach this notifier to an instance using :ref:`instance_se .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -12515,7 +12615,7 @@ To place in a scene, attach this notifier to an instance using :ref:`instance_se .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -12529,7 +12629,7 @@ To place in a scene, attach this notifier to an instance using :ref:`instance_se .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -12559,7 +12659,7 @@ Once finished with your RID, you will want to free the RID using the RenderingSe .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -12573,7 +12673,7 @@ Once finished with your RID, you will want to free the RID using the RenderingSe .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -12587,7 +12687,7 @@ Once finished with your RID, you will want to free the RID using the RenderingSe .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -12601,7 +12701,7 @@ Once finished with your RID, you will want to free the RID using the RenderingSe .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -12615,7 +12715,7 @@ Once finished with your RID, you will want to free the RID using the RenderingSe .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -12629,7 +12729,7 @@ Once finished with your RID, you will want to free the RID using the RenderingSe .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -12740,6 +12840,7 @@ Sets the :ref:`ProjectSettings.rendering/global_illumination/voxel_gi/quality` value to use on the specified ``voxel_gi``'s :ref:`RID`. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_renderscenebuffers.rst b/classes/class_renderscenebuffers.rst index f6a5b3ef5..5288f4236 100644 --- a/classes/class_renderscenebuffers.rst +++ b/classes/class_renderscenebuffers.rst @@ -52,9 +52,10 @@ Method Descriptions |void| **configure**\ (\ config\: :ref:`RenderSceneBuffersConfiguration`\ ) :ref:`🔗` -This method is called by the rendering server when the associated viewports configuration is changed. It will discard the old buffers and recreate the internal buffers used. +This method is called by the rendering server when the associated viewport's configuration is changed. It will discard the old buffers and recreate the internal buffers used. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |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.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_renderscenebuffersconfiguration.rst b/classes/class_renderscenebuffersconfiguration.rst index 979583f8f..ec494ac4e 100644 --- a/classes/class_renderscenebuffersconfiguration.rst +++ b/classes/class_renderscenebuffersconfiguration.rst @@ -227,6 +227,7 @@ Bias applied to mipmaps. The number of views we're rendering. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_renderscenebuffersextension.rst b/classes/class_renderscenebuffersextension.rst index cc07067bf..8c72bb65d 100644 --- a/classes/class_renderscenebuffersextension.rst +++ b/classes/class_renderscenebuffersextension.rst @@ -107,6 +107,7 @@ Implement this in GDExtension to change the texture mipmap bias. Implement this in GDExtension to react to the debanding flag changing. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_renderscenebuffersrd.rst b/classes/class_renderscenebuffersrd.rst index 8be2c7311..57a817d80 100644 --- a/classes/class_renderscenebuffersrd.rst +++ b/classes/class_renderscenebuffersrd.rst @@ -431,6 +431,7 @@ Returns the view count for the associated viewport. Returns ``true`` if a cached texture exists for this name. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_renderscenedata.rst b/classes/class_renderscenedata.rst index 3391d9f10..1b937b4ed 100644 --- a/classes/class_renderscenedata.rst +++ b/classes/class_renderscenedata.rst @@ -131,6 +131,7 @@ Returns the view projection per view used to render this frame. \ **Note:** If a single view is rendered, this returns the camera projection. If more than one view is rendered, this will return a projection for the given view including the eye offset. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_renderscenedataextension.rst b/classes/class_renderscenedataextension.rst index 9054b1cdb..5988d02d9 100644 --- a/classes/class_renderscenedataextension.rst +++ b/classes/class_renderscenedataextension.rst @@ -121,6 +121,7 @@ Implement this in GDExtension to return the eye offset for the given ``view``. Implement this in GDExtension to return the view :ref:`Projection` for the given ``view``. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_renderscenedatard.rst b/classes/class_renderscenedatard.rst index c95cc7b30..50b1908e2 100644 --- a/classes/class_renderscenedatard.rst +++ b/classes/class_renderscenedatard.rst @@ -24,6 +24,7 @@ Object holds scene data related to rendering a single frame of a viewport. \ **Note:** This is an internal rendering server object, do not instantiate this from script. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_resource.rst b/classes/class_resource.rst index 7f923aac6..77a6ea7d0 100644 --- a/classes/class_resource.rst +++ b/classes/class_resource.rst @@ -12,7 +12,7 @@ Resource **Inherits:** :ref:`RefCounted` **<** :ref:`Object` -**Inherited By:** :ref:`Animation`, :ref:`AnimationLibrary`, :ref:`AnimationNode`, :ref:`AnimationNodeStateMachinePlayback`, :ref:`AnimationNodeStateMachineTransition`, :ref:`AudioBusLayout`, :ref:`AudioEffect`, :ref:`AudioStream`, :ref:`BitMap`, :ref:`BoneMap`, :ref:`ButtonGroup`, :ref:`CameraAttributes`, :ref:`ColorPalette`, :ref:`Compositor`, :ref:`CompositorEffect`, :ref:`CryptoKey`, :ref:`Curve`, :ref:`Curve2D`, :ref:`Curve3D`, :ref:`EditorNode3DGizmoPlugin`, :ref:`EditorSettings`, :ref:`Environment`, :ref:`Font`, :ref:`GDExtension`, :ref:`GLTFAccessor`, :ref:`GLTFAnimation`, :ref:`GLTFBufferView`, :ref:`GLTFCamera`, :ref:`GLTFDocument`, :ref:`GLTFDocumentExtension`, :ref:`GLTFLight`, :ref:`GLTFMesh`, :ref:`GLTFNode`, :ref:`GLTFPhysicsBody`, :ref:`GLTFPhysicsShape`, :ref:`GLTFSkeleton`, :ref:`GLTFSkin`, :ref:`GLTFSpecGloss`, :ref:`GLTFState`, :ref:`GLTFTexture`, :ref:`GLTFTextureSampler`, :ref:`Gradient`, :ref:`Image`, :ref:`ImporterMesh`, :ref:`InputEvent`, :ref:`JSON`, :ref:`LabelSettings`, :ref:`LightmapGIData`, :ref:`Material`, :ref:`Mesh`, :ref:`MeshLibrary`, :ref:`MissingResource`, :ref:`MultiMesh`, :ref:`NavigationMesh`, :ref:`NavigationMeshSourceGeometryData2D`, :ref:`NavigationMeshSourceGeometryData3D`, :ref:`NavigationPolygon`, :ref:`Noise`, :ref:`Occluder3D`, :ref:`OccluderPolygon2D`, :ref:`OggPacketSequence`, :ref:`OpenXRAction`, :ref:`OpenXRActionMap`, :ref:`OpenXRActionSet`, :ref:`OpenXRBindingModifier`, :ref:`OpenXRHapticBase`, :ref:`OpenXRInteractionProfile`, :ref:`OpenXRIPBinding`, :ref:`PackedDataContainer`, :ref:`PackedScene`, :ref:`PhysicsMaterial`, :ref:`PolygonPathFinder`, :ref:`RDShaderFile`, :ref:`RDShaderSPIRV`, :ref:`RichTextEffect`, :ref:`SceneReplicationConfig`, :ref:`Script`, :ref:`Shader`, :ref:`ShaderInclude`, :ref:`Shape2D`, :ref:`Shape3D`, :ref:`Shortcut`, :ref:`SkeletonModification2D`, :ref:`SkeletonModificationStack2D`, :ref:`SkeletonProfile`, :ref:`Skin`, :ref:`Sky`, :ref:`SpriteFrames`, :ref:`StyleBox`, :ref:`SyntaxHighlighter`, :ref:`Texture`, :ref:`Theme`, :ref:`TileMapPattern`, :ref:`TileSet`, :ref:`TileSetSource`, :ref:`Translation`, :ref:`VideoStream`, :ref:`VideoStreamPlayback`, :ref:`VisualShaderNode`, :ref:`VoxelGIData`, :ref:`World2D`, :ref:`World3D`, :ref:`X509Certificate` +**Inherited By:** :ref:`Animation`, :ref:`AnimationLibrary`, :ref:`AnimationNode`, :ref:`AnimationNodeStateMachinePlayback`, :ref:`AnimationNodeStateMachineTransition`, :ref:`AudioBusLayout`, :ref:`AudioEffect`, :ref:`AudioStream`, :ref:`BitMap`, :ref:`BoneMap`, :ref:`ButtonGroup`, :ref:`CameraAttributes`, :ref:`ColorPalette`, :ref:`Compositor`, :ref:`CompositorEffect`, :ref:`CryptoKey`, :ref:`Curve`, :ref:`Curve2D`, :ref:`Curve3D`, :ref:`EditorNode3DGizmoPlugin`, :ref:`EditorSettings`, :ref:`Environment`, :ref:`FoldableGroup`, :ref:`Font`, :ref:`GDExtension`, :ref:`GLTFAccessor`, :ref:`GLTFAnimation`, :ref:`GLTFBufferView`, :ref:`GLTFCamera`, :ref:`GLTFDocument`, :ref:`GLTFDocumentExtension`, :ref:`GLTFLight`, :ref:`GLTFMesh`, :ref:`GLTFNode`, :ref:`GLTFPhysicsBody`, :ref:`GLTFPhysicsShape`, :ref:`GLTFSkeleton`, :ref:`GLTFSkin`, :ref:`GLTFSpecGloss`, :ref:`GLTFState`, :ref:`GLTFTexture`, :ref:`GLTFTextureSampler`, :ref:`Gradient`, :ref:`Image`, :ref:`ImporterMesh`, :ref:`InputEvent`, :ref:`JSON`, :ref:`LabelSettings`, :ref:`LightmapGIData`, :ref:`Material`, :ref:`Mesh`, :ref:`MeshLibrary`, :ref:`MissingResource`, :ref:`MultiMesh`, :ref:`NavigationMesh`, :ref:`NavigationMeshSourceGeometryData2D`, :ref:`NavigationMeshSourceGeometryData3D`, :ref:`NavigationPolygon`, :ref:`Noise`, :ref:`Occluder3D`, :ref:`OccluderPolygon2D`, :ref:`OggPacketSequence`, :ref:`OpenXRAction`, :ref:`OpenXRActionMap`, :ref:`OpenXRActionSet`, :ref:`OpenXRBindingModifier`, :ref:`OpenXRHapticBase`, :ref:`OpenXRInteractionProfile`, :ref:`OpenXRIPBinding`, :ref:`PackedDataContainer`, :ref:`PackedScene`, :ref:`PhysicsMaterial`, :ref:`PolygonPathFinder`, :ref:`RDShaderFile`, :ref:`RDShaderSPIRV`, :ref:`RichTextEffect`, :ref:`SceneReplicationConfig`, :ref:`Script`, :ref:`Shader`, :ref:`ShaderInclude`, :ref:`Shape2D`, :ref:`Shape3D`, :ref:`Shortcut`, :ref:`SkeletonModification2D`, :ref:`SkeletonModificationStack2D`, :ref:`SkeletonProfile`, :ref:`Skin`, :ref:`Sky`, :ref:`SpriteFrames`, :ref:`StyleBox`, :ref:`SyntaxHighlighter`, :ref:`Texture`, :ref:`Theme`, :ref:`TileMapPattern`, :ref:`TileSet`, :ref:`TileSetSource`, :ref:`Translation`, :ref:`VideoStream`, :ref:`VideoStreamPlayback`, :ref:`VisualShaderNode`, :ref:`VoxelGIData`, :ref:`World2D`, :ref:`World3D`, :ref:`X509Certificate` Base class for serializable objects. @@ -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:`DeepDuplicateMode` = 1\ ) |const| | + +---------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`emit_changed`\ (\ ) | + +---------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`generate_scene_unique_id`\ (\ ) |static| | + +---------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`get_id_for_path`\ (\ path\: :ref:`String`\ ) |const| | + +---------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Node` | :ref:`get_local_scene`\ (\ ) |const| | + +---------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`RID` | :ref:`get_rid`\ (\ ) |const| | + +---------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`is_built_in`\ (\ ) |const| | + +---------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`reset_state`\ (\ ) | + +---------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_id_for_path`\ (\ path\: :ref:`String`, id\: :ref:`String`\ ) | + +---------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_path_cache`\ (\ path\: :ref:`String`\ ) | + +---------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`setup_local_to_scene`\ (\ ) | + +---------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`take_over_path`\ (\ path\: :ref:`String`\ ) | + +---------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------+ .. rst-class:: classref-section-separator @@ -137,6 +139,45 @@ Emitted by a newly duplicated resource with :ref:`resource_local_to_scene` + +.. _class_Resource_constant_DEEP_DUPLICATE_NONE: + +.. rst-class:: classref-enumeration-constant + +:ref:`DeepDuplicateMode` **DEEP_DUPLICATE_NONE** = ``0`` + +No subresorces at all are duplicated. This is useful even in a deep duplication to have all the arrays and dictionaries duplicated but still pointing to the original resources. + +.. _class_Resource_constant_DEEP_DUPLICATE_INTERNAL: + +.. rst-class:: classref-enumeration-constant + +:ref:`DeepDuplicateMode` **DEEP_DUPLICATE_INTERNAL** = ``1`` + +Only subresources without a path or with a scene-local path will be duplicated. + +.. _class_Resource_constant_DEEP_DUPLICATE_ALL: + +.. rst-class:: classref-enumeration-constant + +:ref:`DeepDuplicateMode` **DEEP_DUPLICATE_ALL** = ``2`` + +Every subresource found will be duplicated, even if it has a non-local path. In other words, even potentially big resources stored separately will be duplicated. + +.. rst-class:: classref-section-separator + +---- + +.. rst-class:: classref-descriptions-group + Property Descriptions --------------------- @@ -208,7 +249,7 @@ The unique path to this resource. If it has been saved to disk, the value will b - |void| **set_scene_unique_id**\ (\ value\: :ref:`String`\ ) - :ref:`String` **get_scene_unique_id**\ (\ ) -An unique identifier relative to the this resource's scene. If left empty, the ID is automatically generated when this resource is saved inside a :ref:`PackedScene`. If the resource is not inside a scene, this property is empty by default. +A unique identifier relative to the this resource's scene. If left empty, the ID is automatically generated when this resource is saved inside a :ref:`PackedScene`. If the resource is not inside a scene, this property is empty by default. \ **Note:** When the :ref:`PackedScene` is saved, if multiple resources in the same scene use the same ID, only the earliest resource in the scene hierarchy keeps the original ID. The other resources are assigned new IDs from :ref:`generate_scene_unique_id()`. @@ -243,7 +284,7 @@ Override this method to return a custom :ref:`RID` when :ref:`get_rid |void| **_reset_state**\ (\ ) |virtual| :ref:`🔗` -For resources that use a variable number of properties, either via :ref:`Object._validate_property()` or :ref:`Object._get_property_list()`, this method should be implemented to correctly clear the resource's state. +For resources that store state in non-exported properties, such as via :ref:`Object._validate_property()` or :ref:`Object._get_property_list()`, this method must be implemented to clear them. .. rst-class:: classref-item-separator @@ -255,7 +296,7 @@ For resources that use a variable number of properties, either via :ref:`Object. |void| **_set_path_cache**\ (\ path\: :ref:`String`\ ) |virtual| |const| :ref:`🔗` -Sets the resource's path to ``path`` without involving the resource cache. +Override this method to execute additional logic after :ref:`set_path_cache()` is called on this object. .. rst-class:: classref-item-separator @@ -274,9 +315,9 @@ Override this method to customize the newly duplicated resource created from :re :: extends Resource - + var damage = 0 - + func _setup_local_to_scene(): damage = randi_range(10, 40) @@ -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:`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:`DeepDuplicateMode` = 1\ ) |const| :ref:`🔗` + +Duplicates this resource, deeply, like :ref:`duplicate()`\ ``(true)``, with extra control over how subresources are handled. + +\ ``deep_subresources_mode`` must be one of the values from :ref:`DeepDuplicateMode`. + .. rst-class:: classref-item-separator ---- @@ -348,7 +405,7 @@ Generates a unique identifier for a resource to be contained inside a :ref:`Pack :ref:`String` **get_id_for_path**\ (\ path\: :ref:`String`\ ) |const| :ref:`🔗` -Returns the unique identifier for the resource with the given ``path`` from the resource cache. If the resource is not loaded and cached, an empty string is returned. +From the internal cache for scene-unique IDs, returns the ID of this resource for the scene at ``path``. If there is no entry, an empty string is returned. Useful to keep scene-unique IDs the same when implementing a VCS-friendly custom resource format by extending :ref:`ResourceFormatLoader` and :ref:`ResourceFormatSaver`. \ **Note:** This method is only implemented when running in an editor context. At runtime, it returns an empty string. @@ -386,7 +443,7 @@ Returns the :ref:`RID` of this resource (or an empty RID). Many resou :ref:`bool` **is_built_in**\ (\ ) |const| :ref:`🔗` -Returns ``true`` if the resource is built-in (from the engine) or ``false`` if it is user-defined. +Returns ``true`` if the resource is saved on disk as a part of another resource's file. .. rst-class:: classref-item-separator @@ -398,7 +455,7 @@ Returns ``true`` if the resource is built-in (from the engine) or ``false`` if i |void| **reset_state**\ (\ ) :ref:`🔗` -For resources that use a variable number of properties, either via :ref:`Object._validate_property()` or :ref:`Object._get_property_list()`, override :ref:`_reset_state()` to correctly clear the resource's state. +Makes the resource clear its non-exported properties. See also :ref:`_reset_state()`. Useful when implementing a custom resource format by extending :ref:`ResourceFormatLoader` and :ref:`ResourceFormatSaver`. .. rst-class:: classref-item-separator @@ -410,7 +467,7 @@ For resources that use a variable number of properties, either via :ref:`Object. |void| **set_id_for_path**\ (\ path\: :ref:`String`, id\: :ref:`String`\ ) :ref:`🔗` -Sets the unique identifier to ``id`` for the resource with the given ``path`` in the resource cache. If the unique identifier is empty, the cache entry using ``path`` is removed if it exists. +In the internal cache for scene-unique IDs, sets the ID of this resource to ``id`` for the scene at ``path``. If ``id`` is empty, the cache entry for ``path`` is cleared. Useful to keep scene-unique IDs the same when implementing a VCS-friendly custom resource format by extending :ref:`ResourceFormatLoader` and :ref:`ResourceFormatSaver`. \ **Note:** This method is only implemented when running in an editor context. @@ -424,7 +481,7 @@ Sets the unique identifier to ``id`` for the resource with the given ``path`` in |void| **set_path_cache**\ (\ path\: :ref:`String`\ ) :ref:`🔗` -Sets the resource's path to ``path`` without involving the resource cache. +Sets the resource's path to ``path`` without involving the resource cache. Useful for handling :ref:`CacheMode` values when implementing a custom resource format by extending :ref:`ResourceFormatLoader` and :ref:`ResourceFormatSaver`. .. rst-class:: classref-item-separator @@ -453,6 +510,7 @@ Calls :ref:`_setup_local_to_scene()` to ``path``, potentially overriding an existing cache entry for this path. Further attempts to load an overridden resource by path will instead return this resource. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_resourceformatloader.rst b/classes/class_resourceformatloader.rst index bbe74530b..800532ba9 100644 --- a/classes/class_resourceformatloader.rst +++ b/classes/class_resourceformatloader.rst @@ -129,7 +129,7 @@ Method Descriptions .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -143,7 +143,7 @@ Method Descriptions .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -155,9 +155,25 @@ Method Descriptions :ref:`PackedStringArray` **_get_dependencies**\ (\ path\: :ref:`String`, add_types\: :ref:`bool`\ ) |virtual| |const| :ref:`🔗` -If implemented, gets the dependencies of a given resource. If ``add_types`` is ``true``, paths should be appended ``::TypeName``, where ``TypeName`` is the class name of the dependency. +Should return the dependencies for the resource at the given ``path``. Each dependency is a string composed of one to three sections separated by ``::``, with trailing empty sections omitted: -\ **Note:** Custom resource types defined by scripts aren't known by the :ref:`ClassDB`, so you might just return ``"Resource"`` for them. +- The first section should contain the UID if the resource has one. Otherwise, it should contain the file path. + +- The second section should contain the class name of the dependency if ``add_types`` is ``true``. Otherwise, it should be empty. + +- The third section should contain the fallback path if the resource has a UID. Otherwise, it should be empty. + +:: + + func _get_dependencies(path, add_types): + return [ + "uid://fqgvuwrkuixh::Script::res://script.gd", + "uid://fqgvuwrkuixh::::res://script.gd", + "res://script.gd::Script", + "res://script.gd", + ] + +\ **Note:** Custom resource types defined by scripts aren't known by the :ref:`ClassDB`, so ``"Resource"`` can be used for the class name. .. rst-class:: classref-item-separator @@ -266,6 +282,7 @@ If implemented, renames dependencies within the given resource and saves it. ``r Returns :ref:`@GlobalScope.OK` on success, or an :ref:`Error` constant in case of failure. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_resourceformatsaver.rst b/classes/class_resourceformatsaver.rst index 47f8e6766..65935a54e 100644 --- a/classes/class_resourceformatsaver.rst +++ b/classes/class_resourceformatsaver.rst @@ -113,6 +113,7 @@ Returns :ref:`@GlobalScope.OK` on success, or an Sets a new UID for the resource at the given ``path``. Returns :ref:`@GlobalScope.OK` on success, or an :ref:`Error` constant in case of failure. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_resourceimporter.rst b/classes/class_resourceimporter.rst index 0e46655f0..3cc804c3a 100644 --- a/classes/class_resourceimporter.rst +++ b/classes/class_resourceimporter.rst @@ -12,7 +12,7 @@ ResourceImporter **Inherits:** :ref:`RefCounted` **<** :ref:`Object` -**Inherited By:** :ref:`EditorImportPlugin`, :ref:`ResourceImporterBitMap`, :ref:`ResourceImporterBMFont`, :ref:`ResourceImporterCSVTranslation`, :ref:`ResourceImporterDynamicFont`, :ref:`ResourceImporterImage`, :ref:`ResourceImporterImageFont`, :ref:`ResourceImporterLayeredTexture`, :ref:`ResourceImporterMP3`, :ref:`ResourceImporterOBJ`, :ref:`ResourceImporterOggVorbis`, :ref:`ResourceImporterScene`, :ref:`ResourceImporterShaderFile`, :ref:`ResourceImporterTexture`, :ref:`ResourceImporterTextureAtlas`, :ref:`ResourceImporterWAV` +**Inherited By:** :ref:`EditorImportPlugin`, :ref:`ResourceImporterBitMap`, :ref:`ResourceImporterBMFont`, :ref:`ResourceImporterCSVTranslation`, :ref:`ResourceImporterDynamicFont`, :ref:`ResourceImporterImage`, :ref:`ResourceImporterImageFont`, :ref:`ResourceImporterLayeredTexture`, :ref:`ResourceImporterMP3`, :ref:`ResourceImporterOBJ`, :ref:`ResourceImporterOggVorbis`, :ref:`ResourceImporterScene`, :ref:`ResourceImporterShaderFile`, :ref:`ResourceImporterSVG`, :ref:`ResourceImporterTexture`, :ref:`ResourceImporterTextureAtlas`, :ref:`ResourceImporterWAV` Base class for resource importers. @@ -30,6 +30,18 @@ Tutorials - :doc:`Import plugins <../tutorials/plugins/editor/import_plugins>` +.. rst-class:: classref-reftable-group + +Methods +------- + +.. table:: + :widths: auto + + +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`PackedStringArray` | :ref:`_get_build_dependencies`\ (\ path\: :ref:`String`\ ) |virtual| |const| | + +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------+ + .. rst-class:: classref-section-separator ---- @@ -61,7 +73,36 @@ The default import order. The import order for scenes, which ensures scenes are imported *after* all other core resources such as textures. Custom importers should generally have an import order lower than ``100`` to avoid issues when importing scenes that rely on custom resources. +.. rst-class:: classref-section-separator + +---- + +.. rst-class:: classref-descriptions-group + +Method Descriptions +------------------- + +.. _class_ResourceImporter_private_method__get_build_dependencies: + +.. rst-class:: classref-method + +:ref:`PackedStringArray` **_get_build_dependencies**\ (\ path\: :ref:`String`\ ) |virtual| |const| :ref:`🔗` + +Called when the engine compilation profile editor wants to check what build options an imported resource needs. For example, :ref:`ResourceImporterDynamicFont` has a property called :ref:`ResourceImporterDynamicFont.multichannel_signed_distance_field`, that depends on the engine to be build with the "msdfgen" module. If that resource happened to be a custom one, it would be handled like this: + +:: + + func _get_build_dependencies(path): + var resource = load(path) + var dependencies = PackedStringArray() + + if resource.multichannel_signed_distance_field: + dependencies.push_back("module_msdfgen_enabled") + + return dependencies + .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_resourceimporterbitmap.rst b/classes/class_resourceimporterbitmap.rst index 1afbe2f85..9e116c950 100644 --- a/classes/class_resourceimporterbitmap.rst +++ b/classes/class_resourceimporterbitmap.rst @@ -76,6 +76,7 @@ The data source to use for generating the bitmap. The threshold to use to determine which bits should be considered enabled or disabled. See also :ref:`create_from`. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_resourceimporterbmfont.rst b/classes/class_resourceimporterbmfont.rst index 1a7f55c59..939050fea 100644 --- a/classes/class_resourceimporterbmfont.rst +++ b/classes/class_resourceimporterbmfont.rst @@ -90,6 +90,7 @@ List of font fallbacks to use if a glyph isn't found in this bitmap font. Fonts Font scaling mode. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_resourceimportercsvtranslation.rst b/classes/class_resourceimportercsvtranslation.rst index 0a2b76a6a..2fca18032 100644 --- a/classes/class_resourceimportercsvtranslation.rst +++ b/classes/class_resourceimportercsvtranslation.rst @@ -82,6 +82,7 @@ If ``true``, creates an :ref:`OptimizedTranslation` The delimiter to use in the CSV file. The default value matches the common CSV convention. Tab-separated values are sometimes called TSV files. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_resourceimporterdynamicfont.rst b/classes/class_resourceimporterdynamicfont.rst index c92a37fd0..2732a4b2e 100644 --- a/classes/class_resourceimporterdynamicfont.rst +++ b/classes/class_resourceimporterdynamicfont.rst @@ -61,6 +61,8 @@ Properties +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------+-----------+ | :ref:`Dictionary` | :ref:`language_support` | ``{}`` | +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------+-----------+ + | :ref:`bool` | :ref:`modulate_color_glyphs` | ``false`` | + +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------+-----------+ | :ref:`int` | :ref:`msdf_pixel_range` | ``8`` | +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------+-----------+ | :ref:`int` | :ref:`msdf_size` | ``48`` | @@ -223,6 +225,18 @@ Override the list of languages supported by this font. If left empty, this is su ---- +.. _class_ResourceImporterDynamicFont_property_modulate_color_glyphs: + +.. rst-class:: classref-property + +:ref:`bool` **modulate_color_glyphs** = ``false`` :ref:`🔗` + +If set to ``true``, color modulation is applied when drawing colored glyphs, otherwise it's applied to the monochrome glyphs only. + +.. rst-class:: classref-item-separator + +---- + .. _class_ResourceImporterDynamicFont_property_msdf_pixel_range: .. rst-class:: classref-property @@ -279,7 +293,7 @@ The OpenType features to enable, disable or set a value for this font. This can :ref:`float` **oversampling** = ``0.0`` :ref:`🔗` -If set to a value greater than ``0.0``, overrides the oversampling factor for the font. This can be used to render the font at a higher or lower resolution than intended without affecting its physical size. In most cases, this should be left at ``0.0``. +If set to a positive value, overrides the oversampling factor of the viewport this font is used in. See :ref:`Viewport.oversampling`. This value doesn't override the ``oversampling`` parameter of ``draw_*`` methods. .. rst-class:: classref-item-separator @@ -328,6 +342,7 @@ Subpixel positioning improves font rendering appearance, especially at smaller f \ **Auto (Except Pixel Fonts):** **Disabled** for the pixel style fonts (each glyph contours contain only straight horizontal and vertical lines), **Auto** for the other fonts. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_resourceimporterimage.rst b/classes/class_resourceimporterimage.rst index c0d255021..fd2fb6b57 100644 --- a/classes/class_resourceimporterimage.rst +++ b/classes/class_resourceimporterimage.rst @@ -12,7 +12,7 @@ ResourceImporterImage **Inherits:** :ref:`ResourceImporter` **<** :ref:`RefCounted` **<** :ref:`Object` -Imports a image for use in scripting, with no rendering capabilities. +Imports an image for use in scripting, with no rendering capabilities. .. rst-class:: classref-introduction-group @@ -29,6 +29,7 @@ Tutorials - :doc:`Importing images <../tutorials/assets_pipeline/importing_images>` .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_resourceimporterimagefont.rst b/classes/class_resourceimporterimagefont.rst index d6882106b..0328c56fb 100644 --- a/classes/class_resourceimporterimagefont.rst +++ b/classes/class_resourceimporterimagefont.rst @@ -107,7 +107,7 @@ For example, ``0-127`` represents the full ASCII range. It can also be written a For any range, the character advance and offset can be customized by appending three space-separated integer values (additional advance, x offset, y offset) to the end. For example ``'a'-'b' 4 5 2`` sets the advance to ``char_width + 4`` and offset to ``Vector2(5, 2)`` for both `a` and `b` characters. -Make sure :ref:`character_ranges` doesn't exceed the number of :ref:`columns` \* :ref:`rows` defined. Otherwise, the font will fail to import. +\ **Note:** The overall number of characters must not exceed the number of :ref:`columns` multiplied by :ref:`rows`. Otherwise, the font will fail to import. **Note:** The returned array is *copied* and any changes to it will not update the original property value. See :ref:`PackedStringArray` for more details. @@ -212,6 +212,7 @@ Number of rows in the font image. See also :ref:`columns` | :ref:`compress/channel_pack` | ``0`` | - +---------------------------+---------------------------------------------------------------------------------------------------------+-----------+ - | :ref:`int` | :ref:`compress/hdr_compression` | ``1`` | - +---------------------------+---------------------------------------------------------------------------------------------------------+-----------+ - | :ref:`bool` | :ref:`compress/high_quality` | ``false`` | - +---------------------------+---------------------------------------------------------------------------------------------------------+-----------+ - | :ref:`float` | :ref:`compress/lossy_quality` | ``0.7`` | - +---------------------------+---------------------------------------------------------------------------------------------------------+-----------+ - | :ref:`int` | :ref:`compress/mode` | ``1`` | - +---------------------------+---------------------------------------------------------------------------------------------------------+-----------+ - | :ref:`bool` | :ref:`mipmaps/generate` | ``true`` | - +---------------------------+---------------------------------------------------------------------------------------------------------+-----------+ - | :ref:`int` | :ref:`mipmaps/limit` | ``-1`` | - +---------------------------+---------------------------------------------------------------------------------------------------------+-----------+ - | :ref:`int` | :ref:`slices/arrangement` | ``1`` | - +---------------------------+---------------------------------------------------------------------------------------------------------+-----------+ + +---------------------------+-----------------------------------------------------------------------------------------------------------+-----------+ + | :ref:`int` | :ref:`compress/channel_pack` | ``0`` | + +---------------------------+-----------------------------------------------------------------------------------------------------------+-----------+ + | :ref:`int` | :ref:`compress/hdr_compression` | ``1`` | + +---------------------------+-----------------------------------------------------------------------------------------------------------+-----------+ + | :ref:`bool` | :ref:`compress/high_quality` | ``false`` | + +---------------------------+-----------------------------------------------------------------------------------------------------------+-----------+ + | :ref:`float` | :ref:`compress/lossy_quality` | ``0.7`` | + +---------------------------+-----------------------------------------------------------------------------------------------------------+-----------+ + | :ref:`int` | :ref:`compress/mode` | ``1`` | + +---------------------------+-----------------------------------------------------------------------------------------------------------+-----------+ + | :ref:`float` | :ref:`compress/rdo_quality_loss` | ``0.0`` | + +---------------------------+-----------------------------------------------------------------------------------------------------------+-----------+ + | :ref:`int` | :ref:`compress/uastc_level` | ``0`` | + +---------------------------+-----------------------------------------------------------------------------------------------------------+-----------+ + | :ref:`bool` | :ref:`mipmaps/generate` | ``true`` | + +---------------------------+-----------------------------------------------------------------------------------------------------------+-----------+ + | :ref:`int` | :ref:`mipmaps/limit` | ``-1`` | + +---------------------------+-----------------------------------------------------------------------------------------------------------+-----------+ + | :ref:`int` | :ref:`slices/arrangement` | ``1`` | + +---------------------------+-----------------------------------------------------------------------------------------------------------+-----------+ .. rst-class:: classref-section-separator @@ -153,6 +157,34 @@ See `Compress mode <../tutorials/assets_pipeline/importing_images.html#compress- ---- +.. _class_ResourceImporterLayeredTexture_property_compress/rdo_quality_loss: + +.. rst-class:: classref-property + +:ref:`float` **compress/rdo_quality_loss** = ``0.0`` :ref:`🔗` + +If greater than or equal to ``0.01``, enables Rate-Distortion Optimization (RDO) to reduce file size. Higher values result in smaller file sizes but lower quality. + +\ **Note:** Enabling RDO makes encoding times significantly longer, especially when the image is large. + +See also :ref:`ProjectSettings.rendering/textures/basis_universal/rdo_dict_size` and :ref:`ProjectSettings.rendering/textures/basis_universal/zstd_supercompression_level` if you want to reduce the file size further. + +.. rst-class:: classref-item-separator + +---- + +.. _class_ResourceImporterLayeredTexture_property_compress/uastc_level: + +.. rst-class:: classref-property + +:ref:`int` **compress/uastc_level** = ``0`` :ref:`🔗` + +The UASTC encoding level. Higher values result in better quality but make encoding times longer. + +.. rst-class:: classref-item-separator + +---- + .. _class_ResourceImporterLayeredTexture_property_mipmaps/generate: .. rst-class:: classref-property @@ -194,6 +226,7 @@ Unimplemented. This currently has no effect when changed. Controls how the cubemap's texture is internally laid out. When using high-resolution cubemaps, **2×3** and **3×2** are less prone to exceeding hardware texture size limits compared to **1×6** and **6×1**. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_resourceimportermp3.rst b/classes/class_resourceimportermp3.rst index cc84ccca2..d4a187e7a 100644 --- a/classes/class_resourceimportermp3.rst +++ b/classes/class_resourceimportermp3.rst @@ -130,6 +130,7 @@ Only has an effect if :ref:`loop` is `` A more convenient editor for :ref:`loop_offset` is provided in the **Advanced Import Settings** dialog, as it lets you preview your changes without having to reimport the audio. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_resourceimporterobj.rst b/classes/class_resourceimporterobj.rst index 4001f36b9..457af1b2a 100644 --- a/classes/class_resourceimporterobj.rst +++ b/classes/class_resourceimporterobj.rst @@ -162,6 +162,7 @@ Offsets the mesh's data by the specified value. This can be used to work around Scales the mesh's data by the specified value. This can be used to work around misscaled meshes without having to modify the source file. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_resourceimporteroggvorbis.rst b/classes/class_resourceimporteroggvorbis.rst index ec0f9f97a..b7cd90e4d 100644 --- a/classes/class_resourceimporteroggvorbis.rst +++ b/classes/class_resourceimporteroggvorbis.rst @@ -177,6 +177,7 @@ Creates a new :ref:`AudioStreamOggVorbis` instance f Creates a new :ref:`AudioStreamOggVorbis` instance from the given file path. The file must be in Ogg Vorbis format. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_resourceimporterscene.rst b/classes/class_resourceimporterscene.rst index ed8394e85..a7ffc721b 100644 --- a/classes/class_resourceimporterscene.rst +++ b/classes/class_resourceimporterscene.rst @@ -12,7 +12,7 @@ ResourceImporterScene **Inherits:** :ref:`ResourceImporter` **<** :ref:`RefCounted` **<** :ref:`Object` -Imports a glTF, FBX, Collada or Blender 3D scene. +Imports a glTF, FBX, COLLADA, or Blender 3D scene. .. rst-class:: classref-introduction-group @@ -55,6 +55,12 @@ Properties +-------------------------------------+------------------------------------------------------------------------------------------------------------------+-----------+ | :ref:`String` | :ref:`import_script/path` | ``""`` | +-------------------------------------+------------------------------------------------------------------------------------------------------------------+-----------+ + | :ref:`int` | :ref:`materials/extract` | ``0`` | + +-------------------------------------+------------------------------------------------------------------------------------------------------------------+-----------+ + | :ref:`int` | :ref:`materials/extract_format` | ``0`` | + +-------------------------------------+------------------------------------------------------------------------------------------------------------------+-----------+ + | :ref:`String` | :ref:`materials/extract_path` | ``""`` | + +-------------------------------------+------------------------------------------------------------------------------------------------------------------+-----------+ | :ref:`bool` | :ref:`meshes/create_shadow_meshes` | ``true`` | +-------------------------------------+------------------------------------------------------------------------------------------------------------------+-----------+ | :ref:`bool` | :ref:`meshes/ensure_tangents` | ``true`` | @@ -75,8 +81,12 @@ Properties +-------------------------------------+------------------------------------------------------------------------------------------------------------------+-----------+ | :ref:`float` | :ref:`nodes/root_scale` | ``1.0`` | +-------------------------------------+------------------------------------------------------------------------------------------------------------------+-----------+ + | :ref:`Script` | :ref:`nodes/root_script` | ``null`` | + +-------------------------------------+------------------------------------------------------------------------------------------------------------------+-----------+ | :ref:`String` | :ref:`nodes/root_type` | ``""`` | +-------------------------------------+------------------------------------------------------------------------------------------------------------------+-----------+ + | :ref:`bool` | :ref:`nodes/use_name_suffixes` | ``true`` | + +-------------------------------------+------------------------------------------------------------------------------------------------------------------+-----------+ | :ref:`bool` | :ref:`nodes/use_node_type_suffixes` | ``true`` | +-------------------------------------+------------------------------------------------------------------------------------------------------------------+-----------+ | :ref:`bool` | :ref:`skins/use_named_skins` | ``true`` | @@ -175,6 +185,54 @@ Path to an import script, which can run code after the import process has comple ---- +.. _class_ResourceImporterScene_property_materials/extract: + +.. rst-class:: classref-property + +:ref:`int` **materials/extract** = ``0`` :ref:`🔗` + +Material extraction mode. + +- ``0 (Keep Internal)``, materials are not extracted. + +- ``1 (Extract Once)``, materials are extracted once and reused on subsequent import. + +- ``2 (Extract and Overwrite)``, materials are extracted and overwritten on every import. + +.. rst-class:: classref-item-separator + +---- + +.. _class_ResourceImporterScene_property_materials/extract_format: + +.. rst-class:: classref-property + +:ref:`int` **materials/extract_format** = ``0`` :ref:`🔗` + +Extracted material file format. + +- ``0 (Text)``, text file format (``*.tres``). + +- ``1 (Binary)``, binary file format (``*.res``). + +- ``2 (Material)``, binary file format (``*.material``). + +.. rst-class:: classref-item-separator + +---- + +.. _class_ResourceImporterScene_property_materials/extract_path: + +.. rst-class:: classref-property + +:ref:`String` **materials/extract_path** = ``""`` :ref:`🔗` + +Path extracted materials are saved to. If empty, source scene path is used. + +.. rst-class:: classref-item-separator + +---- + .. _class_ResourceImporterScene_property_meshes/create_shadow_meshes: .. rst-class:: classref-property @@ -299,6 +357,18 @@ The uniform scale to use for the scene root. The default value of ``1.0`` will n ---- +.. _class_ResourceImporterScene_property_nodes/root_script: + +.. rst-class:: classref-property + +:ref:`Script` **nodes/root_script** = ``null`` :ref:`🔗` + +If set to a valid script, attaches the script to the root node of the imported scene. If the type of the root node is not compatible with the script, the root node will be replaced with a type that is compatible with the script. This setting can also be used on other non-mesh nodes in the scene to attach scripts to them. + +.. rst-class:: classref-item-separator + +---- + .. _class_ResourceImporterScene_property_nodes/root_type: .. rst-class:: classref-property @@ -311,13 +381,25 @@ Override for the root node type. If empty, the root node will use what the scene ---- +.. _class_ResourceImporterScene_property_nodes/use_name_suffixes: + +.. rst-class:: classref-property + +:ref:`bool` **nodes/use_name_suffixes** = ``true`` :ref:`🔗` + +If ``true``, will use suffixes in the names of imported objects such as nodes and resources to determine types and properties, such as ``-noimp`` to skip import of a node or animation, ``-alpha`` to enable alpha transparency on a material, and ``-vcol`` to enable vertex colors on a material. Disabling this makes editor-imported files more similar to the original files, and more similar to files imported at runtime. See :doc:`Node type customization using name suffixes <../tutorials/assets_pipeline/importing_3d_scenes/node_type_customization>` for more information. + +.. rst-class:: classref-item-separator + +---- + .. _class_ResourceImporterScene_property_nodes/use_node_type_suffixes: .. rst-class:: classref-property :ref:`bool` **nodes/use_node_type_suffixes** = ``true`` :ref:`🔗` -If ``true``, use suffixes in the node names to determine the node type, such as ``-col`` for collision shapes. Disabling this makes editor-imported files more similar to the original files, and more similar to importing files at runtime. See :doc:`Node type customization using name suffixes <../tutorials/assets_pipeline/importing_3d_scenes/node_type_customization>` for more information. +If ``true``, will use suffixes in the node names to determine the node type, such as ``-col`` for collision shapes. This is only used when :ref:`nodes/use_name_suffixes` is ``true``. Disabling this makes editor-imported files more similar to the original files, and more similar to files imported at runtime. See :doc:`Node type customization using name suffixes <../tutorials/assets_pipeline/importing_3d_scenes/node_type_customization>` for more information. .. rst-class:: classref-item-separator @@ -340,6 +422,7 @@ If checked, use named :ref:`Skin`\ s for animation. The :ref:`MeshIn Together, this information is enough to tell Godot how to use the bone poses in the :ref:`Skeleton3D` node to render the mesh from each :ref:`MeshInstance3D`. Note that each :ref:`MeshInstance3D` may share binds, as is common in models exported from Blender, or each :ref:`MeshInstance3D` may use a separate :ref:`Skin` object, as is common in models exported from other tools such as Maya. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_resourceimportershaderfile.rst b/classes/class_resourceimportershaderfile.rst index c3f6a01a4..de6f44554 100644 --- a/classes/class_resourceimportershaderfile.rst +++ b/classes/class_resourceimportershaderfile.rst @@ -12,7 +12,7 @@ ResourceImporterShaderFile **Inherits:** :ref:`ResourceImporter` **<** :ref:`RefCounted` **<** :ref:`Object` -Imports native GLSL shaders (not Godot shaders) as a :ref:`RDShaderFile`. +Imports native GLSL shaders (not Godot shaders) as an :ref:`RDShaderFile`. .. rst-class:: classref-introduction-group @@ -22,6 +22,7 @@ Description This imports native GLSL shaders as :ref:`RDShaderFile` resources, for use with low-level :ref:`RenderingDevice` operations. This importer does *not* handle ``.gdshader`` files. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_resourceimportersvg.rst b/classes/class_resourceimportersvg.rst new file mode 100644 index 000000000..e14ec6f76 --- /dev/null +++ b/classes/class_resourceimportersvg.rst @@ -0,0 +1,103 @@ +:github_url: hide + +.. DO NOT EDIT THIS FILE!!! +.. Generated automatically from Godot engine sources. +.. Generator: https://github.com/godotengine/godot/tree/master/doc/tools/make_rst.py. +.. XML source: https://github.com/godotengine/godot/tree/master/doc/classes/ResourceImporterSVG.xml. + +.. _class_ResourceImporterSVG: + +ResourceImporterSVG +=================== + +**Inherits:** :ref:`ResourceImporter` **<** :ref:`RefCounted` **<** :ref:`Object` + +Imports an SVG file as an automatically scalable texture for use in UI elements and 2D rendering. + +.. rst-class:: classref-introduction-group + +Description +----------- + +This importer imports :ref:`DPITexture` resources. See also :ref:`ResourceImporterTexture` and :ref:`ResourceImporterImage`. + +.. rst-class:: classref-reftable-group + +Properties +---------- + +.. table:: + :widths: auto + + +-------------------------------------+------------------------------------------------------------------+----------+ + | :ref:`float` | :ref:`base_scale` | ``1.0`` | + +-------------------------------------+------------------------------------------------------------------+----------+ + | :ref:`Dictionary` | :ref:`color_map` | ``{}`` | + +-------------------------------------+------------------------------------------------------------------+----------+ + | :ref:`bool` | :ref:`compress` | ``true`` | + +-------------------------------------+------------------------------------------------------------------+----------+ + | :ref:`float` | :ref:`saturation` | ``1.0`` | + +-------------------------------------+------------------------------------------------------------------+----------+ + +.. rst-class:: classref-section-separator + +---- + +.. rst-class:: classref-descriptions-group + +Property Descriptions +--------------------- + +.. _class_ResourceImporterSVG_property_base_scale: + +.. rst-class:: classref-property + +:ref:`float` **base_scale** = ``1.0`` :ref:`🔗` + +Texture scale. ``1.0`` is the original SVG size. Higher values result in a larger image. + +.. rst-class:: classref-item-separator + +---- + +.. _class_ResourceImporterSVG_property_color_map: + +.. rst-class:: classref-property + +:ref:`Dictionary` **color_map** = ``{}`` :ref:`🔗` + +If set, remaps texture colors according to :ref:`Color`-:ref:`Color` map. + +.. rst-class:: classref-item-separator + +---- + +.. _class_ResourceImporterSVG_property_compress: + +.. rst-class:: classref-property + +:ref:`bool` **compress** = ``true`` :ref:`🔗` + +If ``true``, uses lossless compression for the SVG source. + +.. rst-class:: classref-item-separator + +---- + +.. _class_ResourceImporterSVG_property_saturation: + +.. rst-class:: classref-property + +:ref:`float` **saturation** = ``1.0`` :ref:`🔗` + +Overrides texture saturation. + +.. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` +.. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` +.. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` +.. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` +.. |static| replace:: :abbr:`static (This method doesn't need an instance to be called, so it can be called directly using the class name.)` +.. |operator| replace:: :abbr:`operator (This method describes a valid operator to use with this type as left-hand operand.)` +.. |bitfield| replace:: :abbr:`BitField (This value is an integer composed as a bitmask of the following flags.)` +.. |void| replace:: :abbr:`void (No return value.)` diff --git a/classes/class_resourceimportertexture.rst b/classes/class_resourceimportertexture.rst index 073580dea..3b717a421 100644 --- a/classes/class_resourceimportertexture.rst +++ b/classes/class_resourceimportertexture.rst @@ -49,6 +49,10 @@ Properties +-----------------------------+--------------------------------------------------------------------------------------------------------------------------------+-----------+ | :ref:`int` | :ref:`compress/normal_map` | ``0`` | +-----------------------------+--------------------------------------------------------------------------------------------------------------------------------+-----------+ + | :ref:`float` | :ref:`compress/rdo_quality_loss` | ``0.0`` | + +-----------------------------+--------------------------------------------------------------------------------------------------------------------------------+-----------+ + | :ref:`int` | :ref:`compress/uastc_level` | ``0`` | + +-----------------------------+--------------------------------------------------------------------------------------------------------------------------------+-----------+ | :ref:`int` | :ref:`detect_3d/compress_to` | ``1`` | +-----------------------------+--------------------------------------------------------------------------------------------------------------------------------+-----------+ | :ref:`bool` | :ref:`editor/convert_colors_with_editor_theme` | ``false`` | @@ -59,6 +63,14 @@ Properties +-----------------------------+--------------------------------------------------------------------------------------------------------------------------------+-----------+ | :ref:`int` | :ref:`mipmaps/limit` | ``-1`` | +-----------------------------+--------------------------------------------------------------------------------------------------------------------------------+-----------+ + | :ref:`int` | :ref:`process/channel_remap/alpha` | ``3`` | + +-----------------------------+--------------------------------------------------------------------------------------------------------------------------------+-----------+ + | :ref:`int` | :ref:`process/channel_remap/blue` | ``2`` | + +-----------------------------+--------------------------------------------------------------------------------------------------------------------------------+-----------+ + | :ref:`int` | :ref:`process/channel_remap/green` | ``1`` | + +-----------------------------+--------------------------------------------------------------------------------------------------------------------------------+-----------+ + | :ref:`int` | :ref:`process/channel_remap/red` | ``0`` | + +-----------------------------+--------------------------------------------------------------------------------------------------------------------------------+-----------+ | :ref:`bool` | :ref:`process/fix_alpha_border` | ``true`` | +-----------------------------+--------------------------------------------------------------------------------------------------------------------------------+-----------+ | :ref:`bool` | :ref:`process/hdr_as_srgb` | ``false`` | @@ -189,6 +201,34 @@ Note that RGTC compression affects the resulting normal map image. You will have ---- +.. _class_ResourceImporterTexture_property_compress/rdo_quality_loss: + +.. rst-class:: classref-property + +:ref:`float` **compress/rdo_quality_loss** = ``0.0`` :ref:`🔗` + +If greater than or equal to ``0.01``, enables Rate-Distortion Optimization (RDO) to reduce file size. Higher values result in smaller file sizes but lower quality. + +\ **Note:** Enabling RDO makes encoding times significantly longer, especially when the image is large. + +See also :ref:`ProjectSettings.rendering/textures/basis_universal/rdo_dict_size` and :ref:`ProjectSettings.rendering/textures/basis_universal/zstd_supercompression_level` if you want to reduce the file size further. + +.. rst-class:: classref-item-separator + +---- + +.. _class_ResourceImporterTexture_property_compress/uastc_level: + +.. rst-class:: classref-property + +:ref:`int` **compress/uastc_level** = ``0`` :ref:`🔗` + +The UASTC encoding level. Higher values result in better quality but make encoding times longer. + +.. rst-class:: classref-item-separator + +---- + .. _class_ResourceImporterTexture_property_detect_3d/compress_to: .. rst-class:: classref-property @@ -209,7 +249,7 @@ Changing this import option only has an effect if a texture is detected as being :ref:`bool` **editor/convert_colors_with_editor_theme** = ``false`` :ref:`🔗` -If ``true``, converts the imported image's colors to match :ref:`EditorSettings.interface/theme/icon_and_font_color`. This assumes the image uses the exact same colors as :doc:`Godot's own color palette for editor icons <../contributing/development/editor/creating_icons>`, with the source file designed for a dark editor theme. This should be enabled for editor plugin icons and custom class icons, but should be left disabled otherwise. +If ``true``, converts the imported image's colors to match :ref:`EditorSettings.interface/theme/icon_and_font_color`. This assumes the image uses the exact same colors as :doc:`Godot's own color palette for editor icons <../engine_details/editor/creating_icons>`, with the source file designed for a dark editor theme. This should be enabled for editor plugin icons and custom class icons, but should be left disabled otherwise. \ **Note:** Only available for SVG images. @@ -263,6 +303,142 @@ Unimplemented. This currently has no effect when changed. ---- +.. _class_ResourceImporterTexture_property_process/channel_remap/alpha: + +.. rst-class:: classref-property + +:ref:`int` **process/channel_remap/alpha** = ``3`` :ref:`🔗` + +Specifies the data source of the output image's alpha channel. + +\ **Red:** Use the values from the source image's red channel. + +\ **Green:** Use the values from the source image's green channel. + +\ **Blue:** Use the values from the source image's blue channel. + +\ **Alpha:** Use the values from the source image's alpha channel. + +\ **Red Inverted:** Use inverted values from the source image's red channel (``1.0 - R``). + +\ **Green Inverted:** Use inverted values from the source image's green channel (``1.0 - G``). + +\ **Blue Inverted:** Use inverted values from the source image's blue channel (``1.0 - B``). + +\ **Alpha Inverted:** Use inverted values from the source image's alpha channel (``1.0 - A``). + +\ **Unused:** Set the color channel's value to the default (``1.0`` for alpha, ``0.0`` for red, green or blue). + +\ **Zero:** Set the color channel's value to ``0.0``. + +\ **One:** Set the color channel's value to ``1.0``. + +.. rst-class:: classref-item-separator + +---- + +.. _class_ResourceImporterTexture_property_process/channel_remap/blue: + +.. rst-class:: classref-property + +:ref:`int` **process/channel_remap/blue** = ``2`` :ref:`🔗` + +Specifies the data source of the output image's blue channel. + +\ **Red:** Use the values from the source image's red channel. + +\ **Green:** Use the values from the source image's green channel. + +\ **Blue:** Use the values from the source image's blue channel. + +\ **Alpha:** Use the values from the source image's alpha channel. + +\ **Red Inverted:** Use inverted values from the source image's red channel (``1.0 - R``). + +\ **Green Inverted:** Use inverted values from the source image's green channel (``1.0 - G``). + +\ **Blue Inverted:** Use inverted values from the source image's blue channel (``1.0 - B``). + +\ **Alpha Inverted:** Use inverted values from the source image's alpha channel (``1.0 - A``). + +\ **Unused:** Set the color channel's value to the default (``1.0`` for alpha, ``0.0`` for red, green or blue). + +\ **Zero:** Set the color channel's value to ``0.0``. + +\ **One:** Set the color channel's value to ``1.0``. + +.. rst-class:: classref-item-separator + +---- + +.. _class_ResourceImporterTexture_property_process/channel_remap/green: + +.. rst-class:: classref-property + +:ref:`int` **process/channel_remap/green** = ``1`` :ref:`🔗` + +Specifies the data source of the output image's green channel. + +\ **Red:** Use the values from the source image's red channel. + +\ **Green:** Use the values from the source image's green channel. + +\ **Blue:** Use the values from the source image's blue channel. + +\ **Alpha:** Use the values from the source image's alpha channel. + +\ **Red Inverted:** Use inverted values from the source image's red channel (``1.0 - R``). + +\ **Green Inverted:** Use inverted values from the source image's green channel (``1.0 - G``). + +\ **Blue Inverted:** Use inverted values from the source image's blue channel (``1.0 - B``). + +\ **Alpha Inverted:** Use inverted values from the source image's alpha channel (``1.0 - A``). + +\ **Unused:** Set the color channel's value to the default (``1.0`` for alpha, ``0.0`` for red, green or blue). + +\ **Zero:** Set the color channel's value to ``0.0``. + +\ **One:** Set the color channel's value to ``1.0``. + +.. rst-class:: classref-item-separator + +---- + +.. _class_ResourceImporterTexture_property_process/channel_remap/red: + +.. rst-class:: classref-property + +:ref:`int` **process/channel_remap/red** = ``0`` :ref:`🔗` + +Specifies the data source of the output image's red channel. + +\ **Red:** Use the values from the source image's red channel. + +\ **Green:** Use the values from the source image's green channel. + +\ **Blue:** Use the values from the source image's blue channel. + +\ **Alpha:** Use the values from the source image's alpha channel. + +\ **Red Inverted:** Use inverted values from the source image's red channel (``1.0 - R``). + +\ **Green Inverted:** Use inverted values from the source image's green channel (``1.0 - G``). + +\ **Blue Inverted:** Use inverted values from the source image's blue channel (``1.0 - B``). + +\ **Alpha Inverted:** Use inverted values from the source image's alpha channel (``1.0 - A``). + +\ **Unused:** Set the color channel's value to the default (``1.0`` for alpha, ``0.0`` for red, green or blue). + +\ **Zero:** Set the color channel's value to ``0.0``. + +\ **One:** Set the color channel's value to ``1.0``. + +.. rst-class:: classref-item-separator + +---- + .. _class_ResourceImporterTexture_property_process/fix_alpha_border: .. rst-class:: classref-property @@ -313,6 +489,8 @@ While these HDR panorama images are accurate to real life, this can cause the ra :ref:`bool` **process/normal_map_invert_y** = ``false`` :ref:`🔗` +**Deprecated:** The same result can be achieved by setting :ref:`process/channel_remap/green` to ``Green Inverted``. + If ``true``, convert the normal map from Y- (DirectX-style) to Y+ (OpenGL-style) by inverting its green color channel. This is the normal map convention expected by Godot. More information about normal maps (including a coordinate order table for popular engines) can be found `here `__. @@ -396,6 +574,7 @@ The scale the SVG should be rendered at, with ``1.0`` being the original design \ **Note:** Only available for SVG images. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_resourceimportertextureatlas.rst b/classes/class_resourceimportertextureatlas.rst index 4be1188b3..9b5d4e556 100644 --- a/classes/class_resourceimportertextureatlas.rst +++ b/classes/class_resourceimportertextureatlas.rst @@ -101,6 +101,7 @@ If ``true``, trims the region to exclude fully transparent pixels using a clippi \ **Note:** Only effective if :ref:`import_mode` is **Region**. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_resourceimporterwav.rst b/classes/class_resourceimporterwav.rst index cb205171a..0022ef4af 100644 --- a/classes/class_resourceimporterwav.rst +++ b/classes/class_resourceimporterwav.rst @@ -208,6 +208,7 @@ The frequency to limit the imported audio sample to (in Hz). Only effective if : If ``true``, forces the imported audio to be mono if the source file is stereo. This decreases the file size by 50% by merging the two channels into one. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_resourceloader.rst b/classes/class_resourceloader.rst index 16ef7cc4e..7c8fc144e 100644 --- a/classes/class_resourceloader.rst +++ b/classes/class_resourceloader.rst @@ -230,13 +230,16 @@ Returns the cached resource reference for the given ``path``. Returns the dependencies for the resource at the given ``path``. -\ **Note:** The dependencies are returned with slices separated by ``::``. You can use :ref:`String.get_slice()` to get their components. +Each dependency is a string that can be divided into sections by ``::``. There can be either one section or three sections, with the second section always being empty. When there is one section, it contains the file path. When there are three sections, the first section contains the UID and the third section contains the fallback path. :: for dependency in ResourceLoader.get_dependencies(path): - print(dependency.get_slice("::", 0)) # Prints the UID. - print(dependency.get_slice("::", 2)) # Prints the path. + if dependency.contains("::"): + print(dependency.get_slice("::", 0)) # Prints the UID. + print(dependency.get_slice("::", 2)) # Prints the fallback path. + else: + print(dependency) # Prints the path. .. rst-class:: classref-item-separator @@ -286,7 +289,16 @@ Once a resource has been loaded by the engine, it is cached in memory for faster :ref:`PackedStringArray` **list_directory**\ (\ directory_path\: :ref:`String`\ ) :ref:`🔗` -Lists a directory (as example: "res://assets/enemies"), returning all resources contained within. The resource files are the original file names as visible in the editor before exporting. +Lists a directory, returning all resources and subdirectories contained within. The resource files have the original file names as visible in the editor before exporting. The directories have ``"/"`` appended. + +:: + + # Prints ["extra_data/", "model.gltf", "model.tscn", "model_slime.png"] + print(ResourceLoader.list_directory("res://assets/enemies/slime")) + +\ **Note:** The order of files and directories returned by this method is not deterministic, and can vary between operating systems. + +\ **Note:** To normally traverse the filesystem, see :ref:`DirAccess`. .. rst-class:: classref-item-separator @@ -304,7 +316,7 @@ The registered :ref:`ResourceFormatLoader`\ s are qu An optional ``type_hint`` can be used to further specify the :ref:`Resource` type that should be handled by the :ref:`ResourceFormatLoader`. Anything that inherits from :ref:`Resource` can be used as a type hint, for example :ref:`Image`. -The ``cache_mode`` property defines whether and how the cache should be used or updated when loading the resource. See :ref:`CacheMode` for details. +The ``cache_mode`` property defines whether and how the cache should be used or updated when loading the resource. Returns an empty resource if no :ref:`ResourceFormatLoader` could handle the file, and prints an error if no file is found at the specified path. @@ -338,7 +350,7 @@ If this is called before the loading thread is done (i.e. :ref:`load_threaded_ge :ref:`ThreadLoadStatus` **load_threaded_get_status**\ (\ path\: :ref:`String`, progress\: :ref:`Array` = []\ ) :ref:`🔗` -Returns the status of a threaded loading operation started with :ref:`load_threaded_request()` for the resource at ``path``. See :ref:`ThreadLoadStatus` for possible return values. +Returns the status of a threaded loading operation started with :ref:`load_threaded_request()` for the resource at ``path``. An array variable can optionally be passed via ``progress``, and will return a one-element array containing the ratio of completion of the threaded loading (between ``0.0`` and ``1.0``). @@ -356,7 +368,7 @@ An array variable can optionally be passed via ``progress``, and will return a o Loads the resource using threads. If ``use_sub_threads`` is ``true``, multiple threads will be used to load the resource, which makes loading faster, but may affect the main thread (and thus cause game slowdowns). -The ``cache_mode`` property defines whether and how the cache should be used or updated when loading the resource. See :ref:`CacheMode` for details. +The ``cache_mode`` parameter defines whether and how the cache should be used or updated when loading the resource. .. rst-class:: classref-item-separator @@ -383,6 +395,7 @@ Unregisters the given :ref:`ResourceFormatLoader`. Changes the behavior on missing sub-resources. The default behavior is to abort loading. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_resourcepreloader.rst b/classes/class_resourcepreloader.rst index f8310835f..12b15a044 100644 --- a/classes/class_resourcepreloader.rst +++ b/classes/class_resourcepreloader.rst @@ -123,6 +123,7 @@ Removes the resource associated to ``name`` from the preloader. Renames a resource inside the preloader from ``name`` to ``newname``. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_resourcesaver.rst b/classes/class_resourcesaver.rst index 4855a2530..99439eec2 100644 --- a/classes/class_resourcesaver.rst +++ b/classes/class_resourcesaver.rst @@ -42,6 +42,8 @@ Methods +---------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`Error` | :ref:`save`\ (\ resource\: :ref:`Resource`, path\: :ref:`String` = "", flags\: |bitfield|\[:ref:`SaverFlags`\] = 0\ ) | +---------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Error` | :ref:`set_uid`\ (\ resource\: :ref:`String`, uid\: :ref:`int`\ ) | + +---------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ .. rst-class:: classref-section-separator @@ -189,13 +191,28 @@ Unregisters the given :ref:`ResourceFormatSaver`. Saves a resource to disk to the given path, using a :ref:`ResourceFormatSaver` that recognizes the resource object. If ``path`` is empty, **ResourceSaver** will try to use :ref:`Resource.resource_path`. -The ``flags`` bitmask can be specified to customize the save behavior using :ref:`SaverFlags` flags. +The ``flags`` bitmask can be specified to customize the save behavior. Returns :ref:`@GlobalScope.OK` on success. \ **Note:** When the project is running, any generated UID associated with the resource will not be saved as the required code is only executed in editor mode. +.. rst-class:: classref-item-separator + +---- + +.. _class_ResourceSaver_method_set_uid: + +.. rst-class:: classref-method + +:ref:`Error` **set_uid**\ (\ resource\: :ref:`String`, uid\: :ref:`int`\ ) :ref:`🔗` + +Sets the UID of the given ``resource`` path to ``uid``. You can generate a new UID using :ref:`ResourceUID.create_id()`. + +Since resources will normally get a UID automatically, this method is only useful in very specific cases. + .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_resourceuid.rst b/classes/class_resourceuid.rst index d379bd72a..e7858801f 100644 --- a/classes/class_resourceuid.rst +++ b/classes/class_resourceuid.rst @@ -36,18 +36,26 @@ Methods +-----------------------------+----------------------------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`create_id`\ (\ ) | +-----------------------------+----------------------------------------------------------------------------------------------------------------------+ + | :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 @@ -105,6 +113,30 @@ In order for this UID to be registered, you must call :ref:`add_id()` **create_id_for_path**\ (\ path\: :ref:`String`\ ) :ref:`🔗` + +Like :ref:`create_id()`, but the UID is seeded with the provided ``path`` and project name. UIDs generated for that path will be always the same within the current project. + +.. rst-class:: classref-item-separator + +---- + +.. _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 @@ -143,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 @@ -179,7 +223,20 @@ 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.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_retargetmodifier3d.rst b/classes/class_retargetmodifier3d.rst index 3642b9530..534218e10 100644 --- a/classes/class_retargetmodifier3d.rst +++ b/classes/class_retargetmodifier3d.rst @@ -252,6 +252,7 @@ Sets :ref:`TRANSFORM_FLAG_ROTATION` into :ref:`enable`. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_ribbontrailmesh.rst b/classes/class_ribbontrailmesh.rst index 79c0e3dd2..4f6fadc8f 100644 --- a/classes/class_ribbontrailmesh.rst +++ b/classes/class_ribbontrailmesh.rst @@ -193,6 +193,7 @@ Determines the shape of the ribbon. The baseline size of the ribbon. The size of a particular section segment is obtained by multiplying this size by the value of the :ref:`curve` at the given distance. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_richtexteffect.rst b/classes/class_richtexteffect.rst index 50e966c24..f7120b5f9 100644 --- a/classes/class_richtexteffect.rst +++ b/classes/class_richtexteffect.rst @@ -79,6 +79,7 @@ Method Descriptions Override this method to modify properties in ``char_fx``. The method must return ``true`` if the character could be transformed successfully. If the method returns ``false``, it will skip transformation to avoid displaying broken text. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_richtextlabel.rst b/classes/class_richtextlabel.rst index c461a1d68..8e119829a 100644 --- a/classes/class_richtextlabel.rst +++ b/classes/class_richtextlabel.rst @@ -29,7 +29,7 @@ A control for displaying text that can contain custom fonts, images, and basic f \ **Note:** ``push_*/pop_*`` functions won't affect BBCode. -\ **Note:** Unlike :ref:`Label`, **RichTextLabel** doesn't have a *property* to horizontally align text to the center. Instead, enable :ref:`bbcode_enabled` and surround the text in a ``[center]`` tag as follows: ``[center]Example[/center]``. There is currently no built-in way to vertically align text either, but this can be emulated by relying on anchors/containers and the :ref:`fit_content` property. +\ **Note:** While :ref:`bbcode_enabled` is enabled, alignment tags such as ``[center]`` will take priority over the :ref:`horizontal_alignment` setting which determines the default text alignment. .. rst-class:: classref-introduction-group @@ -53,6 +53,8 @@ Properties +-----------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------+---------------------------------------------------------------------------+ | :ref:`AutowrapMode` | :ref:`autowrap_mode` | ``3`` | +-----------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------+---------------------------------------------------------------------------+ + | |bitfield|\[:ref:`LineBreakFlag`\] | :ref:`autowrap_trim_flags` | ``192`` | + +-----------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------+---------------------------------------------------------------------------+ | :ref:`bool` | :ref:`bbcode_enabled` | ``false`` | +-----------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------+---------------------------------------------------------------------------+ | :ref:`bool` | clip_contents | ``true`` (overrides :ref:`Control`) | @@ -67,6 +69,8 @@ Properties +-----------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------+---------------------------------------------------------------------------+ | :ref:`bool` | :ref:`fit_content` | ``false`` | +-----------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------+---------------------------------------------------------------------------+ + | :ref:`FocusMode` | focus_mode | ``3`` (overrides :ref:`Control`) | + +-----------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------+---------------------------------------------------------------------------+ | :ref:`bool` | :ref:`hint_underlined` | ``true`` | +-----------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------+---------------------------------------------------------------------------+ | :ref:`HorizontalAlignment` | :ref:`horizontal_alignment` | ``0`` | @@ -83,6 +87,8 @@ Properties +-----------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------+---------------------------------------------------------------------------+ | :ref:`bool` | :ref:`scroll_following` | ``false`` | +-----------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------+---------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`scroll_following_visible_characters` | ``false`` | + +-----------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------+---------------------------------------------------------------------------+ | :ref:`bool` | :ref:`selection_enabled` | ``false`` | +-----------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------+---------------------------------------------------------------------------+ | :ref:`bool` | :ref:`shortcut_keys_enabled` | ``true`` | @@ -118,151 +124,163 @@ Methods .. table:: :widths: auto - +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`add_image`\ (\ image\: :ref:`Texture2D`, width\: :ref:`int` = 0, height\: :ref:`int` = 0, color\: :ref:`Color` = Color(1, 1, 1, 1), inline_align\: :ref:`InlineAlignment` = 5, region\: :ref:`Rect2` = Rect2(0, 0, 0, 0), key\: :ref:`Variant` = null, pad\: :ref:`bool` = false, tooltip\: :ref:`String` = "", size_in_percent\: :ref:`bool` = false\ ) | - +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`add_text`\ (\ text\: :ref:`String`\ ) | - +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`append_text`\ (\ bbcode\: :ref:`String`\ ) | - +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`clear`\ (\ ) | - +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`deselect`\ (\ ) | - +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`get_character_line`\ (\ character\: :ref:`int`\ ) | - +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`get_character_paragraph`\ (\ character\: :ref:`int`\ ) | - +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`get_content_height`\ (\ ) |const| | - +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`get_content_width`\ (\ ) |const| | - +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`get_line_count`\ (\ ) |const| | - +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`float` | :ref:`get_line_offset`\ (\ line\: :ref:`int`\ ) | - +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Vector2i` | :ref:`get_line_range`\ (\ line\: :ref:`int`\ ) | - +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`PopupMenu` | :ref:`get_menu`\ (\ ) |const| | - +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`get_paragraph_count`\ (\ ) |const| | - +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`float` | :ref:`get_paragraph_offset`\ (\ paragraph\: :ref:`int`\ ) | - +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`String` | :ref:`get_parsed_text`\ (\ ) |const| | - +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`String` | :ref:`get_selected_text`\ (\ ) |const| | - +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`get_selection_from`\ (\ ) |const| | - +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`float` | :ref:`get_selection_line_offset`\ (\ ) |const| | - +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`get_selection_to`\ (\ ) |const| | - +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`get_total_character_count`\ (\ ) |const| | - +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`VScrollBar` | :ref:`get_v_scroll_bar`\ (\ ) | - +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`get_visible_line_count`\ (\ ) |const| | - +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`get_visible_paragraph_count`\ (\ ) |const| | - +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`install_effect`\ (\ effect\: :ref:`Variant`\ ) | - +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`invalidate_paragraph`\ (\ paragraph\: :ref:`int`\ ) | - +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`is_finished`\ (\ ) |const| | - +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`is_menu_visible`\ (\ ) |const| | - +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`is_ready`\ (\ ) |const| | - +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`menu_option`\ (\ option\: :ref:`int`\ ) | - +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`newline`\ (\ ) | - +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`parse_bbcode`\ (\ bbcode\: :ref:`String`\ ) | - +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Dictionary` | :ref:`parse_expressions_for_values`\ (\ expressions\: :ref:`PackedStringArray`\ ) | - +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`pop`\ (\ ) | - +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`pop_all`\ (\ ) | - +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`pop_context`\ (\ ) | - +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`push_bgcolor`\ (\ bgcolor\: :ref:`Color`\ ) | - +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`push_bold`\ (\ ) | - +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`push_bold_italics`\ (\ ) | - +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`push_cell`\ (\ ) | - +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`push_color`\ (\ color\: :ref:`Color`\ ) | - +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`push_context`\ (\ ) | - +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`push_customfx`\ (\ effect\: :ref:`RichTextEffect`, env\: :ref:`Dictionary`\ ) | - +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`push_dropcap`\ (\ string\: :ref:`String`, font\: :ref:`Font`, size\: :ref:`int`, dropcap_margins\: :ref:`Rect2` = Rect2(0, 0, 0, 0), color\: :ref:`Color` = Color(1, 1, 1, 1), outline_size\: :ref:`int` = 0, outline_color\: :ref:`Color` = Color(0, 0, 0, 0)\ ) | - +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`push_fgcolor`\ (\ fgcolor\: :ref:`Color`\ ) | - +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`push_font`\ (\ font\: :ref:`Font`, font_size\: :ref:`int` = 0\ ) | - +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`push_font_size`\ (\ font_size\: :ref:`int`\ ) | - +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`push_hint`\ (\ description\: :ref:`String`\ ) | - +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`push_indent`\ (\ level\: :ref:`int`\ ) | - +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`push_italics`\ (\ ) | - +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`push_language`\ (\ language\: :ref:`String`\ ) | - +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`push_list`\ (\ level\: :ref:`int`, type\: :ref:`ListType`, capitalize\: :ref:`bool`, bullet\: :ref:`String` = "•"\ ) | - +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`push_meta`\ (\ data\: :ref:`Variant`, underline_mode\: :ref:`MetaUnderline` = 1, tooltip\: :ref:`String` = ""\ ) | - +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`push_mono`\ (\ ) | - +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`push_normal`\ (\ ) | - +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`push_outline_color`\ (\ color\: :ref:`Color`\ ) | - +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`push_outline_size`\ (\ outline_size\: :ref:`int`\ ) | - +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`push_paragraph`\ (\ alignment\: :ref:`HorizontalAlignment`, base_direction\: :ref:`TextDirection` = 0, language\: :ref:`String` = "", st_parser\: :ref:`StructuredTextParser` = 0, justification_flags\: |bitfield|\[:ref:`JustificationFlag`\] = 163, tab_stops\: :ref:`PackedFloat32Array` = PackedFloat32Array()\ ) | - +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`push_strikethrough`\ (\ ) | - +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`push_table`\ (\ columns\: :ref:`int`, inline_align\: :ref:`InlineAlignment` = 0, align_to_row\: :ref:`int` = -1\ ) | - +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`push_underline`\ (\ ) | - +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`remove_paragraph`\ (\ paragraph\: :ref:`int`, no_invalidate\: :ref:`bool` = false\ ) | - +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`scroll_to_line`\ (\ line\: :ref:`int`\ ) | - +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`scroll_to_paragraph`\ (\ paragraph\: :ref:`int`\ ) | - +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`scroll_to_selection`\ (\ ) | - +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`select_all`\ (\ ) | - +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`set_cell_border_color`\ (\ color\: :ref:`Color`\ ) | - +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`set_cell_padding`\ (\ padding\: :ref:`Rect2`\ ) | - +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`set_cell_row_background_color`\ (\ odd_row_bg\: :ref:`Color`, even_row_bg\: :ref:`Color`\ ) | - +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`set_cell_size_override`\ (\ min_size\: :ref:`Vector2`, max_size\: :ref:`Vector2`\ ) | - +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`set_table_column_expand`\ (\ column\: :ref:`int`, expand\: :ref:`bool`, ratio\: :ref:`int` = 1, shrink\: :ref:`bool` = true\ ) | - +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`update_image`\ (\ key\: :ref:`Variant`, mask\: |bitfield|\[:ref:`ImageUpdateMask`\], image\: :ref:`Texture2D`, width\: :ref:`int` = 0, height\: :ref:`int` = 0, color\: :ref:`Color` = Color(1, 1, 1, 1), inline_align\: :ref:`InlineAlignment` = 5, region\: :ref:`Rect2` = Rect2(0, 0, 0, 0), pad\: :ref:`bool` = false, tooltip\: :ref:`String` = "", size_in_percent\: :ref:`bool` = false\ ) | - +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`add_hr`\ (\ width\: :ref:`int` = 90, height\: :ref:`int` = 2, color\: :ref:`Color` = Color(1, 1, 1, 1), alignment\: :ref:`HorizontalAlignment` = 1, width_in_percent\: :ref:`bool` = true, height_in_percent\: :ref:`bool` = false\ ) | + +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`add_image`\ (\ image\: :ref:`Texture2D`, width\: :ref:`int` = 0, height\: :ref:`int` = 0, color\: :ref:`Color` = Color(1, 1, 1, 1), inline_align\: :ref:`InlineAlignment` = 5, region\: :ref:`Rect2` = Rect2(0, 0, 0, 0), key\: :ref:`Variant` = null, pad\: :ref:`bool` = false, tooltip\: :ref:`String` = "", width_in_percent\: :ref:`bool` = false, height_in_percent\: :ref:`bool` = false, alt_text\: :ref:`String` = ""\ ) | + +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`add_text`\ (\ text\: :ref:`String`\ ) | + +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`append_text`\ (\ bbcode\: :ref:`String`\ ) | + +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`clear`\ (\ ) | + +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`deselect`\ (\ ) | + +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`get_character_line`\ (\ character\: :ref:`int`\ ) | + +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`get_character_paragraph`\ (\ character\: :ref:`int`\ ) | + +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`get_content_height`\ (\ ) |const| | + +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`get_content_width`\ (\ ) |const| | + +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`get_line_count`\ (\ ) |const| | + +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`get_line_height`\ (\ line\: :ref:`int`\ ) |const| | + +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`get_line_offset`\ (\ line\: :ref:`int`\ ) | + +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Vector2i` | :ref:`get_line_range`\ (\ line\: :ref:`int`\ ) | + +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`get_line_width`\ (\ line\: :ref:`int`\ ) |const| | + +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`PopupMenu` | :ref:`get_menu`\ (\ ) |const| | + +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`get_paragraph_count`\ (\ ) |const| | + +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`get_paragraph_offset`\ (\ paragraph\: :ref:`int`\ ) | + +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`get_parsed_text`\ (\ ) |const| | + +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`get_selected_text`\ (\ ) |const| | + +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`get_selection_from`\ (\ ) |const| | + +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`get_selection_line_offset`\ (\ ) |const| | + +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`get_selection_to`\ (\ ) |const| | + +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`get_total_character_count`\ (\ ) |const| | + +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`VScrollBar` | :ref:`get_v_scroll_bar`\ (\ ) | + +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Rect2i` | :ref:`get_visible_content_rect`\ (\ ) |const| | + +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`get_visible_line_count`\ (\ ) |const| | + +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`get_visible_paragraph_count`\ (\ ) |const| | + +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`install_effect`\ (\ effect\: :ref:`Variant`\ ) | + +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`invalidate_paragraph`\ (\ paragraph\: :ref:`int`\ ) | + +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`is_finished`\ (\ ) |const| | + +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`is_menu_visible`\ (\ ) |const| | + +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`is_ready`\ (\ ) |const| | + +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`menu_option`\ (\ option\: :ref:`int`\ ) | + +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`newline`\ (\ ) | + +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`parse_bbcode`\ (\ bbcode\: :ref:`String`\ ) | + +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Dictionary` | :ref:`parse_expressions_for_values`\ (\ expressions\: :ref:`PackedStringArray`\ ) | + +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`pop`\ (\ ) | + +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`pop_all`\ (\ ) | + +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`pop_context`\ (\ ) | + +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`push_bgcolor`\ (\ bgcolor\: :ref:`Color`\ ) | + +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`push_bold`\ (\ ) | + +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`push_bold_italics`\ (\ ) | + +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`push_cell`\ (\ ) | + +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`push_color`\ (\ color\: :ref:`Color`\ ) | + +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`push_context`\ (\ ) | + +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`push_customfx`\ (\ effect\: :ref:`RichTextEffect`, env\: :ref:`Dictionary`\ ) | + +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`push_dropcap`\ (\ string\: :ref:`String`, font\: :ref:`Font`, size\: :ref:`int`, dropcap_margins\: :ref:`Rect2` = Rect2(0, 0, 0, 0), color\: :ref:`Color` = Color(1, 1, 1, 1), outline_size\: :ref:`int` = 0, outline_color\: :ref:`Color` = Color(0, 0, 0, 0)\ ) | + +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`push_fgcolor`\ (\ fgcolor\: :ref:`Color`\ ) | + +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`push_font`\ (\ font\: :ref:`Font`, font_size\: :ref:`int` = 0\ ) | + +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`push_font_size`\ (\ font_size\: :ref:`int`\ ) | + +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`push_hint`\ (\ description\: :ref:`String`\ ) | + +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`push_indent`\ (\ level\: :ref:`int`\ ) | + +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`push_italics`\ (\ ) | + +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`push_language`\ (\ language\: :ref:`String`\ ) | + +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`push_list`\ (\ level\: :ref:`int`, type\: :ref:`ListType`, capitalize\: :ref:`bool`, bullet\: :ref:`String` = "•"\ ) | + +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`push_meta`\ (\ data\: :ref:`Variant`, underline_mode\: :ref:`MetaUnderline` = 1, tooltip\: :ref:`String` = ""\ ) | + +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`push_mono`\ (\ ) | + +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`push_normal`\ (\ ) | + +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`push_outline_color`\ (\ color\: :ref:`Color`\ ) | + +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`push_outline_size`\ (\ outline_size\: :ref:`int`\ ) | + +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`push_paragraph`\ (\ alignment\: :ref:`HorizontalAlignment`, base_direction\: :ref:`TextDirection` = 0, language\: :ref:`String` = "", st_parser\: :ref:`StructuredTextParser` = 0, justification_flags\: |bitfield|\[:ref:`JustificationFlag`\] = 163, tab_stops\: :ref:`PackedFloat32Array` = PackedFloat32Array()\ ) | + +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`push_strikethrough`\ (\ color\: :ref:`Color` = Color(0, 0, 0, 0)\ ) | + +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`push_table`\ (\ columns\: :ref:`int`, inline_align\: :ref:`InlineAlignment` = 0, align_to_row\: :ref:`int` = -1, name\: :ref:`String` = ""\ ) | + +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`push_underline`\ (\ color\: :ref:`Color` = Color(0, 0, 0, 0)\ ) | + +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`reload_effects`\ (\ ) | + +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`remove_paragraph`\ (\ paragraph\: :ref:`int`, no_invalidate\: :ref:`bool` = false\ ) | + +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`scroll_to_line`\ (\ line\: :ref:`int`\ ) | + +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`scroll_to_paragraph`\ (\ paragraph\: :ref:`int`\ ) | + +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`scroll_to_selection`\ (\ ) | + +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`select_all`\ (\ ) | + +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_cell_border_color`\ (\ color\: :ref:`Color`\ ) | + +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_cell_padding`\ (\ padding\: :ref:`Rect2`\ ) | + +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_cell_row_background_color`\ (\ odd_row_bg\: :ref:`Color`, even_row_bg\: :ref:`Color`\ ) | + +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_cell_size_override`\ (\ min_size\: :ref:`Vector2`, max_size\: :ref:`Vector2`\ ) | + +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_table_column_expand`\ (\ column\: :ref:`int`, expand\: :ref:`bool`, ratio\: :ref:`int` = 1, shrink\: :ref:`bool` = true\ ) | + +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_table_column_name`\ (\ column\: :ref:`int`, name\: :ref:`String`\ ) | + +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`update_image`\ (\ key\: :ref:`Variant`, mask\: |bitfield|\[:ref:`ImageUpdateMask`\], image\: :ref:`Texture2D`, width\: :ref:`int` = 0, height\: :ref:`int` = 0, color\: :ref:`Color` = Color(1, 1, 1, 1), inline_align\: :ref:`InlineAlignment` = 5, region\: :ref:`Rect2` = Rect2(0, 0, 0, 0), pad\: :ref:`bool` = false, tooltip\: :ref:`String` = "", width_in_percent\: :ref:`bool` = false, height_in_percent\: :ref:`bool` = false\ ) | + +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ .. rst-class:: classref-reftable-group @@ -272,65 +290,73 @@ Theme Properties .. table:: :widths: auto - +---------------------------------+----------------------------------------------------------------------------------------------+-----------------------------+ - | :ref:`Color` | :ref:`default_color` | ``Color(1, 1, 1, 1)`` | - +---------------------------------+----------------------------------------------------------------------------------------------+-----------------------------+ - | :ref:`Color` | :ref:`font_outline_color` | ``Color(0, 0, 0, 1)`` | - +---------------------------------+----------------------------------------------------------------------------------------------+-----------------------------+ - | :ref:`Color` | :ref:`font_selected_color` | ``Color(0, 0, 0, 0)`` | - +---------------------------------+----------------------------------------------------------------------------------------------+-----------------------------+ - | :ref:`Color` | :ref:`font_shadow_color` | ``Color(0, 0, 0, 0)`` | - +---------------------------------+----------------------------------------------------------------------------------------------+-----------------------------+ - | :ref:`Color` | :ref:`selection_color` | ``Color(0.1, 0.1, 1, 0.8)`` | - +---------------------------------+----------------------------------------------------------------------------------------------+-----------------------------+ - | :ref:`Color` | :ref:`table_border` | ``Color(0, 0, 0, 0)`` | - +---------------------------------+----------------------------------------------------------------------------------------------+-----------------------------+ - | :ref:`Color` | :ref:`table_even_row_bg` | ``Color(0, 0, 0, 0)`` | - +---------------------------------+----------------------------------------------------------------------------------------------+-----------------------------+ - | :ref:`Color` | :ref:`table_odd_row_bg` | ``Color(0, 0, 0, 0)`` | - +---------------------------------+----------------------------------------------------------------------------------------------+-----------------------------+ - | :ref:`int` | :ref:`line_separation` | ``0`` | - +---------------------------------+----------------------------------------------------------------------------------------------+-----------------------------+ - | :ref:`int` | :ref:`outline_size` | ``0`` | - +---------------------------------+----------------------------------------------------------------------------------------------+-----------------------------+ - | :ref:`int` | :ref:`shadow_offset_x` | ``1`` | - +---------------------------------+----------------------------------------------------------------------------------------------+-----------------------------+ - | :ref:`int` | :ref:`shadow_offset_y` | ``1`` | - +---------------------------------+----------------------------------------------------------------------------------------------+-----------------------------+ - | :ref:`int` | :ref:`shadow_outline_size` | ``1`` | - +---------------------------------+----------------------------------------------------------------------------------------------+-----------------------------+ - | :ref:`int` | :ref:`table_h_separation` | ``3`` | - +---------------------------------+----------------------------------------------------------------------------------------------+-----------------------------+ - | :ref:`int` | :ref:`table_v_separation` | ``3`` | - +---------------------------------+----------------------------------------------------------------------------------------------+-----------------------------+ - | :ref:`int` | :ref:`text_highlight_h_padding` | ``3`` | - +---------------------------------+----------------------------------------------------------------------------------------------+-----------------------------+ - | :ref:`int` | :ref:`text_highlight_v_padding` | ``3`` | - +---------------------------------+----------------------------------------------------------------------------------------------+-----------------------------+ - | :ref:`Font` | :ref:`bold_font` | | - +---------------------------------+----------------------------------------------------------------------------------------------+-----------------------------+ - | :ref:`Font` | :ref:`bold_italics_font` | | - +---------------------------------+----------------------------------------------------------------------------------------------+-----------------------------+ - | :ref:`Font` | :ref:`italics_font` | | - +---------------------------------+----------------------------------------------------------------------------------------------+-----------------------------+ - | :ref:`Font` | :ref:`mono_font` | | - +---------------------------------+----------------------------------------------------------------------------------------------+-----------------------------+ - | :ref:`Font` | :ref:`normal_font` | | - +---------------------------------+----------------------------------------------------------------------------------------------+-----------------------------+ - | :ref:`int` | :ref:`bold_font_size` | | - +---------------------------------+----------------------------------------------------------------------------------------------+-----------------------------+ - | :ref:`int` | :ref:`bold_italics_font_size` | | - +---------------------------------+----------------------------------------------------------------------------------------------+-----------------------------+ - | :ref:`int` | :ref:`italics_font_size` | | - +---------------------------------+----------------------------------------------------------------------------------------------+-----------------------------+ - | :ref:`int` | :ref:`mono_font_size` | | - +---------------------------------+----------------------------------------------------------------------------------------------+-----------------------------+ - | :ref:`int` | :ref:`normal_font_size` | | - +---------------------------------+----------------------------------------------------------------------------------------------+-----------------------------+ - | :ref:`StyleBox` | :ref:`focus` | | - +---------------------------------+----------------------------------------------------------------------------------------------+-----------------------------+ - | :ref:`StyleBox` | :ref:`normal` | | - +---------------------------------+----------------------------------------------------------------------------------------------+-----------------------------+ + +-----------------------------------+----------------------------------------------------------------------------------------------+-----------------------------+ + | :ref:`Color` | :ref:`default_color` | ``Color(1, 1, 1, 1)`` | + +-----------------------------------+----------------------------------------------------------------------------------------------+-----------------------------+ + | :ref:`Color` | :ref:`font_outline_color` | ``Color(0, 0, 0, 1)`` | + +-----------------------------------+----------------------------------------------------------------------------------------------+-----------------------------+ + | :ref:`Color` | :ref:`font_selected_color` | ``Color(0, 0, 0, 0)`` | + +-----------------------------------+----------------------------------------------------------------------------------------------+-----------------------------+ + | :ref:`Color` | :ref:`font_shadow_color` | ``Color(0, 0, 0, 0)`` | + +-----------------------------------+----------------------------------------------------------------------------------------------+-----------------------------+ + | :ref:`Color` | :ref:`selection_color` | ``Color(0.1, 0.1, 1, 0.8)`` | + +-----------------------------------+----------------------------------------------------------------------------------------------+-----------------------------+ + | :ref:`Color` | :ref:`table_border` | ``Color(0, 0, 0, 0)`` | + +-----------------------------------+----------------------------------------------------------------------------------------------+-----------------------------+ + | :ref:`Color` | :ref:`table_even_row_bg` | ``Color(0, 0, 0, 0)`` | + +-----------------------------------+----------------------------------------------------------------------------------------------+-----------------------------+ + | :ref:`Color` | :ref:`table_odd_row_bg` | ``Color(0, 0, 0, 0)`` | + +-----------------------------------+----------------------------------------------------------------------------------------------+-----------------------------+ + | :ref:`int` | :ref:`line_separation` | ``0`` | + +-----------------------------------+----------------------------------------------------------------------------------------------+-----------------------------+ + | :ref:`int` | :ref:`outline_size` | ``0`` | + +-----------------------------------+----------------------------------------------------------------------------------------------+-----------------------------+ + | :ref:`int` | :ref:`paragraph_separation` | ``0`` | + +-----------------------------------+----------------------------------------------------------------------------------------------+-----------------------------+ + | :ref:`int` | :ref:`shadow_offset_x` | ``1`` | + +-----------------------------------+----------------------------------------------------------------------------------------------+-----------------------------+ + | :ref:`int` | :ref:`shadow_offset_y` | ``1`` | + +-----------------------------------+----------------------------------------------------------------------------------------------+-----------------------------+ + | :ref:`int` | :ref:`shadow_outline_size` | ``1`` | + +-----------------------------------+----------------------------------------------------------------------------------------------+-----------------------------+ + | :ref:`int` | :ref:`strikethrough_alpha` | ``50`` | + +-----------------------------------+----------------------------------------------------------------------------------------------+-----------------------------+ + | :ref:`int` | :ref:`table_h_separation` | ``3`` | + +-----------------------------------+----------------------------------------------------------------------------------------------+-----------------------------+ + | :ref:`int` | :ref:`table_v_separation` | ``3`` | + +-----------------------------------+----------------------------------------------------------------------------------------------+-----------------------------+ + | :ref:`int` | :ref:`text_highlight_h_padding` | ``3`` | + +-----------------------------------+----------------------------------------------------------------------------------------------+-----------------------------+ + | :ref:`int` | :ref:`text_highlight_v_padding` | ``3`` | + +-----------------------------------+----------------------------------------------------------------------------------------------+-----------------------------+ + | :ref:`int` | :ref:`underline_alpha` | ``50`` | + +-----------------------------------+----------------------------------------------------------------------------------------------+-----------------------------+ + | :ref:`Font` | :ref:`bold_font` | | + +-----------------------------------+----------------------------------------------------------------------------------------------+-----------------------------+ + | :ref:`Font` | :ref:`bold_italics_font` | | + +-----------------------------------+----------------------------------------------------------------------------------------------+-----------------------------+ + | :ref:`Font` | :ref:`italics_font` | | + +-----------------------------------+----------------------------------------------------------------------------------------------+-----------------------------+ + | :ref:`Font` | :ref:`mono_font` | | + +-----------------------------------+----------------------------------------------------------------------------------------------+-----------------------------+ + | :ref:`Font` | :ref:`normal_font` | | + +-----------------------------------+----------------------------------------------------------------------------------------------+-----------------------------+ + | :ref:`int` | :ref:`bold_font_size` | | + +-----------------------------------+----------------------------------------------------------------------------------------------+-----------------------------+ + | :ref:`int` | :ref:`bold_italics_font_size` | | + +-----------------------------------+----------------------------------------------------------------------------------------------+-----------------------------+ + | :ref:`int` | :ref:`italics_font_size` | | + +-----------------------------------+----------------------------------------------------------------------------------------------+-----------------------------+ + | :ref:`int` | :ref:`mono_font_size` | | + +-----------------------------------+----------------------------------------------------------------------------------------------+-----------------------------+ + | :ref:`int` | :ref:`normal_font_size` | | + +-----------------------------------+----------------------------------------------------------------------------------------------+-----------------------------+ + | :ref:`Texture2D` | :ref:`horizontal_rule` | | + +-----------------------------------+----------------------------------------------------------------------------------------------+-----------------------------+ + | :ref:`StyleBox` | :ref:`focus` | | + +-----------------------------------+----------------------------------------------------------------------------------------------+-----------------------------+ + | :ref:`StyleBox` | :ref:`normal` | | + +-----------------------------------+----------------------------------------------------------------------------------------------+-----------------------------+ .. rst-class:: classref-section-separator @@ -611,7 +637,24 @@ Property Descriptions - |void| **set_autowrap_mode**\ (\ value\: :ref:`AutowrapMode`\ ) - :ref:`AutowrapMode` **get_autowrap_mode**\ (\ ) -If set to something other than :ref:`TextServer.AUTOWRAP_OFF`, the text gets wrapped inside the node's bounding rectangle. To see how each mode behaves, see :ref:`AutowrapMode`. +If set to something other than :ref:`TextServer.AUTOWRAP_OFF`, the text gets wrapped inside the node's bounding rectangle. + +.. rst-class:: classref-item-separator + +---- + +.. _class_RichTextLabel_property_autowrap_trim_flags: + +.. rst-class:: classref-property + +|bitfield|\[:ref:`LineBreakFlag`\] **autowrap_trim_flags** = ``192`` :ref:`🔗` + +.. rst-class:: classref-property-setget + +- |void| **set_autowrap_trim_flags**\ (\ value\: |bitfield|\[:ref:`LineBreakFlag`\]\ ) +- |bitfield|\[:ref:`LineBreakFlag`\] **get_autowrap_trim_flags**\ (\ ) + +Autowrap space trimming flags. See :ref:`TextServer.BREAK_TRIM_START_EDGE_SPACES` and :ref:`TextServer.BREAK_TRIM_END_EDGE_SPACES` for more info. .. rst-class:: classref-item-separator @@ -751,7 +794,7 @@ If ``true``, the label underlines hint tags such as ``[hint=description]{text}[/ - |void| **set_horizontal_alignment**\ (\ value\: :ref:`HorizontalAlignment`\ ) - :ref:`HorizontalAlignment` **get_horizontal_alignment**\ (\ ) -Controls the text's horizontal alignment. Supports left, center, right, and fill, or justify. Set it to one of the :ref:`HorizontalAlignment` constants. +Controls the text's horizontal alignment. Supports left, center, right, and fill, or justify. .. rst-class:: classref-item-separator @@ -768,7 +811,7 @@ Controls the text's horizontal alignment. Supports left, center, right, and fill - |void| **set_justification_flags**\ (\ value\: |bitfield|\[:ref:`JustificationFlag`\]\ ) - |bitfield|\[:ref:`JustificationFlag`\] **get_justification_flags**\ (\ ) -Line fill alignment rules. See :ref:`JustificationFlag` for more information. +Line fill alignment rules. .. rst-class:: classref-item-separator @@ -861,6 +904,23 @@ If ``true``, the window scrolls down to display new content automatically. ---- +.. _class_RichTextLabel_property_scroll_following_visible_characters: + +.. rst-class:: classref-property + +:ref:`bool` **scroll_following_visible_characters** = ``false`` :ref:`🔗` + +.. rst-class:: classref-property-setget + +- |void| **set_scroll_follow_visible_characters**\ (\ value\: :ref:`bool`\ ) +- :ref:`bool` **is_scroll_following_visible_characters**\ (\ ) + +If ``true``, the window scrolls to display the last visible line when :ref:`visible_characters` or :ref:`visible_ratio` is changed. + +.. rst-class:: classref-item-separator + +---- + .. _class_RichTextLabel_property_selection_enabled: .. rst-class:: classref-property @@ -1029,7 +1089,7 @@ If ``true``, text processing is done in a background thread. - |void| **set_vertical_alignment**\ (\ value\: :ref:`VerticalAlignment`\ ) - :ref:`VerticalAlignment` **get_vertical_alignment**\ (\ ) -Controls the text's vertical alignment. Supports top, center, bottom, and fill. Set it to one of the :ref:`VerticalAlignment` constants. +Controls the text's vertical alignment. Supports top, center, bottom, and fill. .. rst-class:: classref-item-separator @@ -1050,6 +1110,8 @@ The number of characters to display. If set to ``-1``, all characters are displa \ **Note:** Setting this property updates :ref:`visible_ratio` accordingly. +\ **Note:** Characters are counted as Unicode codepoints. A single visible grapheme may contain multiple codepoints (e.g. certain emoji use three codepoints). A single codepoint may contain two UTF-16 characters, which are used in C# strings. + .. rst-class:: classref-item-separator ---- @@ -1065,7 +1127,7 @@ The number of characters to display. If set to ``-1``, all characters are displa - |void| **set_visible_characters_behavior**\ (\ value\: :ref:`VisibleCharactersBehavior`\ ) - :ref:`VisibleCharactersBehavior` **get_visible_characters_behavior**\ (\ ) -Sets the clipping behavior when :ref:`visible_characters` or :ref:`visible_ratio` is set. See :ref:`VisibleCharactersBehavior` for more info. +The clipping behavior when :ref:`visible_characters` or :ref:`visible_ratio` is set. .. rst-class:: classref-item-separator @@ -1095,11 +1157,27 @@ The fraction of characters to display, relative to the total number of character Method Descriptions ------------------- +.. _class_RichTextLabel_method_add_hr: + +.. rst-class:: classref-method + +|void| **add_hr**\ (\ width\: :ref:`int` = 90, height\: :ref:`int` = 2, color\: :ref:`Color` = Color(1, 1, 1, 1), alignment\: :ref:`HorizontalAlignment` = 1, width_in_percent\: :ref:`bool` = true, height_in_percent\: :ref:`bool` = false\ ) :ref:`🔗` + +Adds a horizontal rule that can be used to separate content. + +If ``width_in_percent`` is set, ``width`` values are percentages of the control width instead of pixels. + +If ``height_in_percent`` is set, ``height`` values are percentages of the control width instead of pixels. + +.. rst-class:: classref-item-separator + +---- + .. _class_RichTextLabel_method_add_image: .. rst-class:: classref-method -|void| **add_image**\ (\ image\: :ref:`Texture2D`, width\: :ref:`int` = 0, height\: :ref:`int` = 0, color\: :ref:`Color` = Color(1, 1, 1, 1), inline_align\: :ref:`InlineAlignment` = 5, region\: :ref:`Rect2` = Rect2(0, 0, 0, 0), key\: :ref:`Variant` = null, pad\: :ref:`bool` = false, tooltip\: :ref:`String` = "", size_in_percent\: :ref:`bool` = false\ ) :ref:`🔗` +|void| **add_image**\ (\ image\: :ref:`Texture2D`, width\: :ref:`int` = 0, height\: :ref:`int` = 0, color\: :ref:`Color` = Color(1, 1, 1, 1), inline_align\: :ref:`InlineAlignment` = 5, region\: :ref:`Rect2` = Rect2(0, 0, 0, 0), key\: :ref:`Variant` = null, pad\: :ref:`bool` = false, tooltip\: :ref:`String` = "", width_in_percent\: :ref:`bool` = false, height_in_percent\: :ref:`bool` = false, alt_text\: :ref:`String` = ""\ ) :ref:`🔗` Adds an image's opening and closing tags to the tag stack, optionally providing a ``width`` and ``height`` to resize the image, a ``color`` to tint the image and a ``region`` to only use parts of the image. @@ -1111,7 +1189,11 @@ If ``width`` and ``height`` are not set, but ``region`` is, the region's rect wi If ``pad`` is set, and the image is smaller than the size specified by ``width`` and ``height``, the image padding is added to match the size instead of upscaling. -If ``size_in_percent`` is set, ``width`` and ``height`` values are percentages of the control width instead of pixels. +If ``width_in_percent`` is set, ``width`` values are percentages of the control width instead of pixels. + +If ``height_in_percent`` is set, ``height`` values are percentages of the control width instead of pixels. + +\ ``alt_text`` is used as the image description for assistive apps. .. rst-class:: classref-item-separator @@ -1205,6 +1287,8 @@ Returns the paragraph number of the character position provided. Paragraph and c Returns the height of the content. +\ **Note:** This method always returns the full content size, and is not affected by :ref:`visible_ratio` and :ref:`visible_characters`. To get the visible content size, use :ref:`get_visible_content_rect()`. + \ **Note:** If :ref:`threaded` is enabled, this method returns a value for the loaded part of the document. Use :ref:`is_finished()` or :ref:`finished` to determine whether document is fully loaded. .. rst-class:: classref-item-separator @@ -1219,6 +1303,8 @@ Returns the height of the content. Returns the width of the content. +\ **Note:** This method always returns the full content size, and is not affected by :ref:`visible_ratio` and :ref:`visible_characters`. To get the visible content size, use :ref:`get_visible_content_rect()`. + \ **Note:** If :ref:`threaded` is enabled, this method returns a value for the loaded part of the document. Use :ref:`is_finished()` or :ref:`finished` to determine whether document is fully loaded. .. rst-class:: classref-item-separator @@ -1233,14 +1319,26 @@ Returns the width of the content. Returns the total number of lines in the text. Wrapped text is counted as multiple lines. -\ **Note:** If :ref:`visible_characters_behavior` is set to :ref:`TextServer.VC_CHARS_BEFORE_SHAPING` only visible wrapped lines are counted. - \ **Note:** If :ref:`threaded` is enabled, this method returns a value for the loaded part of the document. Use :ref:`is_finished()` or :ref:`finished` to determine whether document is fully loaded. .. rst-class:: classref-item-separator ---- +.. _class_RichTextLabel_method_get_line_height: + +.. rst-class:: classref-method + +:ref:`int` **get_line_height**\ (\ line\: :ref:`int`\ ) |const| :ref:`🔗` + +Returns the height of the line found at the provided index. + +\ **Note:** If :ref:`threaded` is enabled, this method returns a value for the loaded part of the document. Use :ref:`is_finished()` or :ref:`finished` to determine whether the document is fully loaded. + +.. rst-class:: classref-item-separator + +---- + .. _class_RichTextLabel_method_get_line_offset: .. rst-class:: classref-method @@ -1271,6 +1369,20 @@ Returns the indexes of the first and last visible characters for the given ``lin ---- +.. _class_RichTextLabel_method_get_line_width: + +.. rst-class:: classref-method + +:ref:`int` **get_line_width**\ (\ line\: :ref:`int`\ ) |const| :ref:`🔗` + +Returns the width of the line found at the provided index. + +\ **Note:** If :ref:`threaded` is enabled, this method returns a value for the loaded part of the document. Use :ref:`is_finished()` or :ref:`finished` to determine whether the document is fully loaded. + +.. rst-class:: classref-item-separator + +---- + .. _class_RichTextLabel_method_get_menu: .. rst-class:: classref-method @@ -1295,7 +1407,7 @@ You can add custom menu items or remove standard ones. Make sure your IDs don't menu.add_item("Duplicate Text", MENU_MAX + 1) # Connect callback. menu.id_pressed.connect(_on_item_pressed) - + func _on_item_pressed(id): if id == MENU_MAX + 1: add_text("\n" + get_parsed_text()) @@ -1313,7 +1425,7 @@ You can add custom menu items or remove standard ones. Make sure your IDs don't // Add event handler. menu.IdPressed += OnItemPressed; } - + public void OnItemPressed(int id) { if (id == TextEdit.MenuItems.Max + 1) @@ -1438,6 +1550,51 @@ Returns the vertical scrollbar. \ **Warning:** This is a required internal node, removing and freeing it may cause a crash. If you wish to hide it or any of its children, use their :ref:`CanvasItem.visible` property. +.. rst-class:: classref-item-separator + +---- + +.. _class_RichTextLabel_method_get_visible_content_rect: + +.. rst-class:: classref-method + +:ref:`Rect2i` **get_visible_content_rect**\ (\ ) |const| :ref:`🔗` + +Returns the bounding rectangle of the visible content. + +\ **Note:** This method returns a correct value only after the label has been drawn. + + +.. tabs:: + + .. code-tab:: gdscript + + extends RichTextLabel + + @export var background_panel: Panel + + func _ready(): + await draw + background_panel.position = get_visible_content_rect().position + background_panel.size = get_visible_content_rect().size + + .. code-tab:: csharp + + public partial class TestLabel : RichTextLabel + { + [Export] + public Panel BackgroundPanel { get; set; } + + public override async void _Ready() + { + await ToSignal(this, Control.SignalName.Draw); + BackgroundGPanel.Position = GetVisibleContentRect().Position; + BackgroundPanel.Size = GetVisibleContentRect().Size; + } + } + + + .. rst-class:: classref-item-separator ---- @@ -1450,6 +1607,8 @@ Returns the vertical scrollbar. Returns the number of visible lines. +\ **Note:** This method returns a correct value only after the label has been drawn. + \ **Note:** If :ref:`threaded` is enabled, this method returns a value for the loaded part of the document. Use :ref:`is_finished()` or :ref:`finished` to determine whether document is fully loaded. .. rst-class:: classref-item-separator @@ -1464,6 +1623,8 @@ Returns the number of visible lines. Returns the number of visible paragraphs. A paragraph is considered visible if at least one of its lines is visible. +\ **Note:** This method returns a correct value only after the label has been drawn. + \ **Note:** If :ref:`threaded` is enabled, this method returns a value for the loaded part of the document. Use :ref:`is_finished()` or :ref:`finished` to determine whether document is fully loaded. .. rst-class:: classref-item-separator @@ -1485,9 +1646,9 @@ Installs a custom effect. This can also be done in the Inspector through the :re # effect.gd class_name MyCustomEffect extends RichTextEffect - + var bbcode = "my_custom_effect" - + # ... The above effect can be installed in **RichTextLabel** from a script: @@ -1496,10 +1657,10 @@ The above effect can be installed in **RichTextLabel** from a script: # rich_text_label.gd extends RichTextLabel - + func _ready(): install_effect(MyCustomEffect.new()) - + # Alternatively, if not using `class_name` in the script that extends RichTextEffect: install_effect(preload("res://effect.gd").new()) @@ -1649,6 +1810,8 @@ Terminates tags opened after the last :ref:`push_context()` and :ref:`text_highlight_v_padding`. This can lead to overlapping highlights if background colors are placed on neighboring lines/columns, so consider setting those theme items to ``0`` if you want to avoid this. + .. rst-class:: classref-item-separator ---- @@ -1745,6 +1908,8 @@ Adds a ``[dropcap]`` tag to the tag stack. Drop cap (dropped capital) is a decor Adds a ``[fgcolor]`` tag to the tag stack. +\ **Note:** The foreground color has padding applied by default, which is controlled using :ref:`text_highlight_h_padding` and :ref:`text_highlight_v_padding`. This can lead to overlapping highlights if foreground colors are placed on neighboring lines/columns, so consider setting those theme items to ``0`` if you want to avoid this. + .. rst-class:: classref-item-separator ---- @@ -1915,9 +2080,9 @@ Adds a ``[p]`` tag to the tag stack. .. rst-class:: classref-method -|void| **push_strikethrough**\ (\ ) :ref:`🔗` +|void| **push_strikethrough**\ (\ color\: :ref:`Color` = Color(0, 0, 0, 0)\ ) :ref:`🔗` -Adds a ``[s]`` tag to the tag stack. +Adds a ``[s]`` tag to the tag stack. If ``color`` alpha value is zero, current font color with alpha multiplied by :ref:`strikethrough_alpha` is used. .. rst-class:: classref-item-separator @@ -1927,9 +2092,9 @@ Adds a ``[s]`` tag to the tag stack. .. rst-class:: classref-method -|void| **push_table**\ (\ columns\: :ref:`int`, inline_align\: :ref:`InlineAlignment` = 0, align_to_row\: :ref:`int` = -1\ ) :ref:`🔗` +|void| **push_table**\ (\ columns\: :ref:`int`, inline_align\: :ref:`InlineAlignment` = 0, align_to_row\: :ref:`int` = -1, name\: :ref:`String` = ""\ ) :ref:`🔗` -Adds a ``[table=columns,inline_align]`` tag to the tag stack. Use :ref:`set_table_column_expand()` to set column expansion ratio. Use :ref:`push_cell()` to add cells. +Adds a ``[table=columns,inline_align]`` tag to the tag stack. Use :ref:`set_table_column_expand()` to set column expansion ratio. Use :ref:`push_cell()` to add cells. ``name`` is used as the table name for assistive apps. .. rst-class:: classref-item-separator @@ -1939,9 +2104,21 @@ Adds a ``[table=columns,inline_align]`` tag to the tag stack. Use :ref:`set_tabl .. rst-class:: classref-method -|void| **push_underline**\ (\ ) :ref:`🔗` +|void| **push_underline**\ (\ color\: :ref:`Color` = Color(0, 0, 0, 0)\ ) :ref:`🔗` -Adds a ``[u]`` tag to the tag stack. +Adds a ``[u]`` tag to the tag stack. If ``color`` alpha value is zero, current font color with alpha multiplied by :ref:`underline_alpha` is used. + +.. rst-class:: classref-item-separator + +---- + +.. _class_RichTextLabel_method_reload_effects: + +.. rst-class:: classref-method + +|void| **reload_effects**\ (\ ) :ref:`🔗` + +Reloads custom effects. Useful when :ref:`custom_effects` is modified manually. .. rst-class:: classref-item-separator @@ -2077,11 +2254,23 @@ If ``expand`` is ``false``, the column will not contribute to the total ratio. ---- +.. _class_RichTextLabel_method_set_table_column_name: + +.. rst-class:: classref-method + +|void| **set_table_column_name**\ (\ column\: :ref:`int`, name\: :ref:`String`\ ) :ref:`🔗` + +Sets table column name for assistive apps. + +.. rst-class:: classref-item-separator + +---- + .. _class_RichTextLabel_method_update_image: .. rst-class:: classref-method -|void| **update_image**\ (\ key\: :ref:`Variant`, mask\: |bitfield|\[:ref:`ImageUpdateMask`\], image\: :ref:`Texture2D`, width\: :ref:`int` = 0, height\: :ref:`int` = 0, color\: :ref:`Color` = Color(1, 1, 1, 1), inline_align\: :ref:`InlineAlignment` = 5, region\: :ref:`Rect2` = Rect2(0, 0, 0, 0), pad\: :ref:`bool` = false, tooltip\: :ref:`String` = "", size_in_percent\: :ref:`bool` = false\ ) :ref:`🔗` +|void| **update_image**\ (\ key\: :ref:`Variant`, mask\: |bitfield|\[:ref:`ImageUpdateMask`\], image\: :ref:`Texture2D`, width\: :ref:`int` = 0, height\: :ref:`int` = 0, color\: :ref:`Color` = Color(1, 1, 1, 1), inline_align\: :ref:`InlineAlignment` = 5, region\: :ref:`Rect2` = Rect2(0, 0, 0, 0), pad\: :ref:`bool` = false, tooltip\: :ref:`String` = "", width_in_percent\: :ref:`bool` = false, height_in_percent\: :ref:`bool` = false\ ) :ref:`🔗` Updates the existing images with the key ``key``. Only properties specified by ``mask`` bits are updated. See :ref:`add_image()`. @@ -2216,6 +2405,18 @@ The size of the text outline. ---- +.. _class_RichTextLabel_theme_constant_paragraph_separation: + +.. rst-class:: classref-themeproperty + +:ref:`int` **paragraph_separation** = ``0`` :ref:`🔗` + +Additional vertical spacing between paragraphs (in pixels). Spacing is added after the last line. This value can be negative. + +.. rst-class:: classref-item-separator + +---- + .. _class_RichTextLabel_theme_constant_shadow_offset_x: .. rst-class:: classref-themeproperty @@ -2252,6 +2453,18 @@ The size of the shadow outline. ---- +.. _class_RichTextLabel_theme_constant_strikethrough_alpha: + +.. rst-class:: classref-themeproperty + +:ref:`int` **strikethrough_alpha** = ``50`` :ref:`🔗` + +The default strikethrough color transparency (percent). For strikethroughs with a custom color, this theme item is only used if the custom color's alpha is ``0.0`` (fully transparent). + +.. rst-class:: classref-item-separator + +---- + .. _class_RichTextLabel_theme_constant_table_h_separation: .. rst-class:: classref-themeproperty @@ -2282,7 +2495,7 @@ The vertical separation of elements in a table. :ref:`int` **text_highlight_h_padding** = ``3`` :ref:`🔗` -The horizontal padding around boxes drawn by the ``[fgcolor]`` and ``[bgcolor]`` tags. This does not affect the appearance of text selection. +The horizontal padding around boxes drawn by the ``[fgcolor]`` and ``[bgcolor]`` tags. This does not affect the appearance of text selection. To avoid any risk of neighboring highlights overlapping each other, set this to ``0`` to disable padding. .. rst-class:: classref-item-separator @@ -2294,7 +2507,19 @@ The horizontal padding around boxes drawn by the ``[fgcolor]`` and ``[bgcolor]`` :ref:`int` **text_highlight_v_padding** = ``3`` :ref:`🔗` -The vertical padding around boxes drawn by the ``[fgcolor]`` and ``[bgcolor]`` tags. This does not affect the appearance of text selection. +The vertical padding around boxes drawn by the ``[fgcolor]`` and ``[bgcolor]`` tags. This does not affect the appearance of text selection. To avoid any risk of neighboring highlights overlapping each other, set this to ``0`` to disable padding. + +.. rst-class:: classref-item-separator + +---- + +.. _class_RichTextLabel_theme_constant_underline_alpha: + +.. rst-class:: classref-themeproperty + +:ref:`int` **underline_alpha** = ``50`` :ref:`🔗` + +The default underline color transparency (percent). For underlines with a custom color, this theme item is only used if the custom color's alpha is ``0.0`` (fully transparent). .. rst-class:: classref-item-separator @@ -2420,6 +2645,18 @@ The default text font size. ---- +.. _class_RichTextLabel_theme_icon_horizontal_rule: + +.. rst-class:: classref-themeproperty + +:ref:`Texture2D` **horizontal_rule** :ref:`🔗` + +The horizontal rule texture. + +.. rst-class:: classref-item-separator + +---- + .. _class_RichTextLabel_theme_style_focus: .. rst-class:: classref-themeproperty @@ -2441,6 +2678,7 @@ The background used when the **RichTextLabel** is focused. The :ref:`focus` **RID**\ (\ from\: :ref:`RID`\ ) -Constructs a **RID** as a copy of the given **RID**. +Constructs an **RID** as a copy of the given **RID**. .. rst-class:: classref-section-separator @@ -211,6 +211,7 @@ Returns ``true`` if the **RID**'s ID is greater than ``right``'s ID. Returns ``true`` if the **RID**'s ID is greater than or equal to ``right``'s ID. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_rigidbody2d.rst b/classes/class_rigidbody2d.rst index 06d6db404..a700d26bf 100644 --- a/classes/class_rigidbody2d.rst +++ b/classes/class_rigidbody2d.rst @@ -27,15 +27,21 @@ The body's behavior can be adjusted via :ref:`lock_rotation` as it allows you to directly access the physics state. + If you need to override the default physics behavior, you can write a custom force integration function. See :ref:`custom_integrator`. -\ **Note:** Changing the 2D transform or :ref:`linear_velocity` of a **RigidBody2D** very often may lead to some unpredictable behaviors. If you need to directly affect the body, prefer :ref:`_integrate_forces()` as it allows you to directly access the physics state. +\ **Note:** Changing the 2D transform or :ref:`linear_velocity` of a **RigidBody2D** very often may lead to some unpredictable behaviors. This also happens when a **RigidBody2D** is the descendant of a constantly moving node, like another **RigidBody2D**, as that will cause its global transform to be set whenever its ancestor moves. .. rst-class:: classref-introduction-group Tutorials --------- +- :doc:`Physics introduction <../tutorials/physics/physics_introduction>` + +- :doc:`Troubleshooting physics issues <../tutorials/physics/troubleshooting_physics_issues>` + - `2D Physics Platformer Demo `__ - `Instancing Demo `__ @@ -375,7 +381,7 @@ See :ref:`ProjectSettings.physics/2d/default_angular_damp`\ ) - :ref:`DampMode` **get_angular_damp_mode**\ (\ ) -Defines how :ref:`angular_damp` is applied. See :ref:`DampMode` for possible values. +Defines how :ref:`angular_damp` is applied. .. rst-class:: classref-item-separator @@ -428,7 +434,7 @@ If ``true``, the body can enter sleep mode when there is no movement. See :ref:` The body's custom center of mass, relative to the body's origin position, when :ref:`center_of_mass_mode` is set to :ref:`CENTER_OF_MASS_MODE_CUSTOM`. This is the balanced point of the body, where applied forces only cause linear acceleration. Applying forces outside of the center of mass causes angular acceleration. -When :ref:`center_of_mass_mode` is set to :ref:`CENTER_OF_MASS_MODE_AUTO` (default value), the center of mass is automatically computed. +When :ref:`center_of_mass_mode` is set to :ref:`CENTER_OF_MASS_MODE_AUTO` (default value), the center of mass is automatically determined, but this does not update the value of :ref:`center_of_mass`. .. rst-class:: classref-item-separator @@ -445,7 +451,7 @@ When :ref:`center_of_mass_mode` - |void| **set_center_of_mass_mode**\ (\ value\: :ref:`CenterOfMassMode`\ ) - :ref:`CenterOfMassMode` **get_center_of_mass_mode**\ (\ ) -Defines the way the body's center of mass is set. See :ref:`CenterOfMassMode` for possible values. +Defines the way the body's center of mass is set. .. rst-class:: classref-item-separator @@ -521,7 +527,7 @@ If ``true``, the RigidBody2D will emit signals when it collides with another bod Continuous collision detection mode. -Continuous collision detection tries to predict where a moving body will collide instead of moving it and correcting its movement after collision. Continuous collision detection is slower, but more precise and misses fewer collisions with small, fast-moving objects. Raycasting and shapecasting methods are available. See :ref:`CCDMode` for details. +Continuous collision detection tries to predict where a moving body will collide instead of moving it and correcting its movement after collision. Continuous collision detection is slower, but more precise and misses fewer collisions with small, fast-moving objects. Raycasting and shapecasting methods are available. .. rst-class:: classref-item-separator @@ -578,7 +584,7 @@ For a body that is always frozen, use :ref:`StaticBody2D` or - |void| **set_freeze_mode**\ (\ value\: :ref:`FreezeMode`\ ) - :ref:`FreezeMode` **get_freeze_mode**\ (\ ) -The body's freeze mode. Can be used to set the body's behavior when :ref:`freeze` is enabled. See :ref:`FreezeMode` for possible values. +The body's freeze mode. Can be used to set the body's behavior when :ref:`freeze` is enabled. For a body that is always frozen, use :ref:`StaticBody2D` or :ref:`AnimatableBody2D` instead. @@ -626,19 +632,19 @@ If set to ``0``, inertia is automatically computed (default value). .. code-tab:: gdscript @onready var ball = $Ball - + func get_ball_inertia(): return 1.0 / PhysicsServer2D.body_get_direct_state(ball.get_rid()).inverse_inertia .. code-tab:: csharp private RigidBody2D _ball; - + public override void _Ready() { _ball = GetNode("Ball"); } - + private float GetBallInertia() { return 1.0f / PhysicsServer2D.BodyGetDirectState(_ball.GetRid()).InverseInertia; @@ -680,7 +686,7 @@ See :ref:`ProjectSettings.physics/2d/default_linear_damp`\ ) - :ref:`DampMode` **get_linear_damp_mode**\ (\ ) -Defines how :ref:`linear_damp` is applied. See :ref:`DampMode` for possible values. +Defines how :ref:`linear_damp` is applied. .. rst-class:: classref-item-separator @@ -976,6 +982,7 @@ Returns the number of contacts this body has with other bodies. By default, this Sets the body's velocity on the given axis. The velocity in the given vector axis will be set as the given vector length. This is useful for jumping behavior. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_rigidbody3d.rst b/classes/class_rigidbody3d.rst index 271c98712..44652bbc9 100644 --- a/classes/class_rigidbody3d.rst +++ b/classes/class_rigidbody3d.rst @@ -27,9 +27,11 @@ The body's behavior can be adjusted via :ref:`lock_rotation` as it allows you to directly access the physics state. + If you need to override the default physics behavior, you can write a custom force integration function. See :ref:`custom_integrator`. -\ **Note:** Changing the 3D transform or :ref:`linear_velocity` of a **RigidBody3D** very often may lead to some unpredictable behaviors. If you need to directly affect the body, prefer :ref:`_integrate_forces()` as it allows you to directly access the physics state. +\ **Note:** Changing the 3D transform or :ref:`linear_velocity` of a **RigidBody3D** very often may lead to some unpredictable behaviors. This also happens when a **RigidBody3D** is the descendant of a constantly moving node, like another **RigidBody3D**, as that will cause its global transform to be set whenever its ancestor moves. .. rst-class:: classref-introduction-group @@ -38,6 +40,8 @@ Tutorials - :doc:`Physics introduction <../tutorials/physics/physics_introduction>` +- :doc:`Troubleshooting physics issues <../tutorials/physics/troubleshooting_physics_issues>` + - `3D Truck Town Demo `__ - `3D Physics Tests Demo `__ @@ -345,7 +349,7 @@ See :ref:`ProjectSettings.physics/3d/default_angular_damp`\ ) - :ref:`DampMode` **get_angular_damp_mode**\ (\ ) -Defines how :ref:`angular_damp` is applied. See :ref:`DampMode` for possible values. +Defines how :ref:`angular_damp` is applied. .. rst-class:: classref-item-separator @@ -398,7 +402,7 @@ If ``true``, the body can enter sleep mode when there is no movement. See :ref:` The body's custom center of mass, relative to the body's origin position, when :ref:`center_of_mass_mode` is set to :ref:`CENTER_OF_MASS_MODE_CUSTOM`. This is the balanced point of the body, where applied forces only cause linear acceleration. Applying forces outside of the center of mass causes angular acceleration. -When :ref:`center_of_mass_mode` is set to :ref:`CENTER_OF_MASS_MODE_AUTO` (default value), the center of mass is automatically computed. +When :ref:`center_of_mass_mode` is set to :ref:`CENTER_OF_MASS_MODE_AUTO` (default value), the center of mass is automatically determined, but this does not update the value of :ref:`center_of_mass`. .. rst-class:: classref-item-separator @@ -415,7 +419,7 @@ When :ref:`center_of_mass_mode` - |void| **set_center_of_mass_mode**\ (\ value\: :ref:`CenterOfMassMode`\ ) - :ref:`CenterOfMassMode` **get_center_of_mass_mode**\ (\ ) -Defines the way the body's center of mass is set. See :ref:`CenterOfMassMode` for possible values. +Defines the way the body's center of mass is set. .. rst-class:: classref-item-separator @@ -548,7 +552,7 @@ For a body that is always frozen, use :ref:`StaticBody3D` or - |void| **set_freeze_mode**\ (\ value\: :ref:`FreezeMode`\ ) - :ref:`FreezeMode` **get_freeze_mode**\ (\ ) -The body's freeze mode. Can be used to set the body's behavior when :ref:`freeze` is enabled. See :ref:`FreezeMode` for possible values. +The body's freeze mode. Can be used to set the body's behavior when :ref:`freeze` is enabled. For a body that is always frozen, use :ref:`StaticBody3D` or :ref:`AnimatableBody3D` instead. @@ -596,19 +600,19 @@ If set to :ref:`Vector3.ZERO`, inertia is automatic .. code-tab:: gdscript @onready var ball = $Ball - + func get_ball_inertia(): return PhysicsServer3D.body_get_direct_state(ball.get_rid()).inverse_inertia.inverse() .. code-tab:: csharp private RigidBody3D _ball; - + public override void _Ready() { _ball = GetNode("Ball"); } - + private Vector3 GetBallInertia() { return PhysicsServer3D.BodyGetDirectState(_ball.GetRid()).InverseInertia.Inverse(); @@ -650,7 +654,7 @@ See :ref:`ProjectSettings.physics/3d/default_linear_damp`\ ) - :ref:`DampMode` **get_linear_damp_mode**\ (\ ) -Defines how :ref:`linear_damp` is applied. See :ref:`DampMode` for possible values. +Defines how :ref:`linear_damp` is applied. .. rst-class:: classref-item-separator @@ -958,6 +962,7 @@ Returns the inverse inertia tensor basis. This is used to calculate the angular Sets an axis velocity. The velocity in the given vector axis will be set as the given vector length. This is useful for jumping behavior. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_rootmotionview.rst b/classes/class_rootmotionview.rst index 142f7643c..a6ddd7185 100644 --- a/classes/class_rootmotionview.rst +++ b/classes/class_rootmotionview.rst @@ -141,6 +141,7 @@ The grid's radius in 3D units. The grid's opacity will fade gradually as the dis If ``true``, the grid's points will all be on the same Y coordinate (*local* Y = 0). If ``false``, the points' original Y coordinate is preserved. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_scenemultiplayer.rst b/classes/class_scenemultiplayer.rst index 4e82acfdc..69bc7f920 100644 --- a/classes/class_scenemultiplayer.rst +++ b/classes/class_scenemultiplayer.rst @@ -347,6 +347,7 @@ Sends the specified ``data`` to the remote peer identified by ``id`` as part of Sends the given raw ``bytes`` to a specific peer identified by ``id`` (see :ref:`MultiplayerPeer.set_target_peer()`). Default ID is ``0``, i.e. broadcast to all peers. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_scenereplicationconfig.rst b/classes/class_scenereplicationconfig.rst index c4a2a92be..7b2c22364 100644 --- a/classes/class_scenereplicationconfig.rst +++ b/classes/class_scenereplicationconfig.rst @@ -154,7 +154,7 @@ Finds the index of the given ``path``. :ref:`ReplicationMode` **property_get_replication_mode**\ (\ path\: :ref:`NodePath`\ ) :ref:`🔗` -Returns the replication mode for the property identified by the given ``path``. See :ref:`ReplicationMode`. +Returns the replication mode for the property identified by the given ``path``. .. rst-class:: classref-item-separator @@ -206,7 +206,7 @@ Returns ``true`` if the property identified by the given ``path`` is configured |void| **property_set_replication_mode**\ (\ path\: :ref:`NodePath`, mode\: :ref:`ReplicationMode`\ ) :ref:`🔗` -Sets the synchronization mode for the property identified by the given ``path``. See :ref:`ReplicationMode`. +Sets the synchronization mode for the property identified by the given ``path``. .. rst-class:: classref-item-separator @@ -261,6 +261,7 @@ Sets whether the property identified by the given ``path`` is configured to be r Removes the property identified by the given ``path`` from the configuration. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_scenestate.rst b/classes/class_scenestate.rst index 28c604c31..2fe3f68c9 100644 --- a/classes/class_scenestate.rst +++ b/classes/class_scenestate.rst @@ -31,6 +31,8 @@ Methods .. table:: :widths: auto + +---------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`SceneState` | :ref:`get_base_scene_state`\ (\ ) |const| | +---------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`Array` | :ref:`get_connection_binds`\ (\ idx\: :ref:`int`\ ) |const| | +---------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------+ @@ -72,6 +74,8 @@ Methods +---------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`StringName` | :ref:`get_node_type`\ (\ idx\: :ref:`int`\ ) |const| | +---------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`get_path`\ (\ ) |const| | + +---------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`is_node_instance_placeholder`\ (\ idx\: :ref:`int`\ ) |const| | +---------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------+ @@ -137,6 +141,18 @@ If passed to :ref:`PackedScene.instantiate()` **get_base_scene_state**\ (\ ) |const| :ref:`🔗` + +Returns the **SceneState** of the scene that this scene inherits from, or ``null`` if it doesn't inherit from any scene. + +.. rst-class:: classref-item-separator + +---- + .. _class_SceneState_method_get_connection_binds: .. rst-class:: classref-method @@ -385,6 +401,18 @@ Returns the type of the node at ``idx``. ---- +.. _class_SceneState_method_get_path: + +.. rst-class:: classref-method + +:ref:`String` **get_path**\ (\ ) |const| :ref:`🔗` + +Returns the resource path to the represented :ref:`PackedScene`. + +.. rst-class:: classref-item-separator + +---- + .. _class_SceneState_method_is_node_instance_placeholder: .. rst-class:: classref-method @@ -394,6 +422,7 @@ Returns the type of the node at ``idx``. Returns ``true`` if the node at ``idx`` is an :ref:`InstancePlaceholder`. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_scenetree.rst b/classes/class_scenetree.rst index 2dc39b5bf..a70ce4f24 100644 --- a/classes/class_scenetree.rst +++ b/classes/class_scenetree.rst @@ -103,6 +103,10 @@ Methods +--------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`has_group`\ (\ name\: :ref:`StringName`\ ) |const| | +--------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`is_accessibility_enabled`\ (\ ) |const| | + +--------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`is_accessibility_supported`\ (\ ) |const| | + +--------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`notify_group`\ (\ group\: :ref:`StringName`, notification\: :ref:`int`\ ) | +--------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`notify_group_flags`\ (\ call_flags\: :ref:`int`, group\: :ref:`StringName`, notification\: :ref:`int`\ ) | @@ -203,6 +207,25 @@ Emitted immediately before :ref:`Node._process()` + +Emitted after the new scene is added to scene tree and initialized. Can be used to reliably access :ref:`current_scene` when changing scenes. + +:: + + # This code should be inside an autoload. + get_tree().change_scene_to_file(other_scene_path) + await get_tree().scene_changed + print(get_tree().current_scene) # Prints the new scene. + +.. rst-class:: classref-item-separator + +---- + .. _class_SceneTree_signal_tree_changed: .. rst-class:: classref-signal @@ -446,10 +469,12 @@ If ``true``, the scene tree is considered paused. This causes the following beha - |void| **set_physics_interpolation_enabled**\ (\ value\: :ref:`bool`\ ) - :ref:`bool` **is_physics_interpolation_enabled**\ (\ ) -If ``true``, the renderer will interpolate the transforms of physics objects between the last two transforms, so that smooth motion is seen even when physics ticks do not coincide with rendered frames. +If ``true``, the renderer will interpolate the transforms of objects (both physics and non-physics) between the last two transforms, so that smooth motion is seen even when physics ticks do not coincide with rendered frames. The default value of this property is controlled by :ref:`ProjectSettings.physics/common/physics_interpolation`. +\ **Note:** Although this is a global setting, finer control of individual branches of the **SceneTree** is possible using :ref:`Node.physics_interpolation_mode`. + .. rst-class:: classref-item-separator ---- @@ -567,6 +592,8 @@ Returns :ref:`@GlobalScope.OK` on success, :ref: This ensures that both scenes aren't running at the same time, while still freeing the previous scene in a safe way similar to :ref:`Node.queue_free()`. +If you want to reliably access the new scene, await the :ref:`scene_changed` signal. + .. rst-class:: classref-item-separator ---- @@ -646,7 +673,7 @@ Returns the first :ref:`Node` found inside the tree, that has been a :ref:`int` **get_frame**\ (\ ) |const| :ref:`🔗` -Returns how many frames have been processed, since the application started. This is *not* a measurement of elapsed time. +Returns how many physics process steps have been processed, since the application started. This is *not* a measurement of elapsed time. See also :ref:`physics_frame`. For the number of frames rendered, see :ref:`Engine.get_process_frames()`. .. rst-class:: classref-item-separator @@ -724,6 +751,30 @@ Returns ``true`` if a node added to the given group ``name`` exists in the tree. ---- +.. _class_SceneTree_method_is_accessibility_enabled: + +.. rst-class:: classref-method + +:ref:`bool` **is_accessibility_enabled**\ (\ ) |const| :ref:`🔗` + +Returns ``true`` if accessibility features are enabled, and accessibility information updates are actively processed. + +.. rst-class:: classref-item-separator + +---- + +.. _class_SceneTree_method_is_accessibility_supported: + +.. rst-class:: classref-method + +:ref:`bool` **is_accessibility_supported**\ (\ ) |const| :ref:`🔗` + +Returns ``true`` if accessibility features are supported by the OS and enabled in project settings. + +.. rst-class:: classref-item-separator + +---- + .. _class_SceneTree_method_notify_group: .. rst-class:: classref-method @@ -832,6 +883,8 @@ Sets a custom :ref:`MultiplayerAPI` with the given ``root_ \ **Note:** No :ref:`MultiplayerAPI` must be configured for the subpath containing ``root_path``, nested custom multiplayers are not allowed. I.e. if one is configured for ``"/root/Foo"`` setting one for ``"/root/Foo/Bar"`` will cause an error. +\ **Note:** :ref:`set_multiplayer()` should be called *before* the child nodes are ready at the given ``root_path``. If multiplayer nodes like :ref:`MultiplayerSpawner` or :ref:`MultiplayerSynchronizer` are added to the tree before the custom multiplayer API is set, they will not work. + .. rst-class:: classref-item-separator ---- @@ -845,6 +898,7 @@ Sets a custom :ref:`MultiplayerAPI` with the given ``root_ If a current scene is loaded, calling this method will unload it. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_scenetreetimer.rst b/classes/class_scenetreetimer.rst index ec82f5b67..5c62222ac 100644 --- a/classes/class_scenetreetimer.rst +++ b/classes/class_scenetreetimer.rst @@ -100,6 +100,7 @@ Property Descriptions The time remaining (in seconds). .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_script.rst b/classes/class_script.rst index 8f9706c29..0c2274a89 100644 --- a/classes/class_script.rst +++ b/classes/class_script.rst @@ -164,7 +164,7 @@ To give the script a global name, you can use the ``class_name`` keyword in GDSc .. code-tab:: csharp using Godot; - + [GlobalClass] public partial class MyNode : Node { @@ -232,6 +232,8 @@ Returns a dictionary containing constant names and their values. Returns the list of methods in this **Script**. +\ **Note:** The dictionaries returned by this method are formatted identically to those returned by :ref:`Object.get_method_list()`. + .. rst-class:: classref-item-separator ---- @@ -244,6 +246,8 @@ Returns the list of methods in this **Script**. Returns the list of properties in this **Script**. +\ **Note:** The dictionaries returned by this method are formatted identically to those returned by :ref:`Object.get_property_list()`. + .. rst-class:: classref-item-separator ---- @@ -256,6 +260,8 @@ Returns the list of properties in this **Script**. Returns the list of user signals defined in this **Script**. +\ **Note:** The dictionaries returned by this method are formatted identically to those returned by :ref:`Object.get_signal_list()`. + .. rst-class:: classref-item-separator ---- @@ -331,6 +337,7 @@ Returns ``true`` if the script is a tool script. A tool script can run in the ed Reloads the script's class implementation. Returns an error code. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_scriptbacktrace.rst b/classes/class_scriptbacktrace.rst new file mode 100644 index 000000000..4541d41d8 --- /dev/null +++ b/classes/class_scriptbacktrace.rst @@ -0,0 +1,287 @@ +:github_url: hide + +.. DO NOT EDIT THIS FILE!!! +.. Generated automatically from Godot engine sources. +.. Generator: https://github.com/godotengine/godot/tree/master/doc/tools/make_rst.py. +.. XML source: https://github.com/godotengine/godot/tree/master/doc/classes/ScriptBacktrace.xml. + +.. _class_ScriptBacktrace: + +ScriptBacktrace +=============== + +**Inherits:** :ref:`RefCounted` **<** :ref:`Object` + +A captured backtrace of a specific script language. + +.. rst-class:: classref-introduction-group + +Description +----------- + +**ScriptBacktrace** holds an already captured backtrace of a specific script language, such as GDScript or C#, which are captured using :ref:`Engine.capture_script_backtraces()`. + +See :ref:`ProjectSettings.debug/settings/gdscript/always_track_call_stacks` and :ref:`ProjectSettings.debug/settings/gdscript/always_track_local_variables` for ways of controlling the contents of this class. + +.. rst-class:: classref-reftable-group + +Methods +------- + +.. table:: + :widths: auto + + +-------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`format`\ (\ indent_all\: :ref:`int` = 0, indent_frames\: :ref:`int` = 4\ ) |const| | + +-------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`get_frame_count`\ (\ ) |const| | + +-------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`get_frame_file`\ (\ index\: :ref:`int`\ ) |const| | + +-------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`get_frame_function`\ (\ index\: :ref:`int`\ ) |const| | + +-------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`get_frame_line`\ (\ index\: :ref:`int`\ ) |const| | + +-------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`get_global_variable_count`\ (\ ) |const| | + +-------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`get_global_variable_name`\ (\ variable_index\: :ref:`int`\ ) |const| | + +-------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Variant` | :ref:`get_global_variable_value`\ (\ variable_index\: :ref:`int`\ ) |const| | + +-------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`get_language_name`\ (\ ) |const| | + +-------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`get_local_variable_count`\ (\ frame_index\: :ref:`int`\ ) |const| | + +-------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`get_local_variable_name`\ (\ frame_index\: :ref:`int`, variable_index\: :ref:`int`\ ) |const| | + +-------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Variant` | :ref:`get_local_variable_value`\ (\ frame_index\: :ref:`int`, variable_index\: :ref:`int`\ ) |const| | + +-------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`get_member_variable_count`\ (\ frame_index\: :ref:`int`\ ) |const| | + +-------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`get_member_variable_name`\ (\ frame_index\: :ref:`int`, variable_index\: :ref:`int`\ ) |const| | + +-------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Variant` | :ref:`get_member_variable_value`\ (\ frame_index\: :ref:`int`, variable_index\: :ref:`int`\ ) |const| | + +-------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`is_empty`\ (\ ) |const| | + +-------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + +.. rst-class:: classref-section-separator + +---- + +.. rst-class:: classref-descriptions-group + +Method Descriptions +------------------- + +.. _class_ScriptBacktrace_method_format: + +.. rst-class:: classref-method + +:ref:`String` **format**\ (\ indent_all\: :ref:`int` = 0, indent_frames\: :ref:`int` = 4\ ) |const| :ref:`🔗` + +Converts the backtrace to a :ref:`String`, where the entire string will be indented by ``indent_all`` number of spaces, and the individual stack frames will be additionally indented by ``indent_frames`` number of spaces. + +\ **Note:** Calling :ref:`Object.to_string()` on a **ScriptBacktrace** will produce the same output as calling :ref:`format()` with all parameters left at their default values. + +.. rst-class:: classref-item-separator + +---- + +.. _class_ScriptBacktrace_method_get_frame_count: + +.. rst-class:: classref-method + +:ref:`int` **get_frame_count**\ (\ ) |const| :ref:`🔗` + +Returns the number of stack frames in the backtrace. + +.. rst-class:: classref-item-separator + +---- + +.. _class_ScriptBacktrace_method_get_frame_file: + +.. rst-class:: classref-method + +:ref:`String` **get_frame_file**\ (\ index\: :ref:`int`\ ) |const| :ref:`🔗` + +Returns the file name of the call site represented by the stack frame at the specified index. + +.. rst-class:: classref-item-separator + +---- + +.. _class_ScriptBacktrace_method_get_frame_function: + +.. rst-class:: classref-method + +:ref:`String` **get_frame_function**\ (\ index\: :ref:`int`\ ) |const| :ref:`🔗` + +Returns the name of the function called at the stack frame at the specified index. + +.. rst-class:: classref-item-separator + +---- + +.. _class_ScriptBacktrace_method_get_frame_line: + +.. rst-class:: classref-method + +:ref:`int` **get_frame_line**\ (\ index\: :ref:`int`\ ) |const| :ref:`🔗` + +Returns the line number of the call site represented by the stack frame at the specified index. + +.. rst-class:: classref-item-separator + +---- + +.. _class_ScriptBacktrace_method_get_global_variable_count: + +.. rst-class:: classref-method + +:ref:`int` **get_global_variable_count**\ (\ ) |const| :ref:`🔗` + +Returns the number of global variables (e.g. autoload singletons) in the backtrace. + +\ **Note:** This will be non-zero only if the ``include_variables`` parameter was ``true`` when capturing the backtrace with :ref:`Engine.capture_script_backtraces()`. + +.. rst-class:: classref-item-separator + +---- + +.. _class_ScriptBacktrace_method_get_global_variable_name: + +.. rst-class:: classref-method + +:ref:`String` **get_global_variable_name**\ (\ variable_index\: :ref:`int`\ ) |const| :ref:`🔗` + +Returns the name of the global variable at the specified index. + +.. rst-class:: classref-item-separator + +---- + +.. _class_ScriptBacktrace_method_get_global_variable_value: + +.. rst-class:: classref-method + +:ref:`Variant` **get_global_variable_value**\ (\ variable_index\: :ref:`int`\ ) |const| :ref:`🔗` + +Returns the value of the global variable at the specified index. + +\ **Warning:** With GDScript backtraces, the returned :ref:`Variant` will be the variable's actual value, including any object references. This means that storing the returned :ref:`Variant` will prevent any such object from being deallocated, so it's generally recommended not to do so. + +.. rst-class:: classref-item-separator + +---- + +.. _class_ScriptBacktrace_method_get_language_name: + +.. rst-class:: classref-method + +:ref:`String` **get_language_name**\ (\ ) |const| :ref:`🔗` + +Returns the name of the script language that this backtrace was captured from. + +.. rst-class:: classref-item-separator + +---- + +.. _class_ScriptBacktrace_method_get_local_variable_count: + +.. rst-class:: classref-method + +:ref:`int` **get_local_variable_count**\ (\ frame_index\: :ref:`int`\ ) |const| :ref:`🔗` + +Returns the number of local variables in the stack frame at the specified index. + +\ **Note:** This will be non-zero only if the ``include_variables`` parameter was ``true`` when capturing the backtrace with :ref:`Engine.capture_script_backtraces()`. + +.. rst-class:: classref-item-separator + +---- + +.. _class_ScriptBacktrace_method_get_local_variable_name: + +.. rst-class:: classref-method + +:ref:`String` **get_local_variable_name**\ (\ frame_index\: :ref:`int`, variable_index\: :ref:`int`\ ) |const| :ref:`🔗` + +Returns the name of the local variable at the specified ``variable_index`` in the stack frame at the specified ``frame_index``. + +.. rst-class:: classref-item-separator + +---- + +.. _class_ScriptBacktrace_method_get_local_variable_value: + +.. rst-class:: classref-method + +:ref:`Variant` **get_local_variable_value**\ (\ frame_index\: :ref:`int`, variable_index\: :ref:`int`\ ) |const| :ref:`🔗` + +Returns the value of the local variable at the specified ``variable_index`` in the stack frame at the specified ``frame_index``. + +\ **Warning:** With GDScript backtraces, the returned :ref:`Variant` will be the variable's actual value, including any object references. This means that storing the returned :ref:`Variant` will prevent any such object from being deallocated, so it's generally recommended not to do so. + +.. rst-class:: classref-item-separator + +---- + +.. _class_ScriptBacktrace_method_get_member_variable_count: + +.. rst-class:: classref-method + +:ref:`int` **get_member_variable_count**\ (\ frame_index\: :ref:`int`\ ) |const| :ref:`🔗` + +Returns the number of member variables in the stack frame at the specified index. + +\ **Note:** This will be non-zero only if the ``include_variables`` parameter was ``true`` when capturing the backtrace with :ref:`Engine.capture_script_backtraces()`. + +.. rst-class:: classref-item-separator + +---- + +.. _class_ScriptBacktrace_method_get_member_variable_name: + +.. rst-class:: classref-method + +:ref:`String` **get_member_variable_name**\ (\ frame_index\: :ref:`int`, variable_index\: :ref:`int`\ ) |const| :ref:`🔗` + +Returns the name of the member variable at the specified ``variable_index`` in the stack frame at the specified ``frame_index``. + +.. rst-class:: classref-item-separator + +---- + +.. _class_ScriptBacktrace_method_get_member_variable_value: + +.. rst-class:: classref-method + +:ref:`Variant` **get_member_variable_value**\ (\ frame_index\: :ref:`int`, variable_index\: :ref:`int`\ ) |const| :ref:`🔗` + +Returns the value of the member variable at the specified ``variable_index`` in the stack frame at the specified ``frame_index``. + +\ **Warning:** With GDScript backtraces, the returned :ref:`Variant` will be the variable's actual value, including any object references. This means that storing the returned :ref:`Variant` will prevent any such object from being deallocated, so it's generally recommended not to do so. + +.. rst-class:: classref-item-separator + +---- + +.. _class_ScriptBacktrace_method_is_empty: + +.. rst-class:: classref-method + +:ref:`bool` **is_empty**\ (\ ) |const| :ref:`🔗` + +Returns ``true`` if the backtrace has no stack frames. + +.. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` +.. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` +.. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` +.. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` +.. |static| replace:: :abbr:`static (This method doesn't need an instance to be called, so it can be called directly using the class name.)` +.. |operator| replace:: :abbr:`operator (This method describes a valid operator to use with this type as left-hand operand.)` +.. |bitfield| replace:: :abbr:`BitField (This value is an integer composed as a bitmask of the following flags.)` +.. |void| replace:: :abbr:`void (No return value.)` diff --git a/classes/class_scriptcreatedialog.rst b/classes/class_scriptcreatedialog.rst index 69ce4613c..c5057732a 100644 --- a/classes/class_scriptcreatedialog.rst +++ b/classes/class_scriptcreatedialog.rst @@ -107,6 +107,7 @@ Method Descriptions Prefills required fields to configure the ScriptCreateDialog for use. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_scripteditor.rst b/classes/class_scripteditor.rst index 30b7be4eb..3935635b5 100644 --- a/classes/class_scripteditor.rst +++ b/classes/class_scripteditor.rst @@ -31,6 +31,8 @@ Methods .. table:: :widths: auto + +------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`clear_docs_from_script`\ (\ script\: :ref:`Script`\ ) | +------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`PackedStringArray` | :ref:`get_breakpoints`\ (\ ) | +------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ @@ -93,6 +95,20 @@ Emitted when editor is about to close the active script. Argument is a :ref:`Scr Method Descriptions ------------------- +.. _class_ScriptEditor_method_clear_docs_from_script: + +.. rst-class:: classref-method + +|void| **clear_docs_from_script**\ (\ script\: :ref:`Script`\ ) :ref:`🔗` + +Removes the documentation for the given ``script``. + +\ **Note:** This should be called whenever the script is changed to keep the open documentation state up to date. + +.. rst-class:: classref-item-separator + +---- + .. _class_ScriptEditor_method_get_breakpoints: .. rst-class:: classref-method @@ -246,11 +262,12 @@ Unregisters the :ref:`EditorSyntaxHighlighter` fr |void| **update_docs_from_script**\ (\ script\: :ref:`Script`\ ) :ref:`🔗` -Updates the documentation for the given ``script`` if the script's documentation is currently open. +Updates the documentation for the given ``script``. \ **Note:** This should be called whenever the script is changed to keep the open documentation state up to date. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_scripteditorbase.rst b/classes/class_scripteditorbase.rst index 062c0e7e0..83a9ef478 100644 --- a/classes/class_scripteditorbase.rst +++ b/classes/class_scripteditorbase.rst @@ -175,7 +175,7 @@ Method Descriptions |void| **add_syntax_highlighter**\ (\ highlighter\: :ref:`EditorSyntaxHighlighter`\ ) :ref:`🔗` -Adds a :ref:`EditorSyntaxHighlighter` to the open script. +Adds an :ref:`EditorSyntaxHighlighter` to the open script. .. rst-class:: classref-item-separator @@ -190,6 +190,7 @@ Adds a :ref:`EditorSyntaxHighlighter` to the open Returns the underlying :ref:`Control` used for editing scripts. For text scripts, this is a :ref:`CodeEdit`. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_scriptextension.rst b/classes/class_scriptextension.rst index cbaee2182..fd97468bd 100644 --- a/classes/class_scriptextension.rst +++ b/classes/class_scriptextension.rst @@ -14,7 +14,7 @@ ScriptExtension .. container:: contribute - There is currently no description for this class. Please help us by :ref:`contributing one `! + There is currently no description for this class. Please help us by `contributing one `__! .. rst-class:: classref-reftable-group @@ -24,81 +24,81 @@ Methods .. table:: :widths: auto - +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`_can_instantiate`\ (\ ) |virtual| |const| | - +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`_editor_can_reload_from_file`\ (\ ) |virtual| | - +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Script` | :ref:`_get_base_script`\ (\ ) |virtual| |const| | - +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`String` | :ref:`_get_class_icon_path`\ (\ ) |virtual| |const| | - +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Dictionary` | :ref:`_get_constants`\ (\ ) |virtual| |const| | - +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`StringName` | :ref:`_get_doc_class_name`\ (\ ) |virtual| |const| | - +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Array`\[:ref:`Dictionary`\] | :ref:`_get_documentation`\ (\ ) |virtual| |const| | - +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`StringName` | :ref:`_get_global_name`\ (\ ) |virtual| |const| | - +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`StringName` | :ref:`_get_instance_base_type`\ (\ ) |virtual| |const| | - +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`ScriptLanguage` | :ref:`_get_language`\ (\ ) |virtual| |const| | - +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`_get_member_line`\ (\ member\: :ref:`StringName`\ ) |virtual| |const| | - +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Array`\[:ref:`StringName`\] | :ref:`_get_members`\ (\ ) |virtual| |const| | - +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Dictionary` | :ref:`_get_method_info`\ (\ method\: :ref:`StringName`\ ) |virtual| |const| | - +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Variant` | :ref:`_get_property_default_value`\ (\ property\: :ref:`StringName`\ ) |virtual| |const| | - +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Variant` | :ref:`_get_rpc_config`\ (\ ) |virtual| |const| | - +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Variant` | :ref:`_get_script_method_argument_count`\ (\ method\: :ref:`StringName`\ ) |virtual| |const| | - +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Array`\[:ref:`Dictionary`\] | :ref:`_get_script_method_list`\ (\ ) |virtual| |const| | - +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Array`\[:ref:`Dictionary`\] | :ref:`_get_script_property_list`\ (\ ) |virtual| |const| | - +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Array`\[:ref:`Dictionary`\] | :ref:`_get_script_signal_list`\ (\ ) |virtual| |const| | - +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`String` | :ref:`_get_source_code`\ (\ ) |virtual| |const| | - +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`_has_method`\ (\ method\: :ref:`StringName`\ ) |virtual| |const| | - +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`_has_property_default_value`\ (\ property\: :ref:`StringName`\ ) |virtual| |const| | - +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`_has_script_signal`\ (\ signal\: :ref:`StringName`\ ) |virtual| |const| | - +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`_has_source_code`\ (\ ) |virtual| |const| | - +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`_has_static_method`\ (\ method\: :ref:`StringName`\ ) |virtual| |const| | - +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`_inherits_script`\ (\ script\: :ref:`Script`\ ) |virtual| |const| | - +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | ``void*`` | :ref:`_instance_create`\ (\ for_object\: :ref:`Object`\ ) |virtual| |const| | - +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`_instance_has`\ (\ object\: :ref:`Object`\ ) |virtual| |const| | - +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`_is_abstract`\ (\ ) |virtual| |const| | - +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`_is_placeholder_fallback_enabled`\ (\ ) |virtual| |const| | - +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`_is_tool`\ (\ ) |virtual| |const| | - +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`_is_valid`\ (\ ) |virtual| |const| | - +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_placeholder_erased`\ (\ placeholder\: ``void*``\ ) |virtual| | - +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | ``void*`` | :ref:`_placeholder_instance_create`\ (\ for_object\: :ref:`Object`\ ) |virtual| |const| | - +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Error` | :ref:`_reload`\ (\ keep_state\: :ref:`bool`\ ) |virtual| | - +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_set_source_code`\ (\ code\: :ref:`String`\ ) |virtual| | - +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_update_exports`\ (\ ) |virtual| | - +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`_can_instantiate`\ (\ ) |virtual| |required| |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`_editor_can_reload_from_file`\ (\ ) |virtual| |required| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Script` | :ref:`_get_base_script`\ (\ ) |virtual| |required| |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`_get_class_icon_path`\ (\ ) |virtual| |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Dictionary` | :ref:`_get_constants`\ (\ ) |virtual| |required| |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`StringName` | :ref:`_get_doc_class_name`\ (\ ) |virtual| |required| |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Array`\[:ref:`Dictionary`\] | :ref:`_get_documentation`\ (\ ) |virtual| |required| |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`StringName` | :ref:`_get_global_name`\ (\ ) |virtual| |required| |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`StringName` | :ref:`_get_instance_base_type`\ (\ ) |virtual| |required| |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`ScriptLanguage` | :ref:`_get_language`\ (\ ) |virtual| |required| |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`_get_member_line`\ (\ member\: :ref:`StringName`\ ) |virtual| |required| |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Array`\[:ref:`StringName`\] | :ref:`_get_members`\ (\ ) |virtual| |required| |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Dictionary` | :ref:`_get_method_info`\ (\ method\: :ref:`StringName`\ ) |virtual| |required| |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Variant` | :ref:`_get_property_default_value`\ (\ property\: :ref:`StringName`\ ) |virtual| |required| |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Variant` | :ref:`_get_rpc_config`\ (\ ) |virtual| |required| |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Variant` | :ref:`_get_script_method_argument_count`\ (\ method\: :ref:`StringName`\ ) |virtual| |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Array`\[:ref:`Dictionary`\] | :ref:`_get_script_method_list`\ (\ ) |virtual| |required| |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Array`\[:ref:`Dictionary`\] | :ref:`_get_script_property_list`\ (\ ) |virtual| |required| |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Array`\[:ref:`Dictionary`\] | :ref:`_get_script_signal_list`\ (\ ) |virtual| |required| |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`_get_source_code`\ (\ ) |virtual| |required| |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`_has_method`\ (\ method\: :ref:`StringName`\ ) |virtual| |required| |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`_has_property_default_value`\ (\ property\: :ref:`StringName`\ ) |virtual| |required| |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`_has_script_signal`\ (\ signal\: :ref:`StringName`\ ) |virtual| |required| |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`_has_source_code`\ (\ ) |virtual| |required| |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`_has_static_method`\ (\ method\: :ref:`StringName`\ ) |virtual| |required| |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`_inherits_script`\ (\ script\: :ref:`Script`\ ) |virtual| |required| |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | ``void*`` | :ref:`_instance_create`\ (\ for_object\: :ref:`Object`\ ) |virtual| |required| |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`_instance_has`\ (\ object\: :ref:`Object`\ ) |virtual| |required| |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`_is_abstract`\ (\ ) |virtual| |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`_is_placeholder_fallback_enabled`\ (\ ) |virtual| |required| |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`_is_tool`\ (\ ) |virtual| |required| |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`_is_valid`\ (\ ) |virtual| |required| |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_placeholder_erased`\ (\ placeholder\: ``void*``\ ) |virtual| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | ``void*`` | :ref:`_placeholder_instance_create`\ (\ for_object\: :ref:`Object`\ ) |virtual| |required| |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Error` | :ref:`_reload`\ (\ keep_state\: :ref:`bool`\ ) |virtual| |required| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_set_source_code`\ (\ code\: :ref:`String`\ ) |virtual| |required| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_update_exports`\ (\ ) |virtual| |required| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ .. rst-class:: classref-section-separator @@ -113,11 +113,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`bool` **_can_instantiate**\ (\ ) |virtual| |const| :ref:`🔗` +:ref:`bool` **_can_instantiate**\ (\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -127,11 +127,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`bool` **_editor_can_reload_from_file**\ (\ ) |virtual| :ref:`🔗` +:ref:`bool` **_editor_can_reload_from_file**\ (\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -141,11 +141,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`Script` **_get_base_script**\ (\ ) |virtual| |const| :ref:`🔗` +:ref:`Script` **_get_base_script**\ (\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -159,7 +159,7 @@ Method Descriptions .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -169,11 +169,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`Dictionary` **_get_constants**\ (\ ) |virtual| |const| :ref:`🔗` +:ref:`Dictionary` **_get_constants**\ (\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -183,11 +183,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`StringName` **_get_doc_class_name**\ (\ ) |virtual| |const| :ref:`🔗` +:ref:`StringName` **_get_doc_class_name**\ (\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -197,11 +197,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`Array`\[:ref:`Dictionary`\] **_get_documentation**\ (\ ) |virtual| |const| :ref:`🔗` +:ref:`Array`\[:ref:`Dictionary`\] **_get_documentation**\ (\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -211,11 +211,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`StringName` **_get_global_name**\ (\ ) |virtual| |const| :ref:`🔗` +:ref:`StringName` **_get_global_name**\ (\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -225,11 +225,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`StringName` **_get_instance_base_type**\ (\ ) |virtual| |const| :ref:`🔗` +:ref:`StringName` **_get_instance_base_type**\ (\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -239,11 +239,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`ScriptLanguage` **_get_language**\ (\ ) |virtual| |const| :ref:`🔗` +:ref:`ScriptLanguage` **_get_language**\ (\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -253,11 +253,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`int` **_get_member_line**\ (\ member\: :ref:`StringName`\ ) |virtual| |const| :ref:`🔗` +:ref:`int` **_get_member_line**\ (\ member\: :ref:`StringName`\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -267,11 +267,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`Array`\[:ref:`StringName`\] **_get_members**\ (\ ) |virtual| |const| :ref:`🔗` +:ref:`Array`\[:ref:`StringName`\] **_get_members**\ (\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -281,11 +281,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`Dictionary` **_get_method_info**\ (\ method\: :ref:`StringName`\ ) |virtual| |const| :ref:`🔗` +:ref:`Dictionary` **_get_method_info**\ (\ method\: :ref:`StringName`\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -295,11 +295,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`Variant` **_get_property_default_value**\ (\ property\: :ref:`StringName`\ ) |virtual| |const| :ref:`🔗` +:ref:`Variant` **_get_property_default_value**\ (\ property\: :ref:`StringName`\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -309,11 +309,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`Variant` **_get_rpc_config**\ (\ ) |virtual| |const| :ref:`🔗` +:ref:`Variant` **_get_rpc_config**\ (\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -335,11 +335,11 @@ Return the expected argument count for the given ``method``, or ``null`` if it c .. rst-class:: classref-method -:ref:`Array`\[:ref:`Dictionary`\] **_get_script_method_list**\ (\ ) |virtual| |const| :ref:`🔗` +:ref:`Array`\[:ref:`Dictionary`\] **_get_script_method_list**\ (\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -349,11 +349,11 @@ Return the expected argument count for the given ``method``, or ``null`` if it c .. rst-class:: classref-method -:ref:`Array`\[:ref:`Dictionary`\] **_get_script_property_list**\ (\ ) |virtual| |const| :ref:`🔗` +:ref:`Array`\[:ref:`Dictionary`\] **_get_script_property_list**\ (\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -363,11 +363,11 @@ Return the expected argument count for the given ``method``, or ``null`` if it c .. rst-class:: classref-method -:ref:`Array`\[:ref:`Dictionary`\] **_get_script_signal_list**\ (\ ) |virtual| |const| :ref:`🔗` +:ref:`Array`\[:ref:`Dictionary`\] **_get_script_signal_list**\ (\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -377,11 +377,11 @@ Return the expected argument count for the given ``method``, or ``null`` if it c .. rst-class:: classref-method -:ref:`String` **_get_source_code**\ (\ ) |virtual| |const| :ref:`🔗` +:ref:`String` **_get_source_code**\ (\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -391,11 +391,11 @@ Return the expected argument count for the given ``method``, or ``null`` if it c .. rst-class:: classref-method -:ref:`bool` **_has_method**\ (\ method\: :ref:`StringName`\ ) |virtual| |const| :ref:`🔗` +:ref:`bool` **_has_method**\ (\ method\: :ref:`StringName`\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -405,11 +405,11 @@ Return the expected argument count for the given ``method``, or ``null`` if it c .. rst-class:: classref-method -:ref:`bool` **_has_property_default_value**\ (\ property\: :ref:`StringName`\ ) |virtual| |const| :ref:`🔗` +:ref:`bool` **_has_property_default_value**\ (\ property\: :ref:`StringName`\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -419,11 +419,11 @@ Return the expected argument count for the given ``method``, or ``null`` if it c .. rst-class:: classref-method -:ref:`bool` **_has_script_signal**\ (\ signal\: :ref:`StringName`\ ) |virtual| |const| :ref:`🔗` +:ref:`bool` **_has_script_signal**\ (\ signal\: :ref:`StringName`\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -433,11 +433,11 @@ Return the expected argument count for the given ``method``, or ``null`` if it c .. rst-class:: classref-method -:ref:`bool` **_has_source_code**\ (\ ) |virtual| |const| :ref:`🔗` +:ref:`bool` **_has_source_code**\ (\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -447,11 +447,11 @@ Return the expected argument count for the given ``method``, or ``null`` if it c .. rst-class:: classref-method -:ref:`bool` **_has_static_method**\ (\ method\: :ref:`StringName`\ ) |virtual| |const| :ref:`🔗` +:ref:`bool` **_has_static_method**\ (\ method\: :ref:`StringName`\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -461,11 +461,11 @@ Return the expected argument count for the given ``method``, or ``null`` if it c .. rst-class:: classref-method -:ref:`bool` **_inherits_script**\ (\ script\: :ref:`Script`\ ) |virtual| |const| :ref:`🔗` +:ref:`bool` **_inherits_script**\ (\ script\: :ref:`Script`\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -475,11 +475,11 @@ Return the expected argument count for the given ``method``, or ``null`` if it c .. rst-class:: classref-method -``void*`` **_instance_create**\ (\ for_object\: :ref:`Object`\ ) |virtual| |const| :ref:`🔗` +``void*`` **_instance_create**\ (\ for_object\: :ref:`Object`\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -489,11 +489,11 @@ Return the expected argument count for the given ``method``, or ``null`` if it c .. rst-class:: classref-method -:ref:`bool` **_instance_has**\ (\ object\: :ref:`Object`\ ) |virtual| |const| :ref:`🔗` +:ref:`bool` **_instance_has**\ (\ object\: :ref:`Object`\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -505,7 +505,7 @@ Return the expected argument count for the given ``method``, or ``null`` if it c :ref:`bool` **_is_abstract**\ (\ ) |virtual| |const| :ref:`🔗` -Returns ``true`` if the script is an abstract script. An abstract script does not have a constructor and cannot be instantiated. +Returns ``true`` if the script is an abstract script. Abstract scripts cannot be instantiated directly, instead other scripts should inherit them. Abstract scripts will be either unselectable or hidden in the Create New Node dialog (unselectable if there are non-abstract classes inheriting it, otherwise hidden). .. rst-class:: classref-item-separator @@ -515,11 +515,11 @@ Returns ``true`` if the script is an abstract script. An abstract script does no .. rst-class:: classref-method -:ref:`bool` **_is_placeholder_fallback_enabled**\ (\ ) |virtual| |const| :ref:`🔗` +:ref:`bool` **_is_placeholder_fallback_enabled**\ (\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -529,11 +529,11 @@ Returns ``true`` if the script is an abstract script. An abstract script does no .. rst-class:: classref-method -:ref:`bool` **_is_tool**\ (\ ) |virtual| |const| :ref:`🔗` +:ref:`bool` **_is_tool**\ (\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -543,11 +543,11 @@ Returns ``true`` if the script is an abstract script. An abstract script does no .. rst-class:: classref-method -:ref:`bool` **_is_valid**\ (\ ) |virtual| |const| :ref:`🔗` +:ref:`bool` **_is_valid**\ (\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -561,7 +561,7 @@ Returns ``true`` if the script is an abstract script. An abstract script does no .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -571,11 +571,11 @@ Returns ``true`` if the script is an abstract script. An abstract script does no .. rst-class:: classref-method -``void*`` **_placeholder_instance_create**\ (\ for_object\: :ref:`Object`\ ) |virtual| |const| :ref:`🔗` +``void*`` **_placeholder_instance_create**\ (\ for_object\: :ref:`Object`\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -585,11 +585,11 @@ Returns ``true`` if the script is an abstract script. An abstract script does no .. rst-class:: classref-method -:ref:`Error` **_reload**\ (\ keep_state\: :ref:`bool`\ ) |virtual| :ref:`🔗` +:ref:`Error` **_reload**\ (\ keep_state\: :ref:`bool`\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -599,11 +599,11 @@ Returns ``true`` if the script is an abstract script. An abstract script does no .. rst-class:: classref-method -|void| **_set_source_code**\ (\ code\: :ref:`String`\ ) |virtual| :ref:`🔗` +|void| **_set_source_code**\ (\ code\: :ref:`String`\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -613,13 +613,14 @@ Returns ``true`` if the script is an abstract script. An abstract script does no .. rst-class:: classref-method -|void| **_update_exports**\ (\ ) |virtual| :ref:`🔗` +|void| **_update_exports**\ (\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_scriptlanguage.rst b/classes/class_scriptlanguage.rst index 89e83de30..889b83752 100644 --- a/classes/class_scriptlanguage.rst +++ b/classes/class_scriptlanguage.rst @@ -16,7 +16,7 @@ ScriptLanguage .. container:: contribute - There is currently no description for this class. Please help us by :ref:`contributing one `! + There is currently no description for this class. Please help us by `contributing one `__! .. rst-class:: classref-section-separator @@ -41,7 +41,7 @@ enum **ScriptNameCasing**: :ref:`🔗` .. container:: contribute - There is currently no description for this enum. Please help us by :ref:`contributing one `! + There is currently no description for this enum. Please help us by `contributing one `__! @@ -53,7 +53,7 @@ enum **ScriptNameCasing**: :ref:`🔗` .. container:: contribute - There is currently no description for this enum. Please help us by :ref:`contributing one `! + There is currently no description for this enum. Please help us by `contributing one `__! @@ -65,7 +65,7 @@ enum **ScriptNameCasing**: :ref:`🔗` .. container:: contribute - There is currently no description for this enum. Please help us by :ref:`contributing one `! + There is currently no description for this enum. Please help us by `contributing one `__! @@ -77,11 +77,24 @@ enum **ScriptNameCasing**: :ref:`🔗` .. container:: contribute - There is currently no description for this enum. Please help us by :ref:`contributing one `! + There is currently no description for this enum. Please help us by `contributing one `__! + + + +.. _class_ScriptLanguage_constant_SCRIPT_NAME_CASING_CAMEL_CASE: + +.. rst-class:: classref-enumeration-constant + +:ref:`ScriptNameCasing` **SCRIPT_NAME_CASING_CAMEL_CASE** = ``4`` + +.. container:: contribute + + There is currently no description for this enum. Please help us by `contributing one `__! .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_scriptlanguageextension.rst b/classes/class_scriptlanguageextension.rst index 58f94df21..45b0c326d 100644 --- a/classes/class_scriptlanguageextension.rst +++ b/classes/class_scriptlanguageextension.rst @@ -14,7 +14,7 @@ ScriptLanguageExtension .. container:: contribute - There is currently no description for this class. Please help us by :ref:`contributing one `! + There is currently no description for this class. Please help us by `contributing one `__! .. rst-class:: classref-reftable-group @@ -24,127 +24,127 @@ Methods .. table:: :widths: auto - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_add_global_constant`\ (\ name\: :ref:`StringName`, value\: :ref:`Variant`\ ) |virtual| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_add_named_global_constant`\ (\ name\: :ref:`StringName`, value\: :ref:`Variant`\ ) |virtual| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`String` | :ref:`_auto_indent_code`\ (\ code\: :ref:`String`, from_line\: :ref:`int`, to_line\: :ref:`int`\ ) |virtual| |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`_can_inherit_from_file`\ (\ ) |virtual| |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`_can_make_function`\ (\ ) |virtual| |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Dictionary` | :ref:`_complete_code`\ (\ code\: :ref:`String`, path\: :ref:`String`, owner\: :ref:`Object`\ ) |virtual| |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Object` | :ref:`_create_script`\ (\ ) |virtual| |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Array`\[:ref:`Dictionary`\] | :ref:`_debug_get_current_stack_info`\ (\ ) |virtual| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`String` | :ref:`_debug_get_error`\ (\ ) |virtual| |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Dictionary` | :ref:`_debug_get_globals`\ (\ max_subitems\: :ref:`int`, max_depth\: :ref:`int`\ ) |virtual| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`_debug_get_stack_level_count`\ (\ ) |virtual| |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`String` | :ref:`_debug_get_stack_level_function`\ (\ level\: :ref:`int`\ ) |virtual| |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | ``void*`` | :ref:`_debug_get_stack_level_instance`\ (\ level\: :ref:`int`\ ) |virtual| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`_debug_get_stack_level_line`\ (\ level\: :ref:`int`\ ) |virtual| |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Dictionary` | :ref:`_debug_get_stack_level_locals`\ (\ level\: :ref:`int`, max_subitems\: :ref:`int`, max_depth\: :ref:`int`\ ) |virtual| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Dictionary` | :ref:`_debug_get_stack_level_members`\ (\ level\: :ref:`int`, max_subitems\: :ref:`int`, max_depth\: :ref:`int`\ ) |virtual| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`String` | :ref:`_debug_get_stack_level_source`\ (\ level\: :ref:`int`\ ) |virtual| |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`String` | :ref:`_debug_parse_stack_level_expression`\ (\ level\: :ref:`int`, expression\: :ref:`String`, max_subitems\: :ref:`int`, max_depth\: :ref:`int`\ ) |virtual| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`_find_function`\ (\ function\: :ref:`String`, code\: :ref:`String`\ ) |virtual| |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_finish`\ (\ ) |virtual| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_frame`\ (\ ) |virtual| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Array`\[:ref:`Dictionary`\] | :ref:`_get_built_in_templates`\ (\ object\: :ref:`StringName`\ ) |virtual| |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`PackedStringArray` | :ref:`_get_comment_delimiters`\ (\ ) |virtual| |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`PackedStringArray` | :ref:`_get_doc_comment_delimiters`\ (\ ) |virtual| |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`String` | :ref:`_get_extension`\ (\ ) |virtual| |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Dictionary` | :ref:`_get_global_class_name`\ (\ path\: :ref:`String`\ ) |virtual| |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`String` | :ref:`_get_name`\ (\ ) |virtual| |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Array`\[:ref:`Dictionary`\] | :ref:`_get_public_annotations`\ (\ ) |virtual| |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Dictionary` | :ref:`_get_public_constants`\ (\ ) |virtual| |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Array`\[:ref:`Dictionary`\] | :ref:`_get_public_functions`\ (\ ) |virtual| |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`PackedStringArray` | :ref:`_get_recognized_extensions`\ (\ ) |virtual| |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`PackedStringArray` | :ref:`_get_reserved_words`\ (\ ) |virtual| |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`PackedStringArray` | :ref:`_get_string_delimiters`\ (\ ) |virtual| |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`String` | :ref:`_get_type`\ (\ ) |virtual| |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`_handles_global_class_type`\ (\ type\: :ref:`String`\ ) |virtual| |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`_has_named_classes`\ (\ ) |virtual| |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_init`\ (\ ) |virtual| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`_is_control_flow_keyword`\ (\ keyword\: :ref:`String`\ ) |virtual| |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`_is_using_templates`\ (\ ) |virtual| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Dictionary` | :ref:`_lookup_code`\ (\ code\: :ref:`String`, symbol\: :ref:`String`, path\: :ref:`String`, owner\: :ref:`Object`\ ) |virtual| |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`String` | :ref:`_make_function`\ (\ class_name\: :ref:`String`, function_name\: :ref:`String`, function_args\: :ref:`PackedStringArray`\ ) |virtual| |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Script` | :ref:`_make_template`\ (\ template\: :ref:`String`, class_name\: :ref:`String`, base_class_name\: :ref:`String`\ ) |virtual| |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Error` | :ref:`_open_in_external_editor`\ (\ script\: :ref:`Script`, line\: :ref:`int`, column\: :ref:`int`\ ) |virtual| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`_overrides_external_editor`\ (\ ) |virtual| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`ScriptNameCasing` | :ref:`_preferred_file_name_casing`\ (\ ) |virtual| |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`_profiling_get_accumulated_data`\ (\ info_array\: ``ScriptLanguageExtensionProfilingInfo*``, info_max\: :ref:`int`\ ) |virtual| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`_profiling_get_frame_data`\ (\ info_array\: ``ScriptLanguageExtensionProfilingInfo*``, info_max\: :ref:`int`\ ) |virtual| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_profiling_set_save_native_calls`\ (\ enable\: :ref:`bool`\ ) |virtual| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_profiling_start`\ (\ ) |virtual| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_profiling_stop`\ (\ ) |virtual| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_reload_all_scripts`\ (\ ) |virtual| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_reload_scripts`\ (\ scripts\: :ref:`Array`, soft_reload\: :ref:`bool`\ ) |virtual| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_reload_tool_script`\ (\ script\: :ref:`Script`, soft_reload\: :ref:`bool`\ ) |virtual| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_remove_named_global_constant`\ (\ name\: :ref:`StringName`\ ) |virtual| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`_supports_builtin_mode`\ (\ ) |virtual| |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`_supports_documentation`\ (\ ) |virtual| |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_thread_enter`\ (\ ) |virtual| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_thread_exit`\ (\ ) |virtual| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Dictionary` | :ref:`_validate`\ (\ script\: :ref:`String`, path\: :ref:`String`, validate_functions\: :ref:`bool`, validate_errors\: :ref:`bool`, validate_warnings\: :ref:`bool`, validate_safe_lines\: :ref:`bool`\ ) |virtual| |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`String` | :ref:`_validate_path`\ (\ path\: :ref:`String`\ ) |virtual| |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_add_global_constant`\ (\ name\: :ref:`StringName`, value\: :ref:`Variant`\ ) |virtual| |required| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_add_named_global_constant`\ (\ name\: :ref:`StringName`, value\: :ref:`Variant`\ ) |virtual| |required| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`_auto_indent_code`\ (\ code\: :ref:`String`, from_line\: :ref:`int`, to_line\: :ref:`int`\ ) |virtual| |required| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`_can_inherit_from_file`\ (\ ) |virtual| |required| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`_can_make_function`\ (\ ) |virtual| |required| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Dictionary` | :ref:`_complete_code`\ (\ code\: :ref:`String`, path\: :ref:`String`, owner\: :ref:`Object`\ ) |virtual| |required| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Object` | :ref:`_create_script`\ (\ ) |virtual| |required| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Array`\[:ref:`Dictionary`\] | :ref:`_debug_get_current_stack_info`\ (\ ) |virtual| |required| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`_debug_get_error`\ (\ ) |virtual| |required| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Dictionary` | :ref:`_debug_get_globals`\ (\ max_subitems\: :ref:`int`, max_depth\: :ref:`int`\ ) |virtual| |required| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`_debug_get_stack_level_count`\ (\ ) |virtual| |required| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`_debug_get_stack_level_function`\ (\ level\: :ref:`int`\ ) |virtual| |required| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | ``void*`` | :ref:`_debug_get_stack_level_instance`\ (\ level\: :ref:`int`\ ) |virtual| |required| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`_debug_get_stack_level_line`\ (\ level\: :ref:`int`\ ) |virtual| |required| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Dictionary` | :ref:`_debug_get_stack_level_locals`\ (\ level\: :ref:`int`, max_subitems\: :ref:`int`, max_depth\: :ref:`int`\ ) |virtual| |required| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Dictionary` | :ref:`_debug_get_stack_level_members`\ (\ level\: :ref:`int`, max_subitems\: :ref:`int`, max_depth\: :ref:`int`\ ) |virtual| |required| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`_debug_get_stack_level_source`\ (\ level\: :ref:`int`\ ) |virtual| |required| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`_debug_parse_stack_level_expression`\ (\ level\: :ref:`int`, expression\: :ref:`String`, max_subitems\: :ref:`int`, max_depth\: :ref:`int`\ ) |virtual| |required| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`_find_function`\ (\ function\: :ref:`String`, code\: :ref:`String`\ ) |virtual| |required| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_finish`\ (\ ) |virtual| |required| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_frame`\ (\ ) |virtual| |required| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Array`\[:ref:`Dictionary`\] | :ref:`_get_built_in_templates`\ (\ object\: :ref:`StringName`\ ) |virtual| |required| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`PackedStringArray` | :ref:`_get_comment_delimiters`\ (\ ) |virtual| |required| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`PackedStringArray` | :ref:`_get_doc_comment_delimiters`\ (\ ) |virtual| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`_get_extension`\ (\ ) |virtual| |required| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Dictionary` | :ref:`_get_global_class_name`\ (\ path\: :ref:`String`\ ) |virtual| |required| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`_get_name`\ (\ ) |virtual| |required| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Array`\[:ref:`Dictionary`\] | :ref:`_get_public_annotations`\ (\ ) |virtual| |required| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Dictionary` | :ref:`_get_public_constants`\ (\ ) |virtual| |required| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Array`\[:ref:`Dictionary`\] | :ref:`_get_public_functions`\ (\ ) |virtual| |required| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`PackedStringArray` | :ref:`_get_recognized_extensions`\ (\ ) |virtual| |required| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`PackedStringArray` | :ref:`_get_reserved_words`\ (\ ) |virtual| |required| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`PackedStringArray` | :ref:`_get_string_delimiters`\ (\ ) |virtual| |required| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`_get_type`\ (\ ) |virtual| |required| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`_handles_global_class_type`\ (\ type\: :ref:`String`\ ) |virtual| |required| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`_has_named_classes`\ (\ ) |virtual| |required| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_init`\ (\ ) |virtual| |required| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`_is_control_flow_keyword`\ (\ keyword\: :ref:`String`\ ) |virtual| |required| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`_is_using_templates`\ (\ ) |virtual| |required| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Dictionary` | :ref:`_lookup_code`\ (\ code\: :ref:`String`, symbol\: :ref:`String`, path\: :ref:`String`, owner\: :ref:`Object`\ ) |virtual| |required| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`_make_function`\ (\ class_name\: :ref:`String`, function_name\: :ref:`String`, function_args\: :ref:`PackedStringArray`\ ) |virtual| |required| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Script` | :ref:`_make_template`\ (\ template\: :ref:`String`, class_name\: :ref:`String`, base_class_name\: :ref:`String`\ ) |virtual| |required| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Error` | :ref:`_open_in_external_editor`\ (\ script\: :ref:`Script`, line\: :ref:`int`, column\: :ref:`int`\ ) |virtual| |required| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`_overrides_external_editor`\ (\ ) |virtual| |required| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`ScriptNameCasing` | :ref:`_preferred_file_name_casing`\ (\ ) |virtual| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`_profiling_get_accumulated_data`\ (\ info_array\: ``ScriptLanguageExtensionProfilingInfo*``, info_max\: :ref:`int`\ ) |virtual| |required| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`_profiling_get_frame_data`\ (\ info_array\: ``ScriptLanguageExtensionProfilingInfo*``, info_max\: :ref:`int`\ ) |virtual| |required| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_profiling_set_save_native_calls`\ (\ enable\: :ref:`bool`\ ) |virtual| |required| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_profiling_start`\ (\ ) |virtual| |required| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_profiling_stop`\ (\ ) |virtual| |required| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_reload_all_scripts`\ (\ ) |virtual| |required| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_reload_scripts`\ (\ scripts\: :ref:`Array`, soft_reload\: :ref:`bool`\ ) |virtual| |required| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_reload_tool_script`\ (\ script\: :ref:`Script`, soft_reload\: :ref:`bool`\ ) |virtual| |required| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_remove_named_global_constant`\ (\ name\: :ref:`StringName`\ ) |virtual| |required| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`_supports_builtin_mode`\ (\ ) |virtual| |required| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`_supports_documentation`\ (\ ) |virtual| |required| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_thread_enter`\ (\ ) |virtual| |required| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_thread_exit`\ (\ ) |virtual| |required| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Dictionary` | :ref:`_validate`\ (\ script\: :ref:`String`, path\: :ref:`String`, validate_functions\: :ref:`bool`, validate_errors\: :ref:`bool`, validate_warnings\: :ref:`bool`, validate_safe_lines\: :ref:`bool`\ ) |virtual| |required| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`_validate_path`\ (\ path\: :ref:`String`\ ) |virtual| |required| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ .. rst-class:: classref-section-separator @@ -169,7 +169,7 @@ enum **LookupResultType**: :ref:`🔗`! + There is currently no description for this enum. Please help us by `contributing one `__! @@ -181,7 +181,7 @@ enum **LookupResultType**: :ref:`🔗`! + There is currently no description for this enum. Please help us by `contributing one `__! @@ -193,7 +193,7 @@ enum **LookupResultType**: :ref:`🔗`! + There is currently no description for this enum. Please help us by `contributing one `__! @@ -205,7 +205,7 @@ enum **LookupResultType**: :ref:`🔗`! + There is currently no description for this enum. Please help us by `contributing one `__! @@ -217,7 +217,7 @@ enum **LookupResultType**: :ref:`🔗`! + There is currently no description for this enum. Please help us by `contributing one `__! @@ -229,7 +229,7 @@ enum **LookupResultType**: :ref:`🔗`! + There is currently no description for this enum. Please help us by `contributing one `__! @@ -241,7 +241,7 @@ enum **LookupResultType**: :ref:`🔗`! + There is currently no description for this enum. Please help us by `contributing one `__! @@ -263,7 +263,7 @@ enum **LookupResultType**: :ref:`🔗`! + There is currently no description for this enum. Please help us by `contributing one `__! @@ -275,7 +275,7 @@ enum **LookupResultType**: :ref:`🔗`! + There is currently no description for this enum. Please help us by `contributing one `__! @@ -287,7 +287,7 @@ enum **LookupResultType**: :ref:`🔗`! + There is currently no description for this enum. Please help us by `contributing one `__! @@ -299,7 +299,7 @@ enum **LookupResultType**: :ref:`🔗`! + There is currently no description for this enum. Please help us by `contributing one `__! @@ -363,7 +363,7 @@ enum **CodeCompletionKind**: :ref:`🔗`! + There is currently no description for this enum. Please help us by `contributing one `__! @@ -375,7 +375,7 @@ enum **CodeCompletionKind**: :ref:`🔗`! + There is currently no description for this enum. Please help us by `contributing one `__! @@ -387,7 +387,7 @@ enum **CodeCompletionKind**: :ref:`🔗`! + There is currently no description for this enum. Please help us by `contributing one `__! @@ -399,7 +399,7 @@ enum **CodeCompletionKind**: :ref:`🔗`! + There is currently no description for this enum. Please help us by `contributing one `__! @@ -411,7 +411,7 @@ enum **CodeCompletionKind**: :ref:`🔗`! + There is currently no description for this enum. Please help us by `contributing one `__! @@ -423,7 +423,7 @@ enum **CodeCompletionKind**: :ref:`🔗`! + There is currently no description for this enum. Please help us by `contributing one `__! @@ -435,7 +435,7 @@ enum **CodeCompletionKind**: :ref:`🔗`! + There is currently no description for this enum. Please help us by `contributing one `__! @@ -447,7 +447,7 @@ enum **CodeCompletionKind**: :ref:`🔗`! + There is currently no description for this enum. Please help us by `contributing one `__! @@ -459,7 +459,7 @@ enum **CodeCompletionKind**: :ref:`🔗`! + There is currently no description for this enum. Please help us by `contributing one `__! @@ -471,7 +471,7 @@ enum **CodeCompletionKind**: :ref:`🔗`! + There is currently no description for this enum. Please help us by `contributing one `__! @@ -483,7 +483,7 @@ enum **CodeCompletionKind**: :ref:`🔗`! + There is currently no description for this enum. Please help us by `contributing one `__! @@ -500,11 +500,11 @@ Method Descriptions .. rst-class:: classref-method -|void| **_add_global_constant**\ (\ name\: :ref:`StringName`, value\: :ref:`Variant`\ ) |virtual| :ref:`🔗` +|void| **_add_global_constant**\ (\ name\: :ref:`StringName`, value\: :ref:`Variant`\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -514,11 +514,11 @@ Method Descriptions .. rst-class:: classref-method -|void| **_add_named_global_constant**\ (\ name\: :ref:`StringName`, value\: :ref:`Variant`\ ) |virtual| :ref:`🔗` +|void| **_add_named_global_constant**\ (\ name\: :ref:`StringName`, value\: :ref:`Variant`\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -528,11 +528,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`String` **_auto_indent_code**\ (\ code\: :ref:`String`, from_line\: :ref:`int`, to_line\: :ref:`int`\ ) |virtual| |const| :ref:`🔗` +:ref:`String` **_auto_indent_code**\ (\ code\: :ref:`String`, from_line\: :ref:`int`, to_line\: :ref:`int`\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -542,11 +542,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`bool` **_can_inherit_from_file**\ (\ ) |virtual| |const| :ref:`🔗` +:ref:`bool` **_can_inherit_from_file**\ (\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -556,11 +556,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`bool` **_can_make_function**\ (\ ) |virtual| |const| :ref:`🔗` +:ref:`bool` **_can_make_function**\ (\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -570,11 +570,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`Dictionary` **_complete_code**\ (\ code\: :ref:`String`, path\: :ref:`String`, owner\: :ref:`Object`\ ) |virtual| |const| :ref:`🔗` +:ref:`Dictionary` **_complete_code**\ (\ code\: :ref:`String`, path\: :ref:`String`, owner\: :ref:`Object`\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -584,11 +584,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`Object` **_create_script**\ (\ ) |virtual| |const| :ref:`🔗` +:ref:`Object` **_create_script**\ (\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -598,11 +598,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`Array`\[:ref:`Dictionary`\] **_debug_get_current_stack_info**\ (\ ) |virtual| :ref:`🔗` +:ref:`Array`\[:ref:`Dictionary`\] **_debug_get_current_stack_info**\ (\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -612,11 +612,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`String` **_debug_get_error**\ (\ ) |virtual| |const| :ref:`🔗` +:ref:`String` **_debug_get_error**\ (\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -626,11 +626,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`Dictionary` **_debug_get_globals**\ (\ max_subitems\: :ref:`int`, max_depth\: :ref:`int`\ ) |virtual| :ref:`🔗` +:ref:`Dictionary` **_debug_get_globals**\ (\ max_subitems\: :ref:`int`, max_depth\: :ref:`int`\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -640,11 +640,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`int` **_debug_get_stack_level_count**\ (\ ) |virtual| |const| :ref:`🔗` +:ref:`int` **_debug_get_stack_level_count**\ (\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -654,11 +654,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`String` **_debug_get_stack_level_function**\ (\ level\: :ref:`int`\ ) |virtual| |const| :ref:`🔗` +:ref:`String` **_debug_get_stack_level_function**\ (\ level\: :ref:`int`\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -668,11 +668,11 @@ Method Descriptions .. rst-class:: classref-method -``void*`` **_debug_get_stack_level_instance**\ (\ level\: :ref:`int`\ ) |virtual| :ref:`🔗` +``void*`` **_debug_get_stack_level_instance**\ (\ level\: :ref:`int`\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -682,11 +682,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`int` **_debug_get_stack_level_line**\ (\ level\: :ref:`int`\ ) |virtual| |const| :ref:`🔗` +:ref:`int` **_debug_get_stack_level_line**\ (\ level\: :ref:`int`\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -696,11 +696,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`Dictionary` **_debug_get_stack_level_locals**\ (\ level\: :ref:`int`, max_subitems\: :ref:`int`, max_depth\: :ref:`int`\ ) |virtual| :ref:`🔗` +:ref:`Dictionary` **_debug_get_stack_level_locals**\ (\ level\: :ref:`int`, max_subitems\: :ref:`int`, max_depth\: :ref:`int`\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -710,11 +710,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`Dictionary` **_debug_get_stack_level_members**\ (\ level\: :ref:`int`, max_subitems\: :ref:`int`, max_depth\: :ref:`int`\ ) |virtual| :ref:`🔗` +:ref:`Dictionary` **_debug_get_stack_level_members**\ (\ level\: :ref:`int`, max_subitems\: :ref:`int`, max_depth\: :ref:`int`\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -724,7 +724,7 @@ Method Descriptions .. rst-class:: classref-method -:ref:`String` **_debug_get_stack_level_source**\ (\ level\: :ref:`int`\ ) |virtual| |const| :ref:`🔗` +:ref:`String` **_debug_get_stack_level_source**\ (\ level\: :ref:`int`\ ) |virtual| |required| |const| :ref:`🔗` Returns the source associated with a given debug stack position. @@ -736,11 +736,11 @@ Returns the source associated with a given debug stack position. .. rst-class:: classref-method -:ref:`String` **_debug_parse_stack_level_expression**\ (\ level\: :ref:`int`, expression\: :ref:`String`, max_subitems\: :ref:`int`, max_depth\: :ref:`int`\ ) |virtual| :ref:`🔗` +:ref:`String` **_debug_parse_stack_level_expression**\ (\ level\: :ref:`int`, expression\: :ref:`String`, max_subitems\: :ref:`int`, max_depth\: :ref:`int`\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -750,7 +750,7 @@ Returns the source associated with a given debug stack position. .. rst-class:: classref-method -:ref:`int` **_find_function**\ (\ function\: :ref:`String`, code\: :ref:`String`\ ) |virtual| |const| :ref:`🔗` +:ref:`int` **_find_function**\ (\ function\: :ref:`String`, code\: :ref:`String`\ ) |virtual| |required| |const| :ref:`🔗` Returns the line where the function is defined in the code, or ``-1`` if the function is not present. @@ -762,11 +762,11 @@ Returns the line where the function is defined in the code, or ``-1`` if the fun .. rst-class:: classref-method -|void| **_finish**\ (\ ) |virtual| :ref:`🔗` +|void| **_finish**\ (\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -776,11 +776,11 @@ Returns the line where the function is defined in the code, or ``-1`` if the fun .. rst-class:: classref-method -|void| **_frame**\ (\ ) |virtual| :ref:`🔗` +|void| **_frame**\ (\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -790,11 +790,11 @@ Returns the line where the function is defined in the code, or ``-1`` if the fun .. rst-class:: classref-method -:ref:`Array`\[:ref:`Dictionary`\] **_get_built_in_templates**\ (\ object\: :ref:`StringName`\ ) |virtual| |const| :ref:`🔗` +:ref:`Array`\[:ref:`Dictionary`\] **_get_built_in_templates**\ (\ object\: :ref:`StringName`\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -804,11 +804,11 @@ Returns the line where the function is defined in the code, or ``-1`` if the fun .. rst-class:: classref-method -:ref:`PackedStringArray` **_get_comment_delimiters**\ (\ ) |virtual| |const| :ref:`🔗` +:ref:`PackedStringArray` **_get_comment_delimiters**\ (\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -822,7 +822,7 @@ Returns the line where the function is defined in the code, or ``-1`` if the fun .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -832,11 +832,11 @@ Returns the line where the function is defined in the code, or ``-1`` if the fun .. rst-class:: classref-method -:ref:`String` **_get_extension**\ (\ ) |virtual| |const| :ref:`🔗` +:ref:`String` **_get_extension**\ (\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -846,11 +846,11 @@ Returns the line where the function is defined in the code, or ``-1`` if the fun .. rst-class:: classref-method -:ref:`Dictionary` **_get_global_class_name**\ (\ path\: :ref:`String`\ ) |virtual| |const| :ref:`🔗` +:ref:`Dictionary` **_get_global_class_name**\ (\ path\: :ref:`String`\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -860,11 +860,11 @@ Returns the line where the function is defined in the code, or ``-1`` if the fun .. rst-class:: classref-method -:ref:`String` **_get_name**\ (\ ) |virtual| |const| :ref:`🔗` +:ref:`String` **_get_name**\ (\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -874,11 +874,11 @@ Returns the line where the function is defined in the code, or ``-1`` if the fun .. rst-class:: classref-method -:ref:`Array`\[:ref:`Dictionary`\] **_get_public_annotations**\ (\ ) |virtual| |const| :ref:`🔗` +:ref:`Array`\[:ref:`Dictionary`\] **_get_public_annotations**\ (\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -888,11 +888,11 @@ Returns the line where the function is defined in the code, or ``-1`` if the fun .. rst-class:: classref-method -:ref:`Dictionary` **_get_public_constants**\ (\ ) |virtual| |const| :ref:`🔗` +:ref:`Dictionary` **_get_public_constants**\ (\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -902,11 +902,11 @@ Returns the line where the function is defined in the code, or ``-1`` if the fun .. rst-class:: classref-method -:ref:`Array`\[:ref:`Dictionary`\] **_get_public_functions**\ (\ ) |virtual| |const| :ref:`🔗` +:ref:`Array`\[:ref:`Dictionary`\] **_get_public_functions**\ (\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -916,11 +916,11 @@ Returns the line where the function is defined in the code, or ``-1`` if the fun .. rst-class:: classref-method -:ref:`PackedStringArray` **_get_recognized_extensions**\ (\ ) |virtual| |const| :ref:`🔗` +:ref:`PackedStringArray` **_get_recognized_extensions**\ (\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -930,11 +930,11 @@ Returns the line where the function is defined in the code, or ``-1`` if the fun .. rst-class:: classref-method -:ref:`PackedStringArray` **_get_reserved_words**\ (\ ) |virtual| |const| :ref:`🔗` +:ref:`PackedStringArray` **_get_reserved_words**\ (\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -944,11 +944,11 @@ Returns the line where the function is defined in the code, or ``-1`` if the fun .. rst-class:: classref-method -:ref:`PackedStringArray` **_get_string_delimiters**\ (\ ) |virtual| |const| :ref:`🔗` +:ref:`PackedStringArray` **_get_string_delimiters**\ (\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -958,11 +958,11 @@ Returns the line where the function is defined in the code, or ``-1`` if the fun .. rst-class:: classref-method -:ref:`String` **_get_type**\ (\ ) |virtual| |const| :ref:`🔗` +:ref:`String` **_get_type**\ (\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -972,11 +972,11 @@ Returns the line where the function is defined in the code, or ``-1`` if the fun .. rst-class:: classref-method -:ref:`bool` **_handles_global_class_type**\ (\ type\: :ref:`String`\ ) |virtual| |const| :ref:`🔗` +:ref:`bool` **_handles_global_class_type**\ (\ type\: :ref:`String`\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -986,7 +986,7 @@ Returns the line where the function is defined in the code, or ``-1`` if the fun .. rst-class:: classref-method -:ref:`bool` **_has_named_classes**\ (\ ) |virtual| |const| :ref:`🔗` +:ref:`bool` **_has_named_classes**\ (\ ) |virtual| |required| |const| :ref:`🔗` **Deprecated:** This method is not called by the engine. @@ -998,11 +998,11 @@ Returns the line where the function is defined in the code, or ``-1`` if the fun .. rst-class:: classref-method -|void| **_init**\ (\ ) |virtual| :ref:`🔗` +|void| **_init**\ (\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -1012,11 +1012,11 @@ Returns the line where the function is defined in the code, or ``-1`` if the fun .. rst-class:: classref-method -:ref:`bool` **_is_control_flow_keyword**\ (\ keyword\: :ref:`String`\ ) |virtual| |const| :ref:`🔗` +:ref:`bool` **_is_control_flow_keyword**\ (\ keyword\: :ref:`String`\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -1026,11 +1026,11 @@ Returns the line where the function is defined in the code, or ``-1`` if the fun .. rst-class:: classref-method -:ref:`bool` **_is_using_templates**\ (\ ) |virtual| :ref:`🔗` +:ref:`bool` **_is_using_templates**\ (\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -1040,11 +1040,11 @@ Returns the line where the function is defined in the code, or ``-1`` if the fun .. rst-class:: classref-method -:ref:`Dictionary` **_lookup_code**\ (\ code\: :ref:`String`, symbol\: :ref:`String`, path\: :ref:`String`, owner\: :ref:`Object`\ ) |virtual| |const| :ref:`🔗` +:ref:`Dictionary` **_lookup_code**\ (\ code\: :ref:`String`, symbol\: :ref:`String`, path\: :ref:`String`, owner\: :ref:`Object`\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -1054,11 +1054,11 @@ Returns the line where the function is defined in the code, or ``-1`` if the fun .. rst-class:: classref-method -:ref:`String` **_make_function**\ (\ class_name\: :ref:`String`, function_name\: :ref:`String`, function_args\: :ref:`PackedStringArray`\ ) |virtual| |const| :ref:`🔗` +:ref:`String` **_make_function**\ (\ class_name\: :ref:`String`, function_name\: :ref:`String`, function_args\: :ref:`PackedStringArray`\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -1068,11 +1068,11 @@ Returns the line where the function is defined in the code, or ``-1`` if the fun .. rst-class:: classref-method -:ref:`Script` **_make_template**\ (\ template\: :ref:`String`, class_name\: :ref:`String`, base_class_name\: :ref:`String`\ ) |virtual| |const| :ref:`🔗` +:ref:`Script` **_make_template**\ (\ template\: :ref:`String`, class_name\: :ref:`String`, base_class_name\: :ref:`String`\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -1082,11 +1082,11 @@ Returns the line where the function is defined in the code, or ``-1`` if the fun .. rst-class:: classref-method -:ref:`Error` **_open_in_external_editor**\ (\ script\: :ref:`Script`, line\: :ref:`int`, column\: :ref:`int`\ ) |virtual| :ref:`🔗` +:ref:`Error` **_open_in_external_editor**\ (\ script\: :ref:`Script`, line\: :ref:`int`, column\: :ref:`int`\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -1096,11 +1096,11 @@ Returns the line where the function is defined in the code, or ``-1`` if the fun .. rst-class:: classref-method -:ref:`bool` **_overrides_external_editor**\ (\ ) |virtual| :ref:`🔗` +:ref:`bool` **_overrides_external_editor**\ (\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -1114,7 +1114,7 @@ Returns the line where the function is defined in the code, or ``-1`` if the fun .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -1124,11 +1124,11 @@ Returns the line where the function is defined in the code, or ``-1`` if the fun .. rst-class:: classref-method -:ref:`int` **_profiling_get_accumulated_data**\ (\ info_array\: ``ScriptLanguageExtensionProfilingInfo*``, info_max\: :ref:`int`\ ) |virtual| :ref:`🔗` +:ref:`int` **_profiling_get_accumulated_data**\ (\ info_array\: ``ScriptLanguageExtensionProfilingInfo*``, info_max\: :ref:`int`\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -1138,11 +1138,11 @@ Returns the line where the function is defined in the code, or ``-1`` if the fun .. rst-class:: classref-method -:ref:`int` **_profiling_get_frame_data**\ (\ info_array\: ``ScriptLanguageExtensionProfilingInfo*``, info_max\: :ref:`int`\ ) |virtual| :ref:`🔗` +:ref:`int` **_profiling_get_frame_data**\ (\ info_array\: ``ScriptLanguageExtensionProfilingInfo*``, info_max\: :ref:`int`\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -1152,11 +1152,11 @@ Returns the line where the function is defined in the code, or ``-1`` if the fun .. rst-class:: classref-method -|void| **_profiling_set_save_native_calls**\ (\ enable\: :ref:`bool`\ ) |virtual| :ref:`🔗` +|void| **_profiling_set_save_native_calls**\ (\ enable\: :ref:`bool`\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -1166,11 +1166,11 @@ Returns the line where the function is defined in the code, or ``-1`` if the fun .. rst-class:: classref-method -|void| **_profiling_start**\ (\ ) |virtual| :ref:`🔗` +|void| **_profiling_start**\ (\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -1180,11 +1180,11 @@ Returns the line where the function is defined in the code, or ``-1`` if the fun .. rst-class:: classref-method -|void| **_profiling_stop**\ (\ ) |virtual| :ref:`🔗` +|void| **_profiling_stop**\ (\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -1194,11 +1194,11 @@ Returns the line where the function is defined in the code, or ``-1`` if the fun .. rst-class:: classref-method -|void| **_reload_all_scripts**\ (\ ) |virtual| :ref:`🔗` +|void| **_reload_all_scripts**\ (\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -1208,11 +1208,11 @@ Returns the line where the function is defined in the code, or ``-1`` if the fun .. rst-class:: classref-method -|void| **_reload_scripts**\ (\ scripts\: :ref:`Array`, soft_reload\: :ref:`bool`\ ) |virtual| :ref:`🔗` +|void| **_reload_scripts**\ (\ scripts\: :ref:`Array`, soft_reload\: :ref:`bool`\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -1222,11 +1222,11 @@ Returns the line where the function is defined in the code, or ``-1`` if the fun .. rst-class:: classref-method -|void| **_reload_tool_script**\ (\ script\: :ref:`Script`, soft_reload\: :ref:`bool`\ ) |virtual| :ref:`🔗` +|void| **_reload_tool_script**\ (\ script\: :ref:`Script`, soft_reload\: :ref:`bool`\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -1236,11 +1236,11 @@ Returns the line where the function is defined in the code, or ``-1`` if the fun .. rst-class:: classref-method -|void| **_remove_named_global_constant**\ (\ name\: :ref:`StringName`\ ) |virtual| :ref:`🔗` +|void| **_remove_named_global_constant**\ (\ name\: :ref:`StringName`\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -1250,11 +1250,11 @@ Returns the line where the function is defined in the code, or ``-1`` if the fun .. rst-class:: classref-method -:ref:`bool` **_supports_builtin_mode**\ (\ ) |virtual| |const| :ref:`🔗` +:ref:`bool` **_supports_builtin_mode**\ (\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -1264,11 +1264,11 @@ Returns the line where the function is defined in the code, or ``-1`` if the fun .. rst-class:: classref-method -:ref:`bool` **_supports_documentation**\ (\ ) |virtual| |const| :ref:`🔗` +:ref:`bool` **_supports_documentation**\ (\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -1278,11 +1278,11 @@ Returns the line where the function is defined in the code, or ``-1`` if the fun .. rst-class:: classref-method -|void| **_thread_enter**\ (\ ) |virtual| :ref:`🔗` +|void| **_thread_enter**\ (\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -1292,11 +1292,11 @@ Returns the line where the function is defined in the code, or ``-1`` if the fun .. rst-class:: classref-method -|void| **_thread_exit**\ (\ ) |virtual| :ref:`🔗` +|void| **_thread_exit**\ (\ ) |virtual| |required| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -1306,11 +1306,11 @@ Returns the line where the function is defined in the code, or ``-1`` if the fun .. rst-class:: classref-method -:ref:`Dictionary` **_validate**\ (\ script\: :ref:`String`, path\: :ref:`String`, validate_functions\: :ref:`bool`, validate_errors\: :ref:`bool`, validate_warnings\: :ref:`bool`, validate_safe_lines\: :ref:`bool`\ ) |virtual| |const| :ref:`🔗` +:ref:`Dictionary` **_validate**\ (\ script\: :ref:`String`, path\: :ref:`String`, validate_functions\: :ref:`bool`, validate_errors\: :ref:`bool`, validate_warnings\: :ref:`bool`, validate_safe_lines\: :ref:`bool`\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -1320,13 +1320,14 @@ Returns the line where the function is defined in the code, or ``-1`` if the fun .. rst-class:: classref-method -:ref:`String` **_validate_path**\ (\ path\: :ref:`String`\ ) |virtual| |const| :ref:`🔗` +:ref:`String` **_validate_path**\ (\ path\: :ref:`String`\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_scrollbar.rst b/classes/class_scrollbar.rst index 5de397d0b..6c5c4a3c4 100644 --- a/classes/class_scrollbar.rst +++ b/classes/class_scrollbar.rst @@ -31,11 +31,13 @@ Properties .. table:: :widths: auto - +---------------------------+----------------------------------------------------------+-------------------------------------------------------------+ - | :ref:`float` | :ref:`custom_step` | ``-1.0`` | - +---------------------------+----------------------------------------------------------+-------------------------------------------------------------+ - | :ref:`float` | step | ``0.0`` (overrides :ref:`Range`) | - +---------------------------+----------------------------------------------------------+-------------------------------------------------------------+ + +------------------------------------------+----------------------------------------------------------+---------------------------------------------------------------------+ + | :ref:`float` | :ref:`custom_step` | ``-1.0`` | + +------------------------------------------+----------------------------------------------------------+---------------------------------------------------------------------+ + | :ref:`FocusMode` | focus_mode | ``3`` (overrides :ref:`Control`) | + +------------------------------------------+----------------------------------------------------------+---------------------------------------------------------------------+ + | :ref:`float` | step | ``0.0`` (overrides :ref:`Range`) | + +------------------------------------------+----------------------------------------------------------+---------------------------------------------------------------------+ .. rst-class:: classref-reftable-group @@ -246,6 +248,7 @@ Used as background of this **ScrollBar**. Used as background when the **ScrollBar** has the GUI focus. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_scrollcontainer.rst b/classes/class_scrollcontainer.rst index c3aad94b5..330714a17 100644 --- a/classes/class_scrollcontainer.rst +++ b/classes/class_scrollcontainer.rst @@ -232,7 +232,7 @@ If ``true``, the ScrollContainer will automatically scroll to focused children ( - |void| **set_horizontal_scroll_mode**\ (\ value\: :ref:`ScrollMode`\ ) - :ref:`ScrollMode` **get_horizontal_scroll_mode**\ (\ ) -Controls whether horizontal scrollbar can be used and when it should be visible. See :ref:`ScrollMode` for options. +Controls whether horizontal scrollbar can be used and when it should be visible. .. rst-class:: classref-item-separator @@ -348,7 +348,7 @@ Overrides the :ref:`ScrollBar.custom_step` - |void| **set_vertical_scroll_mode**\ (\ value\: :ref:`ScrollMode`\ ) - :ref:`ScrollMode` **get_vertical_scroll_mode**\ (\ ) -Controls whether vertical scrollbar can be used and when it should be visible. See :ref:`ScrollMode` for options. +Controls whether vertical scrollbar can be used and when it should be visible. .. rst-class:: classref-section-separator @@ -433,6 +433,7 @@ The focus border :ref:`StyleBox` of the **ScrollContainer**. Onl The background :ref:`StyleBox` of the **ScrollContainer**. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_segmentshape2d.rst b/classes/class_segmentshape2d.rst index 3fb405b5a..75be66e10 100644 --- a/classes/class_segmentshape2d.rst +++ b/classes/class_segmentshape2d.rst @@ -75,6 +75,7 @@ The segment's first point position. The segment's second point position. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_semaphore.rst b/classes/class_semaphore.rst index 7f834d4b2..63230d359 100644 --- a/classes/class_semaphore.rst +++ b/classes/class_semaphore.rst @@ -96,6 +96,7 @@ Like :ref:`wait()`, but won't block, so if the valu Waits for the **Semaphore**, if its value is zero, blocks until non-zero. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_separationrayshape2d.rst b/classes/class_separationrayshape2d.rst index 3c2d581ad..cec34d25d 100644 --- a/classes/class_separationrayshape2d.rst +++ b/classes/class_separationrayshape2d.rst @@ -77,6 +77,7 @@ If ``false`` (default), the shape always separates and returns a normal along it If ``true``, the shape can return the correct normal and separate in any direction, allowing sliding motion on slopes. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_separationrayshape3d.rst b/classes/class_separationrayshape3d.rst index a32a4be70..f26b3f330 100644 --- a/classes/class_separationrayshape3d.rst +++ b/classes/class_separationrayshape3d.rst @@ -77,6 +77,7 @@ If ``false`` (default), the shape always separates and returns a normal along it If ``true``, the shape can return the correct normal and separate in any direction, allowing sliding motion on slopes. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_separator.rst b/classes/class_separator.rst index 149e0a4e3..22012c5ac 100644 --- a/classes/class_separator.rst +++ b/classes/class_separator.rst @@ -67,6 +67,7 @@ The size of the area covered by the separator. Effectively works like a minimum The style for the separator line. Works best with :ref:`StyleBoxLine` (remember to enable :ref:`StyleBoxLine.vertical` for :ref:`VSeparator`). .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_shader.rst b/classes/class_shader.rst index 392d8ea75..db30cb526 100644 --- a/classes/class_shader.rst +++ b/classes/class_shader.rst @@ -217,6 +217,7 @@ Sets the default texture to be used with a texture uniform. The default is used \ **Note:** If the sampler array is used use ``index`` to access the specified texture. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_shaderglobalsoverride.rst b/classes/class_shaderglobalsoverride.rst index 055dad2b6..aed778854 100644 --- a/classes/class_shaderglobalsoverride.rst +++ b/classes/class_shaderglobalsoverride.rst @@ -33,6 +33,7 @@ Tutorials - :doc:`Shading language <../tutorials/shaders/shader_reference/shading_language>` .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_shaderinclude.rst b/classes/class_shaderinclude.rst index e9b74ac9a..730c1e2ec 100644 --- a/classes/class_shaderinclude.rst +++ b/classes/class_shaderinclude.rst @@ -63,6 +63,7 @@ Property Descriptions Returns the code of the shader include file. The returned text is what the user has written, not the full generated code used internally. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_shaderincludedb.rst b/classes/class_shaderincludedb.rst index 2e0a46739..7ed3897da 100644 --- a/classes/class_shaderincludedb.rst +++ b/classes/class_shaderincludedb.rst @@ -79,6 +79,7 @@ Returns ``true`` if an include file with this name exists. Returns a list of built-in include files that are currently registered. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_shadermaterial.rst b/classes/class_shadermaterial.rst index 6208b9e2b..11e639945 100644 --- a/classes/class_shadermaterial.rst +++ b/classes/class_shadermaterial.rst @@ -114,6 +114,7 @@ Changes the value set for this material of a uniform in the shader. \ **Note:** Changes to the shader uniform will be effective on all instances using this **ShaderMaterial**. To prevent this, use per-instance uniforms with :ref:`GeometryInstance3D.set_instance_shader_parameter()` or duplicate the **ShaderMaterial** resource using :ref:`Resource.duplicate()`. Per-instance uniforms allow for better shader reuse and are therefore faster, so they should be preferred over duplicating the **ShaderMaterial** when possible. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_shape2d.rst b/classes/class_shape2d.rst index 2828c55fc..9fe6bd15e 100644 --- a/classes/class_shape2d.rst +++ b/classes/class_shape2d.rst @@ -184,6 +184,7 @@ Draws a solid shape onto a :ref:`CanvasItem` with the :ref:`Re Returns a :ref:`Rect2` representing the shapes boundary. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_shape3d.rst b/classes/class_shape3d.rst index 66d7ea74d..3cac9e6e5 100644 --- a/classes/class_shape3d.rst +++ b/classes/class_shape3d.rst @@ -119,6 +119,7 @@ Method Descriptions Returns the :ref:`ArrayMesh` used to draw the debug collision for this **Shape3D**. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_shapecast2d.rst b/classes/class_shapecast2d.rst index 15295c7a7..b4160745c 100644 --- a/classes/class_shapecast2d.rst +++ b/classes/class_shapecast2d.rst @@ -489,6 +489,7 @@ Removes a collision exception so the shape does report collisions with the speci Based on ``value``, enables or disables the specified layer in the :ref:`collision_mask`, given a ``layer_number`` between 1 and 32. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_shapecast3d.rst b/classes/class_shapecast3d.rst index db507b546..03f75e328 100644 --- a/classes/class_shapecast3d.rst +++ b/classes/class_shapecast3d.rst @@ -526,6 +526,7 @@ This method does nothing. Based on ``value``, enables or disables the specified layer in the :ref:`collision_mask`, given a ``layer_number`` between 1 and 32. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_shortcut.rst b/classes/class_shortcut.rst index dc0b4926b..8fd9b6a6b 100644 --- a/classes/class_shortcut.rst +++ b/classes/class_shortcut.rst @@ -19,9 +19,65 @@ A shortcut for binding input. Description ----------- -Shortcuts are commonly used for interacting with a :ref:`Control` element from an :ref:`InputEvent` (also known as hotkeys). +Shortcuts (also known as hotkeys) are containers of :ref:`InputEvent` resources. They are commonly used to interact with a :ref:`Control` element from an :ref:`InputEvent`. + +One shortcut can contain multiple :ref:`InputEvent` resources, making it possible to trigger one action with multiple different inputs. + +\ **Example:** Capture the :kbd:`Ctrl + S` shortcut using a **Shortcut** resource: + + +.. tabs:: + + .. code-tab:: gdscript + + extends Node + + var save_shortcut = Shortcut.new() + func _ready(): + var key_event = InputEventKey.new() + key_event.keycode = KEY_S + key_event.ctrl_pressed = true + key_event.command_or_control_autoremap = true # Swaps Ctrl for Command on Mac. + save_shortcut.events = [key_event] + + func _input(event): + if save_shortcut.matches_event(event) and event.is_pressed() and not event.is_echo(): + print("Save shortcut pressed!") + get_viewport().set_input_as_handled() + + .. code-tab:: csharp + + using Godot; + + public partial class MyNode : Node + { + private readonly Shortcut _saveShortcut = new Shortcut(); + + public override void _Ready() + { + InputEventKey keyEvent = new InputEventKey + { + Keycode = Key.S, + CtrlPressed = true, + CommandOrControlAutoremap = true, // Swaps Ctrl for Command on Mac. + }; + + _saveShortcut.Events = [keyEvent]; + } + + public override void _Input(InputEvent @event) + { + if (@event is InputEventKey keyEvent && + _saveShortcut.MatchesEvent(@event) && + keyEvent.Pressed && !keyEvent.Echo) + { + GD.Print("Save shortcut pressed!"); + GetViewport().SetInputAsHandled(); + } + } + } + -One shortcut can contain multiple :ref:`InputEvent`\ s, allowing the possibility of triggering one action with multiple different inputs. .. rst-class:: classref-reftable-group @@ -117,6 +173,7 @@ Returns whether :ref:`events` contains an :ref:` Returns whether any :ref:`InputEvent` in :ref:`events` equals ``event``. This uses :ref:`InputEvent.is_match()` to compare events. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_signal.rst b/classes/class_signal.rst index 0f8493a4e..d3bf36f0b 100644 --- a/classes/class_signal.rst +++ b/classes/class_signal.rst @@ -27,7 +27,7 @@ In GDScript, signals can be declared with the ``signal`` keyword. In C#, you may .. code-tab:: gdscript signal attacked - + # Additional arguments may be declared. # These arguments must be passed when the signal is emitted. signal item_dropped(item_name, amount) @@ -36,7 +36,7 @@ In GDScript, signals can be declared with the ``signal`` keyword. In C#, you may [Signal] delegate void AttackedEventHandler(); - + // Additional arguments may be declared. // These arguments must be passed when the signal is emitted. [Signal] @@ -44,6 +44,150 @@ In GDScript, signals can be declared with the ``signal`` keyword. In C#, you may +Connecting signals is one of the most common operations in Godot and the API gives many options to do so, which are described further down. The code block below shows the recommended approach. + + +.. tabs:: + + .. code-tab:: gdscript + + func _ready(): + var button = Button.new() + # `button_down` here is a Signal Variant type. We therefore call the Signal.connect() method, not Object.connect(). + # See discussion below for a more in-depth overview of the API. + button.button_down.connect(_on_button_down) + + # This assumes that a `Player` class exists, which defines a `hit` signal. + var player = Player.new() + # We use Signal.connect() again, and we also use the Callable.bind() method, + # which returns a new Callable with the parameter binds. + player.hit.connect(_on_player_hit.bind("sword", 100)) + + func _on_button_down(): + print("Button down!") + + func _on_player_hit(weapon_type, damage): + print("Hit with weapon %s for %d damage." % [weapon_type, damage]) + + .. code-tab:: csharp + + public override void _Ready() + { + var button = new Button(); + // C# supports passing signals as events, so we can use this idiomatic construct: + button.ButtonDown += OnButtonDown; + + // This assumes that a `Player` class exists, which defines a `Hit` signal. + var player = new Player(); + // We can use lambdas when we need to bind additional parameters. + player.Hit += () => OnPlayerHit("sword", 100); + } + + private void OnButtonDown() + { + GD.Print("Button down!"); + } + + private void OnPlayerHit(string weaponType, int damage) + { + GD.Print($"Hit with weapon {weaponType} for {damage} damage."); + } + + + +\ **\ ``Object.connect()`` or ``Signal.connect()``?**\ + +As seen above, the recommended method to connect signals is not :ref:`Object.connect()`. The code block below shows the four options for connecting signals, using either this legacy method or the recommended :ref:`connect()`, and using either an implicit :ref:`Callable` or a manually defined one. + + +.. tabs:: + + .. code-tab:: gdscript + + func _ready(): + var button = Button.new() + # Option 1: Object.connect() with an implicit Callable for the defined function. + button.connect("button_down", _on_button_down) + # Option 2: Object.connect() with a constructed Callable using a target object and method name. + button.connect("button_down", Callable(self, "_on_button_down")) + # Option 3: Signal.connect() with an implicit Callable for the defined function. + button.button_down.connect(_on_button_down) + # Option 4: Signal.connect() with a constructed Callable using a target object and method name. + button.button_down.connect(Callable(self, "_on_button_down")) + + func _on_button_down(): + print("Button down!") + + .. code-tab:: csharp + + public override void _Ready() + { + var button = new Button(); + // Option 1: In C#, we can use signals as events and connect with this idiomatic syntax: + button.ButtonDown += OnButtonDown; + // Option 2: GodotObject.Connect() with a constructed Callable from a method group. + button.Connect(Button.SignalName.ButtonDown, Callable.From(OnButtonDown)); + // Option 3: GodotObject.Connect() with a constructed Callable using a target object and method name. + button.Connect(Button.SignalName.ButtonDown, new Callable(this, MethodName.OnButtonDown)); + } + + private void OnButtonDown() + { + GD.Print("Button down!"); + } + + + +While all options have the same outcome (``button``'s :ref:`BaseButton.button_down` signal will be connected to ``_on_button_down``), **option 3** offers the best validation: it will print a compile-time error if either the ``button_down`` **Signal** or the ``_on_button_down`` :ref:`Callable` are not defined. On the other hand, **option 2** only relies on string names and will only be able to validate either names at runtime: it will generate an error at runtime if ``"button_down"`` is not a signal, or if ``"_on_button_down"`` is not a method in the object ``self``. The main reason for using options 1, 2, or 4 would be if you actually need to use strings (e.g. to connect signals programmatically based on strings read from a configuration file). Otherwise, option 3 is the recommended (and fastest) method. + +\ **Binding and passing parameters:**\ + +The syntax to bind parameters is through :ref:`Callable.bind()`, which returns a copy of the :ref:`Callable` with its parameters bound. + +When calling :ref:`emit()` or :ref:`Object.emit_signal()`, the signal parameters can be also passed. The examples below show the relationship between these signal parameters and bound parameters. + + +.. tabs:: + + .. code-tab:: gdscript + + func _ready(): + # This assumes that a `Player` class exists, which defines a `hit` signal. + var player = Player.new() + # Using Callable.bind(). + player.hit.connect(_on_player_hit.bind("sword", 100)) + + # Parameters added when emitting the signal are passed first. + player.hit.emit("Dark lord", 5) + + # We pass two arguments when emitting (`hit_by`, `level`), + # and bind two more arguments when connecting (`weapon_type`, `damage`). + func _on_player_hit(hit_by, level, weapon_type, damage): + print("Hit by %s (level %d) with weapon %s for %d damage." % [hit_by, level, weapon_type, damage]) + + .. code-tab:: csharp + + public override void _Ready() + { + // This assumes that a `Player` class exists, which defines a `Hit` signal. + var player = new Player(); + // Using lambda expressions that create a closure that captures the additional parameters. + // The lambda only receives the parameters defined by the signal's delegate. + player.Hit += (hitBy, level) => OnPlayerHit(hitBy, level, "sword", 100); + + // Parameters added when emitting the signal are passed first. + player.EmitSignal(SignalName.Hit, "Dark lord", 5); + } + + // We pass two arguments when emitting (`hit_by`, `level`), + // and bind two more arguments when connecting (`weapon_type`, `damage`). + private void OnPlayerHit(string hitBy, int level, string weaponType, int damage) + { + GD.Print($"Hit by {hitBy} (level {level}) with weapon {weaponType} for {damage} damage."); + } + + + .. note:: There are notable differences when using this API with C#. See :ref:`doc_c_sharp_differences` for more information. @@ -171,16 +315,18 @@ Method Descriptions Connects this signal to the specified ``callable``. Optional ``flags`` can be also added to configure the connection's behavior (see :ref:`ConnectFlags` constants). You can provide additional arguments to the connected ``callable`` by using :ref:`Callable.bind()`. -A signal can only be connected once to the same :ref:`Callable`. If the signal is already connected, returns :ref:`@GlobalScope.ERR_INVALID_PARAMETER` and pushes an error message, unless the signal is connected with :ref:`Object.CONNECT_REFERENCE_COUNTED`. To prevent this, use :ref:`is_connected()` first to check for existing connections. +A signal can only be connected once to the same :ref:`Callable`. If the signal is already connected, this method returns :ref:`@GlobalScope.ERR_INVALID_PARAMETER` and generates an error, unless the signal is connected with :ref:`Object.CONNECT_REFERENCE_COUNTED`. To prevent this, use :ref:`is_connected()` first to check for existing connections. :: for button in $Buttons.get_children(): button.pressed.connect(_on_pressed.bind(button)) - + func _on_pressed(button): print(button.name, " was pressed") +\ **Note:** If the ``callable``'s object is freed, the connection will be lost. + .. rst-class:: classref-item-separator ---- @@ -325,6 +471,7 @@ Returns ``true`` if the signals do not share the same object and name. Returns ``true`` if both signals share the same object and name. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_skeleton2d.rst b/classes/class_skeleton2d.rst index 72017ee1c..39ff1adca 100644 --- a/classes/class_skeleton2d.rst +++ b/classes/class_skeleton2d.rst @@ -179,6 +179,7 @@ Sets the local pose transform, ``override_pose``, for the bone at ``bone_idx``. Sets the :ref:`SkeletonModificationStack2D` attached to this skeleton. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_skeleton3d.rst b/classes/class_skeleton3d.rst index 2656f07ec..3aacfcb18 100644 --- a/classes/class_skeleton3d.rst +++ b/classes/class_skeleton3d.rst @@ -61,6 +61,8 @@ Methods +------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`add_bone`\ (\ name\: :ref:`String`\ ) | +------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`advance`\ (\ delta\: :ref:`float`\ ) | + +------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`clear_bones`\ (\ ) | +------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`clear_bones_global_pose_override`\ (\ ) | @@ -181,9 +183,7 @@ Emitted when the bone at ``bone_idx`` is toggled with :ref:`set_bone_enabled()` -.. container:: contribute - - There is currently no description for this signal. Please help us by :ref:`contributing one `! +Emitted when the list of bones changes, such as when calling :ref:`add_bone()`, :ref:`set_bone_parent()`, :ref:`unparent_bone_and_rest()`, or :ref:`clear_bones()`. .. rst-class:: classref-item-separator @@ -268,6 +268,14 @@ Set a flag to process modification during physics frames (see :ref:`Node.NOTIFIC Set a flag to process modification during process frames (see :ref:`Node.NOTIFICATION_INTERNAL_PROCESS`). +.. _class_Skeleton3D_constant_MODIFIER_CALLBACK_MODE_PROCESS_MANUAL: + +.. rst-class:: classref-enumeration-constant + +:ref:`ModifierCallbackModeProcess` **MODIFIER_CALLBACK_MODE_PROCESS_MANUAL** = ``2`` + +Do not process modification. Use :ref:`advance()` to process the modification manually. + .. rst-class:: classref-section-separator ---- @@ -387,6 +395,20 @@ Adds a new bone with the given name. Returns the new bone's index, or ``-1`` if ---- +.. _class_Skeleton3D_method_advance: + +.. rst-class:: classref-method + +|void| **advance**\ (\ delta\: :ref:`float`\ ) :ref:`🔗` + +Manually advance the child :ref:`SkeletonModifier3D`\ s by the specified time (in seconds). + +\ **Note:** The ``delta`` is temporarily accumulated in the **Skeleton3D**, and the deferred process uses the accumulated value to process the modification. + +.. rst-class:: classref-item-separator + +---- + .. _class_Skeleton3D_method_clear_bones: .. rst-class:: classref-method @@ -421,7 +443,7 @@ Removes the global pose override on all bones in the skeleton. .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -549,7 +571,7 @@ Returns the global rest transform for ``bone_idx``. :ref:`Variant` **get_bone_meta**\ (\ bone_idx\: :ref:`int`, key\: :ref:`StringName`\ ) |const| :ref:`🔗` -Returns bone metadata for ``bone_idx`` with ``key``. +Returns the metadata for the bone at index ``bone_idx`` with ``key``. .. rst-class:: classref-item-separator @@ -561,7 +583,7 @@ Returns bone metadata for ``bone_idx`` with ``key``. :ref:`Array`\[:ref:`StringName`\] **get_bone_meta_list**\ (\ bone_idx\: :ref:`int`\ ) |const| :ref:`🔗` -Returns a list of all metadata keys for ``bone_idx``. +Returns the list of all metadata keys for the bone at index ``bone_idx``. .. rst-class:: classref-item-separator @@ -703,7 +725,7 @@ Use for invalidating caches in IK solvers and other nodes which process bones. :ref:`bool` **has_bone_meta**\ (\ bone_idx\: :ref:`int`, key\: :ref:`StringName`\ ) |const| :ref:`🔗` -Returns whether there exists any bone metadata for ``bone_idx`` with key ``key``. +Returns ``true`` if the bone at index ``bone_idx`` has metadata with the key ``key``. .. rst-class:: classref-item-separator @@ -881,7 +903,7 @@ Sets the global pose transform, ``pose``, for the bone at ``bone_idx``. |void| **set_bone_meta**\ (\ bone_idx\: :ref:`int`, key\: :ref:`StringName`, value\: :ref:`Variant`\ ) :ref:`🔗` -Sets bone metadata for ``bone_idx``, will set the ``key`` meta to ``value``. +Sets the metadata for the bone at index ``bone_idx``, setting the ``key`` meta to ``value``. .. rst-class:: classref-item-separator @@ -982,6 +1004,7 @@ Sets the rest transform for bone ``bone_idx``. Unparents the bone at ``bone_idx`` and sets its rest position to that of its parent prior to being reset. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_skeletonik3d.rst b/classes/class_skeletonik3d.rst index 8b4f70d90..19ea2bcd3 100644 --- a/classes/class_skeletonik3d.rst +++ b/classes/class_skeletonik3d.rst @@ -27,19 +27,19 @@ SkeletonIK3D is used to rotate all bones of a :ref:`Skeleton3D # Apply IK effect automatically on every new frame (not the current) skeleton_ik_node.start() - + # Apply IK effect only on the current frame skeleton_ik_node.start(true) - + # Stop IK effect and reset bones_global_pose_override on Skeleton skeleton_ik_node.stop() - + # Apply full IK effect skeleton_ik_node.set_influence(1.0) - + # Apply half IK effect skeleton_ik_node.set_influence(0.5) - + # Apply zero IK effect (a value at or below 0.01 also removes bones_global_pose_override on Skeleton) skeleton_ik_node.set_influence(0.0) @@ -322,6 +322,7 @@ Starts applying IK effects on each frame to the :ref:`Skeleton3D` bones and also calls :ref:`Skeleton3D.clear_bones_global_pose_override()` to remove existing overrides on all bones. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_skeletonmodification2d.rst b/classes/class_skeletonmodification2d.rst index a48689dd1..d73b058eb 100644 --- a/classes/class_skeletonmodification2d.rst +++ b/classes/class_skeletonmodification2d.rst @@ -224,6 +224,7 @@ Sets whether this modification will call :ref:`_draw_editor_gizmo()` the modification is bound to should handle setting the modification up. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_skeletonmodification2dccdik.rst b/classes/class_skeletonmodification2dccdik.rst index d5857d0f2..aef11183a 100644 --- a/classes/class_skeletonmodification2dccdik.rst +++ b/classes/class_skeletonmodification2dccdik.rst @@ -315,6 +315,7 @@ Determines whether angle constraints on the CCDIK joint at ``joint_idx`` are ena Sets whether the joint at ``joint_idx`` is set to rotate from the joint, ``true``, or to rotate from the tip, ``false``. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_skeletonmodification2dfabrik.rst b/classes/class_skeletonmodification2dfabrik.rst index ff216f5e4..b1ef4ca87 100644 --- a/classes/class_skeletonmodification2dfabrik.rst +++ b/classes/class_skeletonmodification2dfabrik.rst @@ -25,7 +25,7 @@ This :ref:`SkeletonModification2D` uses an algorit FABRIK works by knowing the positions and lengths of a series of bones, typically called a "bone chain". It first starts by running a forward pass, which places the final bone at the target's position. Then all other bones are moved towards the tip bone, so they stay at the defined bone length away. Then a backwards pass is performed, where the root/first bone in the FABRIK chain is placed back at the origin. Then all other bones are moved so they stay at the defined bone length away. This positions the bone chain so that it reaches the target when possible, but all of the bones stay the correct length away from each other. -Because of how FABRIK works, it often gives more natural results than those seen in :ref:`SkeletonModification2DCCDIK`. FABRIK also supports angle constraints, which are fully taken into account when solving. +Because of how FABRIK works, it often gives more natural results than those seen in :ref:`SkeletonModification2DCCDIK`. \ **Note:** The FABRIK modifier has ``fabrik_joints``, which are the data objects that hold the data for each joint in the FABRIK chain. This is different from :ref:`Bone2D` nodes! FABRIK joints hold the data needed for each :ref:`Bone2D` in the bone chain used by FABRIK. @@ -214,6 +214,7 @@ Sets whether the joint at ``joint_idx`` will use the target node's rotation rath \ **Note:** This option only works for the tip/final joint in the chain. For all other nodes, this option will be ignored. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_skeletonmodification2djiggle.rst b/classes/class_skeletonmodification2djiggle.rst index 1accb67ef..965008b13 100644 --- a/classes/class_skeletonmodification2djiggle.rst +++ b/classes/class_skeletonmodification2djiggle.rst @@ -471,6 +471,7 @@ Sets whether the Jiggle joint at ``joint_idx`` should use gravity. If ``true``, the Jiggle modifier will take colliders into account, keeping them from entering into these collision objects. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_skeletonmodification2dlookat.rst b/classes/class_skeletonmodification2dlookat.rst index ba1d83982..a4b5a9719 100644 --- a/classes/class_skeletonmodification2dlookat.rst +++ b/classes/class_skeletonmodification2dlookat.rst @@ -253,6 +253,7 @@ Sets the constraint's minimum allowed angle. Sets whether this modification will use constraints or not. When ``true``, constraints will be applied when solving the LookAt modification. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_skeletonmodification2dphysicalbones.rst b/classes/class_skeletonmodification2dphysicalbones.rst index 6c51c8cde..76a7cb77d 100644 --- a/classes/class_skeletonmodification2dphysicalbones.rst +++ b/classes/class_skeletonmodification2dphysicalbones.rst @@ -149,6 +149,7 @@ Tell the :ref:`PhysicalBone2D` nodes to stop simulating an Optionally, an array of bone names can be passed to this function, and that will cause only :ref:`PhysicalBone2D` nodes with those names to stop simulating. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_skeletonmodification2dstackholder.rst b/classes/class_skeletonmodification2dstackholder.rst index a87735a9f..c17f1c16f 100644 --- a/classes/class_skeletonmodification2dstackholder.rst +++ b/classes/class_skeletonmodification2dstackholder.rst @@ -69,6 +69,7 @@ Returns the :ref:`SkeletonModificationStack2D Sets the :ref:`SkeletonModificationStack2D` that this modification is holding. This modification stack will then be executed when this modification is executed. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_skeletonmodification2dtwoboneik.rst b/classes/class_skeletonmodification2dtwoboneik.rst index 427db19b1..1c1220154 100644 --- a/classes/class_skeletonmodification2dtwoboneik.rst +++ b/classes/class_skeletonmodification2dtwoboneik.rst @@ -244,6 +244,7 @@ Sets the :ref:`Bone2D` node that is being used as the second bone Sets the index of the :ref:`Bone2D` node that is being used as the second bone in the TwoBoneIK modification. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_skeletonmodificationstack2d.rst b/classes/class_skeletonmodificationstack2d.rst index a8f7f4382..cbe952821 100644 --- a/classes/class_skeletonmodificationstack2d.rst +++ b/classes/class_skeletonmodificationstack2d.rst @@ -243,6 +243,7 @@ Sets the modification at ``mod_idx`` to the passed-in modification, ``modificati Sets up the modification stack so it can execute. This function should be called by :ref:`Skeleton2D` and shouldn't be manually called unless you know what you are doing. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_skeletonmodifier3d.rst b/classes/class_skeletonmodifier3d.rst index abbf2c1f6..6bbcb86e5 100644 --- a/classes/class_skeletonmodifier3d.rst +++ b/classes/class_skeletonmodifier3d.rst @@ -12,9 +12,9 @@ SkeletonModifier3D **Inherits:** :ref:`Node3D` **<** :ref:`Node` **<** :ref:`Object` -**Inherited By:** :ref:`LookAtModifier3D`, :ref:`PhysicalBoneSimulator3D`, :ref:`RetargetModifier3D`, :ref:`SkeletonIK3D`, :ref:`SpringBoneSimulator3D`, :ref:`XRBodyModifier3D`, :ref:`XRHandModifier3D` +**Inherited By:** :ref:`BoneConstraint3D`, :ref:`LookAtModifier3D`, :ref:`ModifierBoneTarget3D`, :ref:`PhysicalBoneSimulator3D`, :ref:`RetargetModifier3D`, :ref:`SkeletonIK3D`, :ref:`SpringBoneSimulator3D`, :ref:`XRBodyModifier3D`, :ref:`XRHandModifier3D` -A node that may modify Skeleton3D's bone. +A node that may modify a Skeleton3D's bones. .. rst-class:: classref-introduction-group @@ -23,7 +23,7 @@ Description **SkeletonModifier3D** retrieves a target :ref:`Skeleton3D` by having a :ref:`Skeleton3D` parent. -If there is :ref:`AnimationMixer`, modification always performs after playback process of the :ref:`AnimationMixer`. +If there is an :ref:`AnimationMixer`, a modification always performs after playback process of the :ref:`AnimationMixer`. This node should be used to implement custom IK solvers, constraints, or skeleton physics. @@ -56,11 +56,17 @@ Methods .. table:: :widths: auto - +-------------------------------------+-------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_process_modification`\ (\ ) |virtual| | - +-------------------------------------+-------------------------------------------------------------------------------------------------------------+ - | :ref:`Skeleton3D` | :ref:`get_skeleton`\ (\ ) |const| | - +-------------------------------------+-------------------------------------------------------------------------------------------------------------+ + +-------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_process_modification`\ (\ ) |virtual| | + +-------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_process_modification_with_delta`\ (\ delta\: :ref:`float`\ ) |virtual| | + +-------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_skeleton_changed`\ (\ old_skeleton\: :ref:`Skeleton3D`, new_skeleton\: :ref:`Skeleton3D`\ ) |virtual| | + +-------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_validate_bone_names`\ (\ ) |virtual| | + +-------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Skeleton3D` | :ref:`get_skeleton`\ (\ ) |const| | + +-------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ .. rst-class:: classref-section-separator @@ -200,6 +206,8 @@ Method Descriptions |void| **_process_modification**\ (\ ) |virtual| :ref:`🔗` +**Deprecated:** Use :ref:`_process_modification_with_delta()` instead. + Override this virtual method to implement a custom skeleton modifier. You should do things like get the :ref:`Skeleton3D`'s current pose and apply the pose here. \ :ref:`_process_modification()` must not apply :ref:`influence` to bone poses because the :ref:`Skeleton3D` automatically applies influence to all bone poses set by the modifier. @@ -208,6 +216,46 @@ Override this virtual method to implement a custom skeleton modifier. You should ---- +.. _class_SkeletonModifier3D_private_method__process_modification_with_delta: + +.. rst-class:: classref-method + +|void| **_process_modification_with_delta**\ (\ delta\: :ref:`float`\ ) |virtual| :ref:`🔗` + +Override this virtual method to implement a custom skeleton modifier. You should do things like get the :ref:`Skeleton3D`'s current pose and apply the pose here. + +\ :ref:`_process_modification_with_delta()` must not apply :ref:`influence` to bone poses because the :ref:`Skeleton3D` automatically applies influence to all bone poses set by the modifier. + +\ ``delta`` is passed from parent :ref:`Skeleton3D`. See also :ref:`Skeleton3D.advance()`. + +.. rst-class:: classref-item-separator + +---- + +.. _class_SkeletonModifier3D_private_method__skeleton_changed: + +.. rst-class:: classref-method + +|void| **_skeleton_changed**\ (\ old_skeleton\: :ref:`Skeleton3D`, new_skeleton\: :ref:`Skeleton3D`\ ) |virtual| :ref:`🔗` + +Called when the skeleton is changed. + +.. rst-class:: classref-item-separator + +---- + +.. _class_SkeletonModifier3D_private_method__validate_bone_names: + +.. rst-class:: classref-method + +|void| **_validate_bone_names**\ (\ ) |virtual| :ref:`🔗` + +Called when bone name and index need to be validated such as the timing of the entering tree or changing skeleton. + +.. rst-class:: classref-item-separator + +---- + .. _class_SkeletonModifier3D_method_get_skeleton: .. rst-class:: classref-method @@ -217,6 +265,7 @@ Override this virtual method to implement a custom skeleton modifier. You should Get parent :ref:`Skeleton3D` node if found. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_skeletonprofile.rst b/classes/class_skeletonprofile.rst index ae0203660..bd512f940 100644 --- a/classes/class_skeletonprofile.rst +++ b/classes/class_skeletonprofile.rst @@ -507,6 +507,7 @@ Sets the tail direction of the bone at ``bone_idx``. Sets the texture of the group at ``group_idx`` that will be the drawing group background image in the :ref:`BoneMap` editor. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_skeletonprofilehumanoid.rst b/classes/class_skeletonprofilehumanoid.rst index b1e369eb5..bc0caa89e 100644 --- a/classes/class_skeletonprofilehumanoid.rst +++ b/classes/class_skeletonprofilehumanoid.rst @@ -108,6 +108,7 @@ Properties +-------------------------------------+-----------------+------------------------------------------------------------------------------------------------+ .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_skin.rst b/classes/class_skin.rst index 9f128b341..33cc1020c 100644 --- a/classes/class_skin.rst +++ b/classes/class_skin.rst @@ -14,7 +14,7 @@ Skin .. container:: contribute - There is currently no description for this class. Please help us by :ref:`contributing one `! + There is currently no description for this class. Please help us by `contributing one `__! .. rst-class:: classref-reftable-group @@ -65,7 +65,7 @@ Method Descriptions .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -79,7 +79,7 @@ Method Descriptions .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -93,7 +93,7 @@ Method Descriptions .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -107,7 +107,7 @@ Method Descriptions .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -121,7 +121,7 @@ Method Descriptions .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -135,7 +135,7 @@ Method Descriptions .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -149,7 +149,7 @@ Method Descriptions .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -163,7 +163,7 @@ Method Descriptions .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -177,7 +177,7 @@ Method Descriptions .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -191,7 +191,7 @@ Method Descriptions .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -205,9 +205,10 @@ Method Descriptions .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_skinreference.rst b/classes/class_skinreference.rst index ea33a56d1..512bad2b9 100644 --- a/classes/class_skinreference.rst +++ b/classes/class_skinreference.rst @@ -75,6 +75,7 @@ Returns the :ref:`Skin` connected to this SkinReference. In the case Note that a single :ref:`Skin` may have more than one **SkinReference** in the case that it is shared by meshes across multiple :ref:`Skeleton3D` nodes. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_sky.rst b/classes/class_sky.rst index a4a1ceba2..ef6f7dd90 100644 --- a/classes/class_sky.rst +++ b/classes/class_sky.rst @@ -180,7 +180,7 @@ Property Descriptions - |void| **set_process_mode**\ (\ value\: :ref:`ProcessMode`\ ) - :ref:`ProcessMode` **get_process_mode**\ (\ ) -Sets the method for generating the radiance map from the sky. The radiance map is a cubemap with increasingly blurry versions of the sky corresponding to different levels of roughness. Radiance maps can be expensive to calculate. See :ref:`ProcessMode` for options. +The method for generating the radiance map from the sky. The radiance map is a cubemap with increasingly blurry versions of the sky corresponding to different levels of roughness. Radiance maps can be expensive to calculate. .. rst-class:: classref-item-separator @@ -199,8 +199,6 @@ Sets the method for generating the radiance map from the sky. The radiance map i The **Sky**'s radiance map size. The higher the radiance map size, the more detailed the lighting from the **Sky** will be. -See :ref:`RadianceSize` constants for values. - \ **Note:** Some hardware will have trouble with higher radiance sizes, especially :ref:`RADIANCE_SIZE_512` and above. Only use such high values on high-end hardware. .. rst-class:: classref-item-separator @@ -221,6 +219,7 @@ See :ref:`RadianceSize` constants for values. :ref:`Material` used to draw the background. Can be :ref:`PanoramaSkyMaterial`, :ref:`ProceduralSkyMaterial`, :ref:`PhysicalSkyMaterial`, or even a :ref:`ShaderMaterial` if you want to use your own custom shader. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_slider.rst b/classes/class_slider.rst index 35cf95a10..8a8fe0a3b 100644 --- a/classes/class_slider.rst +++ b/classes/class_slider.rst @@ -31,19 +31,21 @@ Properties .. table:: :widths: auto - +------------------------------------------+-----------------------------------------------------------------+---------------------------------------------------------------------+ - | :ref:`bool` | :ref:`editable` | ``true`` | - +------------------------------------------+-----------------------------------------------------------------+---------------------------------------------------------------------+ - | :ref:`FocusMode` | focus_mode | ``2`` (overrides :ref:`Control`) | - +------------------------------------------+-----------------------------------------------------------------+---------------------------------------------------------------------+ - | :ref:`bool` | :ref:`scrollable` | ``true`` | - +------------------------------------------+-----------------------------------------------------------------+---------------------------------------------------------------------+ - | :ref:`float` | step | ``1.0`` (overrides :ref:`Range`) | - +------------------------------------------+-----------------------------------------------------------------+---------------------------------------------------------------------+ - | :ref:`int` | :ref:`tick_count` | ``0`` | - +------------------------------------------+-----------------------------------------------------------------+---------------------------------------------------------------------+ - | :ref:`bool` | :ref:`ticks_on_borders` | ``false`` | - +------------------------------------------+-----------------------------------------------------------------+---------------------------------------------------------------------+ + +-----------------------------------------------+-----------------------------------------------------------------+---------------------------------------------------------------------+ + | :ref:`bool` | :ref:`editable` | ``true`` | + +-----------------------------------------------+-----------------------------------------------------------------+---------------------------------------------------------------------+ + | :ref:`FocusMode` | focus_mode | ``2`` (overrides :ref:`Control`) | + +-----------------------------------------------+-----------------------------------------------------------------+---------------------------------------------------------------------+ + | :ref:`bool` | :ref:`scrollable` | ``true`` | + +-----------------------------------------------+-----------------------------------------------------------------+---------------------------------------------------------------------+ + | :ref:`float` | step | ``1.0`` (overrides :ref:`Range`) | + +-----------------------------------------------+-----------------------------------------------------------------+---------------------------------------------------------------------+ + | :ref:`int` | :ref:`tick_count` | ``0`` | + +-----------------------------------------------+-----------------------------------------------------------------+---------------------------------------------------------------------+ + | :ref:`bool` | :ref:`ticks_on_borders` | ``false`` | + +-----------------------------------------------+-----------------------------------------------------------------+---------------------------------------------------------------------+ + | :ref:`TickPosition` | :ref:`ticks_position` | ``0`` | + +-----------------------------------------------+-----------------------------------------------------------------+---------------------------------------------------------------------+ .. rst-class:: classref-reftable-group @@ -58,6 +60,8 @@ Theme Properties +-----------------------------------+--------------------------------------------------------------------------------+-------+ | :ref:`int` | :ref:`grabber_offset` | ``0`` | +-----------------------------------+--------------------------------------------------------------------------------+-------+ + | :ref:`int` | :ref:`tick_offset` | ``0`` | + +-----------------------------------+--------------------------------------------------------------------------------+-------+ | :ref:`Texture2D` | :ref:`grabber` | | +-----------------------------------+--------------------------------------------------------------------------------+-------+ | :ref:`Texture2D` | :ref:`grabber_disabled` | | @@ -108,6 +112,53 @@ Emitted when the grabber starts being dragged. This is emitted before the corres .. rst-class:: classref-descriptions-group +Enumerations +------------ + +.. _enum_Slider_TickPosition: + +.. rst-class:: classref-enumeration + +enum **TickPosition**: :ref:`🔗` + +.. _class_Slider_constant_TICK_POSITION_BOTTOM_RIGHT: + +.. rst-class:: classref-enumeration-constant + +:ref:`TickPosition` **TICK_POSITION_BOTTOM_RIGHT** = ``0`` + +Places the ticks at the bottom of the :ref:`HSlider`, or right of the :ref:`VSlider`. + +.. _class_Slider_constant_TICK_POSITION_TOP_LEFT: + +.. rst-class:: classref-enumeration-constant + +:ref:`TickPosition` **TICK_POSITION_TOP_LEFT** = ``1`` + +Places the ticks at the top of the :ref:`HSlider`, or left of the :ref:`VSlider`. + +.. _class_Slider_constant_TICK_POSITION_BOTH: + +.. rst-class:: classref-enumeration-constant + +:ref:`TickPosition` **TICK_POSITION_BOTH** = ``2`` + +Places the ticks at the both sides of the slider. + +.. _class_Slider_constant_TICK_POSITION_CENTER: + +.. rst-class:: classref-enumeration-constant + +:ref:`TickPosition` **TICK_POSITION_CENTER** = ``3`` + +Places the ticks at the center of the slider. + +.. rst-class:: classref-section-separator + +---- + +.. rst-class:: classref-descriptions-group + Property Descriptions --------------------- @@ -175,6 +226,23 @@ Number of ticks displayed on the slider, including border ticks. Ticks are unifo If ``true``, the slider will display ticks for minimum and maximum values. +.. rst-class:: classref-item-separator + +---- + +.. _class_Slider_property_ticks_position: + +.. rst-class:: classref-property + +:ref:`TickPosition` **ticks_position** = ``0`` :ref:`🔗` + +.. rst-class:: classref-property-setget + +- |void| **set_ticks_position**\ (\ value\: :ref:`TickPosition`\ ) +- :ref:`TickPosition` **get_ticks_position**\ (\ ) + +Sets the position of the ticks. See :ref:`TickPosition` for details. + .. rst-class:: classref-section-separator ---- @@ -208,6 +276,18 @@ Vertical or horizontal offset of the grabber. ---- +.. _class_Slider_theme_constant_tick_offset: + +.. rst-class:: classref-themeproperty + +:ref:`int` **tick_offset** = ``0`` :ref:`🔗` + +Vertical or horizontal offset of the ticks. The offset is reversed for top or left ticks. + +.. rst-class:: classref-item-separator + +---- + .. _class_Slider_theme_icon_grabber: .. rst-class:: classref-themeproperty @@ -289,6 +369,7 @@ The background of the area to the left or bottom of the grabber that displays wh The background for the whole slider. Affects the height or width of the :ref:`grabber_area`. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_sliderjoint3d.rst b/classes/class_sliderjoint3d.rst index be0cfc2b0..d2ba7edb6 100644 --- a/classes/class_sliderjoint3d.rst +++ b/classes/class_sliderjoint3d.rst @@ -688,7 +688,7 @@ Method Descriptions :ref:`float` **get_param**\ (\ param\: :ref:`Param`\ ) |const| :ref:`🔗` -Returns the value of the given parameter (see :ref:`Param` constants). +Returns the value of the given parameter. .. rst-class:: classref-item-separator @@ -700,9 +700,10 @@ Returns the value of the given parameter (see :ref:`Param`, value\: :ref:`float`\ ) :ref:`🔗` -Assigns ``value`` to the given parameter (see :ref:`Param` constants). +Assigns ``value`` to the given parameter. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_softbody3d.rst b/classes/class_softbody3d.rst index eda33928a..0c5485fd8 100644 --- a/classes/class_softbody3d.rst +++ b/classes/class_softbody3d.rst @@ -23,7 +23,7 @@ A deformable 3D physics mesh. Used to create elastic or deformable objects such Additionally, **SoftBody3D** is subject to wind forces defined in :ref:`Area3D` (see :ref:`Area3D.wind_source_path`, :ref:`Area3D.wind_force_magnitude`, and :ref:`Area3D.wind_attenuation_factor`). -\ **Note:** There are many known bugs in **SoftBody3D**. Therefore, it's not recommended to use them for things that can affect gameplay (such as trampolines). +\ **Note:** It's recommended to use Jolt Physics when using **SoftBody3D** instead of the default GodotPhysics3D, as Jolt Physics' soft body implementation is faster and more reliable. You can switch the physics engine using the :ref:`ProjectSettings.physics/3d/physics_engine` project setting. .. rst-class:: classref-introduction-group @@ -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| | @@ -204,7 +214,7 @@ The body's damping coefficient. Higher values will slow down the body more notic - |void| **set_disable_mode**\ (\ value\: :ref:`DisableMode`\ ) - :ref:`DisableMode` **get_disable_mode**\ (\ ) -Defines the behavior in physics when :ref:`Node.process_mode` is set to :ref:`Node.PROCESS_MODE_DISABLED`. See :ref:`DisableMode` for more details about the different modes. +Defines the behavior in physics when :ref:`Node.process_mode` is set to :ref:`Node.PROCESS_MODE_DISABLED`. .. rst-class:: classref-item-separator @@ -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 @@ -465,6 +546,7 @@ Based on ``value``, enables or disables the specified layer in the :ref:`collisi Sets the pinned state of a surface vertex. When set to ``true``, the optional ``attachment_path`` can define a :ref:`Node3D` the pinned vertex will be attached to. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_spheremesh.rst b/classes/class_spheremesh.rst index fd3e36f36..5478eb2a6 100644 --- a/classes/class_spheremesh.rst +++ b/classes/class_spheremesh.rst @@ -134,6 +134,7 @@ Radius of sphere. Number of segments along the height of the sphere. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_sphereoccluder3d.rst b/classes/class_sphereoccluder3d.rst index 936936a94..7a5b5fd50 100644 --- a/classes/class_sphereoccluder3d.rst +++ b/classes/class_sphereoccluder3d.rst @@ -65,6 +65,7 @@ Property Descriptions The sphere's radius in 3D units. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_sphereshape3d.rst b/classes/class_sphereshape3d.rst index 3c0fb86bd..36b1ff943 100644 --- a/classes/class_sphereshape3d.rst +++ b/classes/class_sphereshape3d.rst @@ -65,6 +65,7 @@ Property Descriptions The sphere's radius. The shape's diameter is double the radius. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_spinbox.rst b/classes/class_spinbox.rst index 729690dab..e5141ee20 100644 --- a/classes/class_spinbox.rst +++ b/classes/class_spinbox.rst @@ -22,7 +22,9 @@ An input field for numbers. Description ----------- -**SpinBox** is a numerical input text field. It allows entering integers and floating-point numbers. +**SpinBox** is a numerical input text field. It allows entering integers and floating-point numbers. The **SpinBox** also has up and down buttons that can be clicked increase or decrease the value. The value can also be changed by dragging the mouse up or down over the **SpinBox**'s arrows. + +Additionally, mathematical expressions can be entered. These are evaluated when the user presses :kbd:`Enter` while editing the **SpinBox**'s text field. This uses the :ref:`Expression` class to parse and evaluate the expression. The result of the expression is then set as the value of the **SpinBox**. Some examples of valid expressions are ``5 + 2 * 3``, ``pow(2, 4)``, and ``PI + sin(0.5)``. Expressions are case-sensitive. \ **Example:** Create a **SpinBox**, disable its context menu and set its text alignment to right. @@ -206,7 +208,9 @@ Changes the alignment of the underlying :ref:`LineEdit`. - |void| **set_custom_arrow_step**\ (\ value\: :ref:`float`\ ) - :ref:`float` **get_custom_arrow_step**\ (\ ) -If not ``0``, :ref:`Range.value` will always be rounded to a multiple of :ref:`custom_arrow_step` when interacting with the arrow buttons of the **SpinBox**. +If not ``0``, sets the step when interacting with the arrow buttons of the **SpinBox**. + +\ **Note:** :ref:`Range.value` will still be rounded to a multiple of :ref:`Range.step`. .. rst-class:: classref-item-separator @@ -293,6 +297,8 @@ Adds the specified suffix string after the numerical value of the **SpinBox**. Sets the value of the :ref:`Range` for this **SpinBox** when the :ref:`LineEdit` text is *changed* instead of *submitted*. See :ref:`LineEdit.text_changed` and :ref:`LineEdit.text_submitted`. +\ **Note:** If set to ``true``, this will interfere with entering mathematical expressions in the **SpinBox**. The **SpinBox** will try to evaluate the expression as you type, which means symbols like a trailing ``+`` are removed immediately by the expression being evaluated. + .. rst-class:: classref-section-separator ---- @@ -308,7 +314,7 @@ Method Descriptions |void| **apply**\ (\ ) :ref:`🔗` -Applies the current value of this **SpinBox**. +Applies the current value of this **SpinBox**. This is equivalent to pressing :kbd:`Enter` while editing the :ref:`LineEdit` used by the **SpinBox**. This will cause :ref:`LineEdit.text_submitted` to be emitted and its currently contained expression to be evaluated. .. rst-class:: classref-item-separator @@ -579,7 +585,7 @@ Up button icon when the button is being pressed. :ref:`Texture2D` **updown** :ref:`🔗` -Single texture representing both the up and down buttons icons. It is displayed in the middle of the buttons and does not change upon interaction. It is recommended to use individual :ref:`up` and :ref:`down` graphics for better usability. This can also be used as additional decoration between the two buttons. +Single texture representing both the up and down buttons icons. It is displayed in the middle of the buttons and does not change upon interaction. If a valid icon is assigned, it will replace :ref:`up` and :ref:`down`. .. rst-class:: classref-item-separator @@ -702,6 +708,7 @@ Background style of the up button when being pressed. :ref:`StyleBox` drawn in the space occupied by the separation between the up and down buttons. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_splitcontainer.rst b/classes/class_splitcontainer.rst index 7f07f0e1e..ffba1a597 100644 --- a/classes/class_splitcontainer.rst +++ b/classes/class_splitcontainer.rst @@ -55,6 +55,8 @@ Properties +-----------------------------------------------------------------+---------------------------------------------------------------------------------------------------+-----------+ | :ref:`int` | :ref:`split_offset` | ``0`` | +-----------------------------------------------------------------+---------------------------------------------------------------------------------------------------+-----------+ + | :ref:`bool` | :ref:`touch_dragger_enabled` | ``false`` | + +-----------------------------------------------------------------+---------------------------------------------------------------------------------------------------+-----------+ | :ref:`bool` | :ref:`vertical` | ``false`` | +-----------------------------------------------------------------+---------------------------------------------------------------------------------------------------+-----------+ @@ -80,21 +82,33 @@ Theme Properties .. table:: :widths: auto - +-----------------------------------+-------------------------------------------------------------------------------------------+--------+ - | :ref:`int` | :ref:`autohide` | ``1`` | - +-----------------------------------+-------------------------------------------------------------------------------------------+--------+ - | :ref:`int` | :ref:`minimum_grab_thickness` | ``6`` | - +-----------------------------------+-------------------------------------------------------------------------------------------+--------+ - | :ref:`int` | :ref:`separation` | ``12`` | - +-----------------------------------+-------------------------------------------------------------------------------------------+--------+ - | :ref:`Texture2D` | :ref:`grabber` | | - +-----------------------------------+-------------------------------------------------------------------------------------------+--------+ - | :ref:`Texture2D` | :ref:`h_grabber` | | - +-----------------------------------+-------------------------------------------------------------------------------------------+--------+ - | :ref:`Texture2D` | :ref:`v_grabber` | | - +-----------------------------------+-------------------------------------------------------------------------------------------+--------+ - | :ref:`StyleBox` | :ref:`split_bar_background` | | - +-----------------------------------+-------------------------------------------------------------------------------------------+--------+ + +-----------------------------------+--------------------------------------------------------------------------------------------------+-------------------------+ + | :ref:`Color` | :ref:`touch_dragger_color` | ``Color(1, 1, 1, 0.3)`` | + +-----------------------------------+--------------------------------------------------------------------------------------------------+-------------------------+ + | :ref:`Color` | :ref:`touch_dragger_hover_color` | ``Color(1, 1, 1, 0.6)`` | + +-----------------------------------+--------------------------------------------------------------------------------------------------+-------------------------+ + | :ref:`Color` | :ref:`touch_dragger_pressed_color` | ``Color(1, 1, 1, 1)`` | + +-----------------------------------+--------------------------------------------------------------------------------------------------+-------------------------+ + | :ref:`int` | :ref:`autohide` | ``1`` | + +-----------------------------------+--------------------------------------------------------------------------------------------------+-------------------------+ + | :ref:`int` | :ref:`minimum_grab_thickness` | ``6`` | + +-----------------------------------+--------------------------------------------------------------------------------------------------+-------------------------+ + | :ref:`int` | :ref:`separation` | ``12`` | + +-----------------------------------+--------------------------------------------------------------------------------------------------+-------------------------+ + | :ref:`Texture2D` | :ref:`grabber` | | + +-----------------------------------+--------------------------------------------------------------------------------------------------+-------------------------+ + | :ref:`Texture2D` | :ref:`h_grabber` | | + +-----------------------------------+--------------------------------------------------------------------------------------------------+-------------------------+ + | :ref:`Texture2D` | :ref:`h_touch_dragger` | | + +-----------------------------------+--------------------------------------------------------------------------------------------------+-------------------------+ + | :ref:`Texture2D` | :ref:`touch_dragger` | | + +-----------------------------------+--------------------------------------------------------------------------------------------------+-------------------------+ + | :ref:`Texture2D` | :ref:`v_grabber` | | + +-----------------------------------+--------------------------------------------------------------------------------------------------+-------------------------+ + | :ref:`Texture2D` | :ref:`v_touch_dragger` | | + +-----------------------------------+--------------------------------------------------------------------------------------------------+-------------------------+ + | :ref:`StyleBox` | :ref:`split_bar_background` | | + +-----------------------------------+--------------------------------------------------------------------------------------------------+-------------------------+ .. rst-class:: classref-section-separator @@ -287,7 +301,7 @@ Shifts the drag area in the axis of the container to prevent the drag area from - |void| **set_dragger_visibility**\ (\ value\: :ref:`DraggerVisibility`\ ) - :ref:`DraggerVisibility` **get_dragger_visibility**\ (\ ) -Determines the dragger's visibility. See :ref:`DraggerVisibility` for details. This property does not determine whether dragging is enabled or not. Use :ref:`dragging_enabled` for that. +Determines the dragger's visibility. This property does not determine whether dragging is enabled or not. Use :ref:`dragging_enabled` for that. .. rst-class:: classref-item-separator @@ -327,6 +341,23 @@ The initial offset of the splitting between the two :ref:`Control ---- +.. _class_SplitContainer_property_touch_dragger_enabled: + +.. rst-class:: classref-property + +:ref:`bool` **touch_dragger_enabled** = ``false`` :ref:`🔗` + +.. rst-class:: classref-property-setget + +- |void| **set_touch_dragger_enabled**\ (\ value\: :ref:`bool`\ ) +- :ref:`bool` **is_touch_dragger_enabled**\ (\ ) + +If ``true``, a touch-friendly drag handle will be enabled for better usability on smaller screens. Unlike the standard grabber, this drag handle overlaps the **SplitContainer**'s children and does not affect their minimum separation. The standard grabber will no longer be drawn when this option is enabled. + +.. rst-class:: classref-item-separator + +---- + .. _class_SplitContainer_property_vertical: .. rst-class:: classref-property @@ -388,6 +419,42 @@ Returns the drag area :ref:`Control`. For example, you can move a Theme Property Descriptions --------------------------- +.. _class_SplitContainer_theme_color_touch_dragger_color: + +.. rst-class:: classref-themeproperty + +:ref:`Color` **touch_dragger_color** = ``Color(1, 1, 1, 0.3)`` :ref:`🔗` + +The color of the touch dragger. + +.. rst-class:: classref-item-separator + +---- + +.. _class_SplitContainer_theme_color_touch_dragger_hover_color: + +.. rst-class:: classref-themeproperty + +:ref:`Color` **touch_dragger_hover_color** = ``Color(1, 1, 1, 0.6)`` :ref:`🔗` + +The color of the touch dragger when hovered. + +.. rst-class:: classref-item-separator + +---- + +.. _class_SplitContainer_theme_color_touch_dragger_pressed_color: + +.. rst-class:: classref-themeproperty + +:ref:`Color` **touch_dragger_pressed_color** = ``Color(1, 1, 1, 1)`` :ref:`🔗` + +The color of the touch dragger when pressed. + +.. rst-class:: classref-item-separator + +---- + .. _class_SplitContainer_theme_constant_autohide: .. rst-class:: classref-themeproperty @@ -432,7 +499,7 @@ The split bar thickness, i.e., the gap between the two children of the container :ref:`Texture2D` **grabber** :ref:`🔗` -The icon used for the grabber drawn in the middle area. +The icon used for the grabber drawn in the middle area. This is only used in :ref:`HSplitContainer` and :ref:`VSplitContainer`. For **SplitContainer**, see :ref:`h_grabber` and :ref:`v_grabber` instead. .. rst-class:: classref-item-separator @@ -450,6 +517,30 @@ The icon used for the grabber drawn in the middle area when :ref:`vertical` **h_touch_dragger** :ref:`🔗` + +The icon used for the drag handle when :ref:`touch_dragger_enabled` is ``true`` and :ref:`vertical` is ``false``. + +.. rst-class:: classref-item-separator + +---- + +.. _class_SplitContainer_theme_icon_touch_dragger: + +.. rst-class:: classref-themeproperty + +:ref:`Texture2D` **touch_dragger** :ref:`🔗` + +The icon used for the drag handle when :ref:`touch_dragger_enabled` is ``true``. This is only used in :ref:`HSplitContainer` and :ref:`VSplitContainer`. For **SplitContainer**, see :ref:`h_touch_dragger` and :ref:`v_touch_dragger` instead. + +.. rst-class:: classref-item-separator + +---- + .. _class_SplitContainer_theme_icon_v_grabber: .. rst-class:: classref-themeproperty @@ -462,6 +553,18 @@ The icon used for the grabber drawn in the middle area when :ref:`vertical` **v_touch_dragger** :ref:`🔗` + +The icon used for the drag handle when :ref:`touch_dragger_enabled` is ``true`` and :ref:`vertical` is ``true``. + +.. rst-class:: classref-item-separator + +---- + .. _class_SplitContainer_theme_style_split_bar_background: .. rst-class:: classref-themeproperty @@ -471,6 +574,7 @@ The icon used for the grabber drawn in the middle area when :ref:`vertical` node that emits lights in a specific direction, in the shape of a cone. The light is attenuated through the distance. This attenuation can be configured by changing the energy, radius and attenuation parameters of :ref:`Light3D`. +Light is emitted in the -Z direction of the node's global basis. For an unrotated light, this means that the light is emitted forwards, illuminating the front side of a 3D model (see :ref:`Vector3.FORWARD` and :ref:`Vector3.MODEL_FRONT`). + \ **Note:** When using the Mobile rendering method, only 8 spot lights can be displayed on each mesh resource. Attempting to display more than 8 spot lights on a single mesh resource will result in spot lights flickering in and out as the camera moves. When using the Compatibility rendering method, only 8 spot lights can be displayed on each mesh resource by default, but this can be increased by adjusting :ref:`ProjectSettings.rendering/limits/opengl/max_lights_per_object`. \ **Note:** When using the Mobile or Compatibility rendering methods, spot lights will only correctly affect meshes whose visibility AABB intersects with the light's AABB. If using a shader to deform the mesh in a way that makes it go outside its AABB, :ref:`GeometryInstance3D.extra_cull_margin` must be increased on the mesh. Otherwise, the light may not be visible on the mesh. @@ -80,7 +82,7 @@ Property Descriptions - |void| **set_param**\ (\ value\: :ref:`float`\ ) - :ref:`float` **get_param**\ (\ ) -The spotlight's angle in degrees. +The spotlight's angle in degrees. This is the angular radius, meaning the angle from the -Z axis, the cone's center, to the edge of the cone. The default angular radius of 45 degrees corresponds to a cone with an angular diameter of 90 degrees. \ **Note:** :ref:`spot_angle` is not affected by :ref:`Node3D.scale` (the light's scale or its parent's scale). @@ -144,6 +146,7 @@ The maximal range that can be reached by the spotlight. Note that the effectivel \ **Note:** :ref:`spot_range` is not affected by :ref:`Node3D.scale` (the light's scale or its parent's scale). .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_springarm3d.rst b/classes/class_springarm3d.rst index 37106d50b..7bbf0d1cb 100644 --- a/classes/class_springarm3d.rst +++ b/classes/class_springarm3d.rst @@ -199,6 +199,7 @@ Returns the spring arm's current length. Removes the given :ref:`RID` from the list of :ref:`PhysicsBody3D` objects excluded from the collision check. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_springbonecollision3d.rst b/classes/class_springbonecollision3d.rst index ff3070fe3..9742f01fe 100644 --- a/classes/class_springbonecollision3d.rst +++ b/classes/class_springbonecollision3d.rst @@ -150,6 +150,7 @@ Method Descriptions Get parent :ref:`Skeleton3D` node of the parent :ref:`SpringBoneSimulator3D` if found. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_springbonecollisioncapsule3d.rst b/classes/class_springbonecollisioncapsule3d.rst index 91764118f..001fb724e 100644 --- a/classes/class_springbonecollisioncapsule3d.rst +++ b/classes/class_springbonecollisioncapsule3d.rst @@ -29,13 +29,15 @@ Properties .. table:: :widths: auto - +---------------------------+-------------------------------------------------------------------+-----------+ - | :ref:`float` | :ref:`height` | ``0.5`` | - +---------------------------+-------------------------------------------------------------------+-----------+ - | :ref:`bool` | :ref:`inside` | ``false`` | - +---------------------------+-------------------------------------------------------------------+-----------+ - | :ref:`float` | :ref:`radius` | ``0.1`` | - +---------------------------+-------------------------------------------------------------------+-----------+ + +---------------------------+---------------------------------------------------------------------------+-----------+ + | :ref:`float` | :ref:`height` | ``0.5`` | + +---------------------------+---------------------------------------------------------------------------+-----------+ + | :ref:`bool` | :ref:`inside` | ``false`` | + +---------------------------+---------------------------------------------------------------------------+-----------+ + | :ref:`float` | :ref:`mid_height` | | + +---------------------------+---------------------------------------------------------------------------+-----------+ + | :ref:`float` | :ref:`radius` | ``0.1`` | + +---------------------------+---------------------------------------------------------------------------+-----------+ .. rst-class:: classref-section-separator @@ -57,7 +59,9 @@ Property Descriptions - |void| **set_height**\ (\ value\: :ref:`float`\ ) - :ref:`float` **get_height**\ (\ ) -The capsule's height. +The capsule's full height, including the hemispheres. + +\ **Note:** The :ref:`height` of a capsule must be at least twice its :ref:`radius`. Otherwise, the capsule becomes a sphere. If the :ref:`height` is less than twice the :ref:`radius`, the properties adjust to a valid value. .. rst-class:: classref-item-separator @@ -80,6 +84,23 @@ If ``true``, the collision acts to trap the joint within the collision. ---- +.. _class_SpringBoneCollisionCapsule3D_property_mid_height: + +.. rst-class:: classref-property + +:ref:`float` **mid_height** :ref:`🔗` + +.. rst-class:: classref-property-setget + +- |void| **set_mid_height**\ (\ value\: :ref:`float`\ ) +- :ref:`float` **get_mid_height**\ (\ ) + +The capsule's height, excluding the hemispheres. This is the height of the central cylindrical part in the middle of the capsule, and is the distance between the centers of the two hemispheres. This is a wrapper for :ref:`height`. + +.. rst-class:: classref-item-separator + +---- + .. _class_SpringBoneCollisionCapsule3D_property_radius: .. rst-class:: classref-property @@ -93,7 +114,10 @@ If ``true``, the collision acts to trap the joint within the collision. The capsule's radius. +\ **Note:** The :ref:`radius` of a capsule cannot be greater than half of its :ref:`height`. Otherwise, the capsule becomes a sphere. If the :ref:`radius` is greater than half of the :ref:`height`, the properties adjust to a valid value. + .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_springbonecollisionplane3d.rst b/classes/class_springbonecollisionplane3d.rst index 3934eb06e..d6cea5aae 100644 --- a/classes/class_springbonecollisionplane3d.rst +++ b/classes/class_springbonecollisionplane3d.rst @@ -12,16 +12,17 @@ SpringBoneCollisionPlane3D **Inherits:** :ref:`SpringBoneCollision3D` **<** :ref:`Node3D` **<** :ref:`Node` **<** :ref:`Object` -A infinite plane collision that interacts with :ref:`SpringBoneSimulator3D`. +An infinite plane collision that interacts with :ref:`SpringBoneSimulator3D`. .. rst-class:: classref-introduction-group Description ----------- -A infinite plane collision that interacts with :ref:`SpringBoneSimulator3D`. It is an infinite size XZ plane, and the +Y direction is treated as normal. +An infinite plane collision that interacts with :ref:`SpringBoneSimulator3D`. It is an infinite size XZ plane, and the +Y direction is treated as normal. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |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.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_springbonecollisionsphere3d.rst b/classes/class_springbonecollisionsphere3d.rst index 9944233dc..425e1d89b 100644 --- a/classes/class_springbonecollisionsphere3d.rst +++ b/classes/class_springbonecollisionsphere3d.rst @@ -75,6 +75,7 @@ If ``true``, the collision acts to trap the joint within the collision. The sphere's radius. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_springbonesimulator3d.rst b/classes/class_springbonesimulator3d.rst index 258acdb04..2cae166c7 100644 --- a/classes/class_springbonesimulator3d.rst +++ b/classes/class_springbonesimulator3d.rst @@ -41,9 +41,11 @@ Properties .. table:: :widths: auto - +-----------------------+--------------------------------------------------------------------------+-------+ - | :ref:`int` | :ref:`setting_count` | ``0`` | - +-----------------------+--------------------------------------------------------------------------+-------+ + +-------------------------------+----------------------------------------------------------------------------+----------------------+ + | :ref:`Vector3` | :ref:`external_force` | ``Vector3(0, 0, 0)`` | + +-------------------------------+----------------------------------------------------------------------------+----------------------+ + | :ref:`int` | :ref:`setting_count` | ``0`` | + +-------------------------------+----------------------------------------------------------------------------+----------------------+ .. rst-class:: classref-reftable-group @@ -112,6 +114,8 @@ Methods +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`RotationAxis` | :ref:`get_joint_rotation_axis`\ (\ index\: :ref:`int`, joint\: :ref:`int`\ ) |const| | +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Vector3` | :ref:`get_joint_rotation_axis_vector`\ (\ index\: :ref:`int`, joint\: :ref:`int`\ ) |const| | + +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`float` | :ref:`get_joint_stiffness`\ (\ index\: :ref:`int`, joint\: :ref:`int`\ ) |const| | +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`float` | :ref:`get_radius`\ (\ index\: :ref:`int`\ ) |const| | @@ -124,6 +128,8 @@ Methods +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`RotationAxis` | :ref:`get_rotation_axis`\ (\ index\: :ref:`int`\ ) |const| | +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Vector3` | :ref:`get_rotation_axis_vector`\ (\ index\: :ref:`int`\ ) |const| | + +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`float` | :ref:`get_stiffness`\ (\ index\: :ref:`int`\ ) |const| | +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`Curve` | :ref:`get_stiffness_damping_curve`\ (\ index\: :ref:`int`\ ) |const| | @@ -184,6 +190,8 @@ Methods +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`set_joint_rotation_axis`\ (\ index\: :ref:`int`, joint\: :ref:`int`, axis\: :ref:`RotationAxis`\ ) | +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_joint_rotation_axis_vector`\ (\ index\: :ref:`int`, joint\: :ref:`int`, vector\: :ref:`Vector3`\ ) | + +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`set_joint_stiffness`\ (\ index\: :ref:`int`, joint\: :ref:`int`, stiffness\: :ref:`float`\ ) | +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`set_radius`\ (\ index\: :ref:`int`, radius\: :ref:`float`\ ) | @@ -196,6 +204,8 @@ Methods +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`set_rotation_axis`\ (\ index\: :ref:`int`, axis\: :ref:`RotationAxis`\ ) | +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_rotation_axis_vector`\ (\ index\: :ref:`int`, vector\: :ref:`Vector3`\ ) | + +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`set_stiffness`\ (\ index\: :ref:`int`, stiffness\: :ref:`float`\ ) | +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`set_stiffness_damping_curve`\ (\ index\: :ref:`int`, curve\: :ref:`Curve`\ ) | @@ -352,6 +362,14 @@ Enumerated value for the rotation of the Z axis. Enumerated value for the unconstrained rotation. +.. _class_SpringBoneSimulator3D_constant_ROTATION_AXIS_CUSTOM: + +.. rst-class:: classref-enumeration-constant + +:ref:`RotationAxis` **ROTATION_AXIS_CUSTOM** = ``4`` + +Enumerated value for an optional rotation axis. See also :ref:`set_joint_rotation_axis_vector()`. + .. rst-class:: classref-section-separator ---- @@ -361,6 +379,25 @@ Enumerated value for the unconstrained rotation. Property Descriptions --------------------- +.. _class_SpringBoneSimulator3D_property_external_force: + +.. rst-class:: classref-property + +:ref:`Vector3` **external_force** = ``Vector3(0, 0, 0)`` :ref:`🔗` + +.. rst-class:: classref-property-setget + +- |void| **set_external_force**\ (\ value\: :ref:`Vector3`\ ) +- :ref:`Vector3` **get_external_force**\ (\ ) + +The constant force that always affected bones. It is equal to the result when the parent :ref:`Skeleton3D` moves at this speed in the opposite direction. + +This is useful for effects such as wind and anti-gravity. + +.. rst-class:: classref-item-separator + +---- + .. _class_SpringBoneSimulator3D_property_setting_count: .. rst-class:: classref-property @@ -389,7 +426,7 @@ Method Descriptions :ref:`bool` **are_all_child_collisions_enabled**\ (\ index\: :ref:`int`\ ) |const| :ref:`🔗` -Returns ``true`` if the all child :ref:`SpringBoneCollision3D`\ s are contained in the collision list at ``index`` in the settings. +Returns ``true`` if all child :ref:`SpringBoneCollision3D`\ s are contained in the collision list at ``index`` in the settings. .. rst-class:: classref-item-separator @@ -731,6 +768,20 @@ Returns the rotation axis at ``joint`` in the bone chain's joint list. ---- +.. _class_SpringBoneSimulator3D_method_get_joint_rotation_axis_vector: + +.. rst-class:: classref-method + +:ref:`Vector3` **get_joint_rotation_axis_vector**\ (\ index\: :ref:`int`, joint\: :ref:`int`\ ) |const| :ref:`🔗` + +Returns the rotation axis vector for the specified joint in the bone chain. This vector represents the axis around which the joint can rotate. It is determined based on the rotation axis set for the joint. + +If :ref:`get_joint_rotation_axis()` is :ref:`ROTATION_AXIS_ALL`, this method returns ``Vector3(0, 0, 0)``. + +.. rst-class:: classref-item-separator + +---- + .. _class_SpringBoneSimulator3D_method_get_joint_stiffness: .. rst-class:: classref-method @@ -803,6 +854,20 @@ Returns the rotation axis of the bone chain. ---- +.. _class_SpringBoneSimulator3D_method_get_rotation_axis_vector: + +.. rst-class:: classref-method + +:ref:`Vector3` **get_rotation_axis_vector**\ (\ index\: :ref:`int`\ ) |const| :ref:`🔗` + +Returns the rotation axis vector of the bone chain. This vector represents the axis around which the bone chain can rotate. It is determined based on the rotation axis set for the bone chain. + +If :ref:`get_rotation_axis()` is :ref:`ROTATION_AXIS_ALL`, this method returns ``Vector3(0, 0, 0)``. + +.. rst-class:: classref-item-separator + +---- + .. _class_SpringBoneSimulator3D_method_get_stiffness: .. rst-class:: classref-method @@ -975,9 +1040,9 @@ Sets the drag force damping curve of the bone chain. |void| **set_enable_all_child_collisions**\ (\ index\: :ref:`int`, enabled\: :ref:`bool`\ ) :ref:`🔗` -If sets ``enabled`` to ``true``, the all child :ref:`SpringBoneCollision3D`\ s are collided and :ref:`set_exclude_collision_path()` is enabled as an exclusion list at ``index`` in the settings. +If ``enabled`` is ``true``, all child :ref:`SpringBoneCollision3D`\ s are colliding and :ref:`set_exclude_collision_path()` is enabled as an exclusion list at ``index`` in the settings. -If sets ``enabled`` to ``false``, you need to manually register all valid collisions with :ref:`set_collision_path()`. +If ``enabled`` is ``false``, you need to manually register all valid collisions with :ref:`set_collision_path()`. .. rst-class:: classref-item-separator @@ -1183,6 +1248,26 @@ Sets the joint radius at ``joint`` in the bone chain's joint list when :ref:`is_ Sets the rotation axis at ``joint`` in the bone chain's joint list when :ref:`is_config_individual()` is ``true``. +The axes are based on the :ref:`Skeleton3D.get_bone_rest()`'s space, if ``axis`` is :ref:`ROTATION_AXIS_CUSTOM`, you can specify any axis. + +\ **Note:** The rotation axis and the forward vector shouldn't be colinear to avoid unintended rotation since **SpringBoneSimulator3D** does not factor in twisting forces. + +.. rst-class:: classref-item-separator + +---- + +.. _class_SpringBoneSimulator3D_method_set_joint_rotation_axis_vector: + +.. rst-class:: classref-method + +|void| **set_joint_rotation_axis_vector**\ (\ index\: :ref:`int`, joint\: :ref:`int`, vector\: :ref:`Vector3`\ ) :ref:`🔗` + +Sets the rotation axis vector for the specified joint in the bone chain. + +This vector is normalized by an internal process and represents the axis around which the bone chain can rotate. + +If the vector length is ``0``, it is considered synonymous with :ref:`ROTATION_AXIS_ALL`. + .. rst-class:: classref-item-separator ---- @@ -1255,11 +1340,27 @@ Sets the root bone name of the bone chain. |void| **set_rotation_axis**\ (\ index\: :ref:`int`, axis\: :ref:`RotationAxis`\ ) :ref:`🔗` -Sets the rotation axis of the bone chain. If sets a specific axis, it acts like a hinge joint. +Sets the rotation axis of the bone chain. If set to a specific axis, it acts like a hinge joint. The value is cached in each joint setting in the joint list. -The value is cached in each joint setting in the joint list. +The axes are based on the :ref:`Skeleton3D.get_bone_rest()`'s space, if ``axis`` is :ref:`ROTATION_AXIS_CUSTOM`, you can specify any axis. -\ **Note:** The rotation axis and the forward vector shouldn't be colinear to avoid unintended rotation since **SpringBoneSimulator3D** does not factor in twisting forces. +\ **Note:** The rotation axis vector and the forward vector shouldn't be colinear to avoid unintended rotation since **SpringBoneSimulator3D** does not factor in twisting forces. + +.. rst-class:: classref-item-separator + +---- + +.. _class_SpringBoneSimulator3D_method_set_rotation_axis_vector: + +.. rst-class:: classref-method + +|void| **set_rotation_axis_vector**\ (\ index\: :ref:`int`, vector\: :ref:`Vector3`\ ) :ref:`🔗` + +Sets the rotation axis vector of the bone chain. The value is cached in each joint setting in the joint list. + +This vector is normalized by an internal process and represents the axis around which the bone chain can rotate. + +If the vector length is ``0``, it is considered synonymous with :ref:`ROTATION_AXIS_ALL`. .. rst-class:: classref-item-separator @@ -1290,6 +1391,7 @@ The value is scaled by :ref:`set_stiffness_damping_curve()`.y in Sprite2D, the sprite moves downward on screen (i.e., +Y is down). + .. rst-class:: classref-item-separator ---- @@ -248,6 +250,8 @@ The texture's drawing offset. If ``true``, texture is cut from a larger atlas texture. See :ref:`region_rect`. +\ **Note:** When using a custom :ref:`Shader` on a **Sprite2D**, the ``UV`` shader built-in will refer to the entire texture space. Use the ``REGION_RECT`` built-in to get the currently visible region defined in :ref:`region_rect` instead. See :doc:`CanvasItem shaders <../tutorials/shaders/shader_reference/canvas_item_shader>` for details. + .. rst-class:: classref-item-separator ---- @@ -378,6 +382,7 @@ Returns ``true``, if the pixel at the given position is opaque and ``false`` in \ **Note:** It also returns ``false``, if the sprite's texture is ``null`` or if the given position is invalid. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_sprite3d.rst b/classes/class_sprite3d.rst index 30972f22d..57ba60f59 100644 --- a/classes/class_sprite3d.rst +++ b/classes/class_sprite3d.rst @@ -199,6 +199,7 @@ The region of the atlas texture to display. :ref:`region_enabled` is adjusted so that the same visual frame is maintained (same row and column). If that's impossible, :ref:`frame` is reset to ``0``. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_spritebase3d.rst b/classes/class_spritebase3d.rst index b3f7c82d3..b904b2364 100644 --- a/classes/class_spritebase3d.rst +++ b/classes/class_spritebase3d.rst @@ -233,7 +233,7 @@ Threshold at which antialiasing will be applied on the alpha channel. - |void| **set_alpha_antialiasing**\ (\ value\: :ref:`AlphaAntiAliasing`\ ) - :ref:`AlphaAntiAliasing` **get_alpha_antialiasing**\ (\ ) -The type of alpha antialiasing to apply. See :ref:`AlphaAntiAliasing`. +The type of alpha antialiasing to apply. .. rst-class:: classref-item-separator @@ -250,7 +250,7 @@ The type of alpha antialiasing to apply. See :ref:`AlphaAntiAliasing`\ ) - :ref:`AlphaCutMode` **get_alpha_cut_mode**\ (\ ) -The alpha cutting mode to use for the sprite. See :ref:`AlphaCutMode` for possible values. +The alpha cutting mode to use for the sprite. .. rst-class:: classref-item-separator @@ -318,7 +318,7 @@ The direction in which the front of the texture faces. - |void| **set_billboard_mode**\ (\ value\: :ref:`BillboardMode`\ ) - :ref:`BillboardMode` **get_billboard_mode**\ (\ ) -The billboard mode to use for the sprite. See :ref:`BillboardMode` for possible values. +The billboard mode to use for the sprite. \ **Note:** When billboarding is enabled and the material also casts shadows, billboards will face **the** camera in the scene when rendering shadows. In scenes with multiple cameras, the intended shadow cannot be determined and this will result in undefined behavior. See `GitHub Pull Request #72638 `__ for details. @@ -371,7 +371,7 @@ If ``true``, texture can be seen from the back as well, if ``false``, it is invi - |void| **set_draw_flag**\ (\ flag\: :ref:`DrawFlags`, enabled\: :ref:`bool`\ ) - :ref:`bool` **get_draw_flag**\ (\ flag\: :ref:`DrawFlags`\ ) |const| -If ``true``, the label is rendered at the same size regardless of distance. +If ``true``, the texture is rendered at the same size regardless of distance. The texture's size on screen is the same as if the camera was ``1.0`` units away from the texture's origin, regardless of the actual distance from the camera. The :ref:`Camera3D`'s field of view (or :ref:`Camera3D.size` when in orthogonal/frustum mode) still affects the size the sprite is drawn at. .. rst-class:: classref-item-separator @@ -462,6 +462,8 @@ If ``true``, depth testing is disabled and the object will be drawn in render or The texture's drawing offset. +\ **Note:** When you increase :ref:`offset`.y in Sprite3D, the sprite moves upward in world space (i.e., +Y is up). + .. rst-class:: classref-item-separator ---- @@ -532,7 +534,7 @@ If ``true``, the :ref:`Light3D` in the :ref:`Environment`\ ) - :ref:`TextureFilter` **get_texture_filter**\ (\ ) -Filter flags for the texture. See :ref:`TextureFilter` for options. +Filter flags for the texture. \ **Note:** Linear filtering may cause artifacts around the edges, which are especially noticeable on opaque textures. To prevent this, use textures with transparent or identical colors around the edges. @@ -604,9 +606,10 @@ Returns the rectangle representing this sprite. |void| **set_draw_flag**\ (\ flag\: :ref:`DrawFlags`, enabled\: :ref:`bool`\ ) :ref:`🔗` -If ``true``, the specified flag will be enabled. See :ref:`DrawFlags` for a list of flags. +If ``true``, the specified flag will be enabled. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_spriteframes.rst b/classes/class_spriteframes.rst index 8298ba514..130f3b428 100644 --- a/classes/class_spriteframes.rst +++ b/classes/class_spriteframes.rst @@ -295,6 +295,7 @@ Sets the speed for the ``anim`` animation in frames per second. Sets the ``texture`` and the ``duration`` of the frame ``idx`` in the ``anim`` animation. ``duration`` specifies the relative duration, see :ref:`get_frame_duration()` for details. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_standardmaterial3d.rst b/classes/class_standardmaterial3d.rst index e38a139b4..26b0f7284 100644 --- a/classes/class_standardmaterial3d.rst +++ b/classes/class_standardmaterial3d.rst @@ -29,6 +29,7 @@ Tutorials - :doc:`Standard Material 3D and ORM Material 3D <../tutorials/3d/standard_material_3d>` .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_staticbody2d.rst b/classes/class_staticbody2d.rst index 0c82395dd..2d21ee80b 100644 --- a/classes/class_staticbody2d.rst +++ b/classes/class_staticbody2d.rst @@ -27,6 +27,15 @@ When **StaticBody2D** is moved, it is teleported to its new position without aff \ **StaticBody2D** is useful for completely static objects like floors and walls, as well as moving surfaces like conveyor belts and circular revolving platforms (by using :ref:`constant_linear_velocity` and :ref:`constant_angular_velocity`). +.. rst-class:: classref-introduction-group + +Tutorials +--------- + +- :doc:`Physics introduction <../tutorials/physics/physics_introduction>` + +- :doc:`Troubleshooting physics issues <../tutorials/physics/troubleshooting_physics_issues>` + .. rst-class:: classref-reftable-group Properties @@ -102,6 +111,7 @@ The physics material override for the body. If a material is assigned to this property, it will be used instead of any other physics material, such as an inherited one. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_staticbody3d.rst b/classes/class_staticbody3d.rst index 8bf936497..67e68a4e4 100644 --- a/classes/class_staticbody3d.rst +++ b/classes/class_staticbody3d.rst @@ -32,6 +32,10 @@ When **StaticBody3D** is moved, it is teleported to its new position without aff Tutorials --------- +- :doc:`Physics introduction <../tutorials/physics/physics_introduction>` + +- :doc:`Troubleshooting physics issues <../tutorials/physics/troubleshooting_physics_issues>` + - `3D Physics Tests Demo `__ - `Third Person Shooter (TPS) Demo `__ @@ -113,6 +117,7 @@ The physics material override for the body. If a material is assigned to this property, it will be used instead of any other physics material, such as an inherited one. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_statusindicator.rst b/classes/class_statusindicator.rst index b490a065a..73764a510 100644 --- a/classes/class_statusindicator.rst +++ b/classes/class_statusindicator.rst @@ -159,6 +159,7 @@ Method Descriptions Returns the status indicator rectangle in screen coordinates. If this status indicator is not visible, returns an empty :ref:`Rect2`. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_streampeer.rst b/classes/class_streampeer.rst index f59119718..aca0f14cc 100644 --- a/classes/class_streampeer.rst +++ b/classes/class_streampeer.rst @@ -258,7 +258,7 @@ Gets a half-precision float from the stream. :ref:`Array` **get_partial_data**\ (\ bytes\: :ref:`int`\ ) :ref:`🔗` -Returns a chunk data with the received bytes. The number of bytes to be received can be requested in the "bytes" argument. If not enough bytes are available, the function will return how many were actually received. This function returns two values, an :ref:`Error` code, and a data array. +Returns a chunk data with the received bytes. The number of bytes to be received can be requested in the ``bytes`` argument. If not enough bytes are available, the function will return how many were actually received. This function returns two values: an :ref:`Error` code and a data array. .. rst-class:: classref-item-separator @@ -573,6 +573,7 @@ Puts a Variant into the stream. If ``full_objects`` is ``true`` encoding objects Internally, this uses the same encoding mechanism as the :ref:`@GlobalScope.var_to_bytes()` method. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_streampeerbuffer.rst b/classes/class_streampeerbuffer.rst index 909083fa8..2f3f32ec4 100644 --- a/classes/class_streampeerbuffer.rst +++ b/classes/class_streampeerbuffer.rst @@ -159,6 +159,7 @@ Resizes the :ref:`data_array`. This Moves the cursor to the specified position. ``position`` must be a valid index of :ref:`data_array`. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_streampeerextension.rst b/classes/class_streampeerextension.rst index 80012860d..715aad48f 100644 --- a/classes/class_streampeerextension.rst +++ b/classes/class_streampeerextension.rst @@ -14,7 +14,7 @@ StreamPeerExtension .. container:: contribute - There is currently no description for this class. Please help us by :ref:`contributing one `! + There is currently no description for this class. Please help us by `contributing one `__! .. rst-class:: classref-reftable-group @@ -25,7 +25,7 @@ Methods :widths: auto +---------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`_get_available_bytes`\ (\ ) |virtual| |const| | + | :ref:`int` | :ref:`_get_available_bytes`\ (\ ) |virtual| |required| |const| | +---------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`Error` | :ref:`_get_data`\ (\ r_buffer\: ``uint8_t*``, r_bytes\: :ref:`int`, r_received\: ``int32_t*``\ ) |virtual| | +---------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ @@ -49,11 +49,11 @@ Method Descriptions .. rst-class:: classref-method -:ref:`int` **_get_available_bytes**\ (\ ) |virtual| |const| :ref:`🔗` +:ref:`int` **_get_available_bytes**\ (\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -67,7 +67,7 @@ Method Descriptions .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -81,7 +81,7 @@ Method Descriptions .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -95,7 +95,7 @@ Method Descriptions .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -109,9 +109,10 @@ Method Descriptions .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_streampeergzip.rst b/classes/class_streampeergzip.rst index 8870bb807..c13102eb5 100644 --- a/classes/class_streampeergzip.rst +++ b/classes/class_streampeergzip.rst @@ -70,7 +70,9 @@ Clears this stream, resetting the internal state. :ref:`Error` **finish**\ (\ ) :ref:`🔗` -Finalizes the stream, compressing or decompressing any buffered chunk left. +Finalizes the stream, compressing any buffered chunk left. + +You must call it only when you are compressing. .. rst-class:: classref-item-separator @@ -97,6 +99,7 @@ Start the stream in compression mode with the given ``buffer_size``, if ``use_de Start the stream in decompression mode with the given ``buffer_size``, if ``use_deflate`` is ``true`` uses deflate instead of GZIP. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_streampeertcp.rst b/classes/class_streampeertcp.rst index 55bb3e140..808446aa5 100644 --- a/classes/class_streampeertcp.rst +++ b/classes/class_streampeertcp.rst @@ -187,7 +187,7 @@ Returns the local port to which this peer is bound. :ref:`Status` **get_status**\ (\ ) |const| :ref:`🔗` -Returns the status of the connection, see :ref:`Status`. +Returns the status of the connection. .. rst-class:: classref-item-separator @@ -216,6 +216,7 @@ If ``enabled`` is ``true``, packets will be sent immediately. If ``enabled`` is \ **Note:** It's recommended to leave this disabled for applications that send large packets or need to transfer a lot of data, as enabling this can decrease the total available bandwidth. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_streampeertls.rst b/classes/class_streampeertls.rst index d5b2ae6ff..ac863a205 100644 --- a/classes/class_streampeertls.rst +++ b/classes/class_streampeertls.rst @@ -158,7 +158,7 @@ Disconnects from host. :ref:`Status` **get_status**\ (\ ) |const| :ref:`🔗` -Returns the status of the connection. See :ref:`Status` for values. +Returns the status of the connection. .. rst-class:: classref-item-separator @@ -185,6 +185,7 @@ Returns the underlying :ref:`StreamPeer` connection, used in : Poll the connection to check for incoming bytes. Call this right before :ref:`StreamPeer.get_available_bytes()` for it to work properly. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_string.rst b/classes/class_string.rst index f34bc3b60..8228150af 100644 --- a/classes/class_string.rst +++ b/classes/class_string.rst @@ -77,7 +77,7 @@ Methods +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`casecmp_to`\ (\ to\: :ref:`String`\ ) |const| | +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`String` | :ref:`chr`\ (\ char\: :ref:`int`\ ) |static| | + | :ref:`String` | :ref:`chr`\ (\ code\: :ref:`int`\ ) |static| | +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`contains`\ (\ what\: :ref:`String`\ ) |const| | +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ @@ -195,12 +195,20 @@ Methods +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`String` | :ref:`pad_zeros`\ (\ digits\: :ref:`int`\ ) |const| | +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`String` | :ref:`path_join`\ (\ file\: :ref:`String`\ ) |const| | + | :ref:`String` | :ref:`path_join`\ (\ path\: :ref:`String`\ ) |const| | + +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`remove_char`\ (\ what\: :ref:`int`\ ) |const| | + +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`remove_chars`\ (\ chars\: :ref:`String`\ ) |const| | +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`String` | :ref:`repeat`\ (\ count\: :ref:`int`\ ) |const| | +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`String` | :ref:`replace`\ (\ what\: :ref:`String`, forwhat\: :ref:`String`\ ) |const| | +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`replace_char`\ (\ key\: :ref:`int`, with\: :ref:`int`\ ) |const| | + +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`replace_chars`\ (\ keys\: :ref:`String`, with\: :ref:`int`\ ) |const| | + +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`String` | :ref:`replacen`\ (\ what\: :ref:`String`, forwhat\: :ref:`String`\ ) |const| | +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`String` | :ref:`reverse`\ (\ ) |const| | @@ -247,8 +255,12 @@ Methods +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`to_int`\ (\ ) |const| | +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`to_kebab_case`\ (\ ) |const| | + +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`String` | :ref:`to_lower`\ (\ ) |const| | +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`PackedByteArray` | :ref:`to_multibyte_char_buffer`\ (\ encoding\: :ref:`String` = ""\ ) |const| | + +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`String` | :ref:`to_pascal_case`\ (\ ) |const| | +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`String` | :ref:`to_snake_case`\ (\ ) |const| | @@ -273,6 +285,8 @@ Methods +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`String` | :ref:`uri_encode`\ (\ ) |const| | +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`uri_file_decode`\ (\ ) |const| | + +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`String` | :ref:`validate_filename`\ (\ ) |const| | +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`String` | :ref:`validate_node_name`\ (\ ) |const| | @@ -492,7 +506,7 @@ Changes the appearance of the string: replaces underscores (``_``) with spaces, Performs a case-sensitive comparison to another string. Returns ``-1`` if less than, ``1`` if greater than, or ``0`` if equal. "Less than" and "greater than" are determined by the `Unicode code points `__ of each string, which roughly matches the alphabetical order. -With different string lengths, returns ``1`` if this string is longer than the ``to`` string, or ``-1`` if shorter. Note that the length of empty strings is *always* ``0``. +If the character comparison reaches the end of one string, but the other string contains more characters, then it will use length as the deciding factor: ``1`` will be returned if this string is longer than the ``to`` string, or ``-1`` if shorter. Note that the length of empty strings is always ``0``. To get a :ref:`bool` result from a string comparison, use the ``==`` operator instead. See also :ref:`nocasecmp_to()`, :ref:`filecasecmp_to()`, and :ref:`naturalcasecmp_to()`. @@ -504,15 +518,17 @@ To get a :ref:`bool` result from a string comparison, use the ``==`` .. rst-class:: classref-method -:ref:`String` **chr**\ (\ char\: :ref:`int`\ ) |static| :ref:`🔗` +:ref:`String` **chr**\ (\ code\: :ref:`int`\ ) |static| :ref:`🔗` -Returns a single Unicode character from the decimal ``char``. You may use `unicodelookup.com `__ or `unicode.org `__ as points of reference. +Returns a single Unicode character from the integer ``code``. You may use `unicodelookup.com `__ or `unicode.org `__ as points of reference. :: print(String.chr(65)) # Prints "A" print(String.chr(129302)) # Prints "🤖" (robot face emoji) +See also :ref:`unicode_at()`, :ref:`@GDScript.char()`, and :ref:`@GDScript.ord()`. + .. rst-class:: classref-item-separator ---- @@ -663,7 +679,7 @@ Returns the index of the **first** occurrence of ``what`` in this string, or ``- .. code-tab:: gdscript print("Team".find("I")) # Prints -1 - + print("Potato".find("t")) # Prints 2 print("Potato".find("t", 3)) # Prints 4 print("Potato".find("t", 5)) # Prints -1 @@ -671,7 +687,7 @@ Returns the index of the **first** occurrence of ``what`` in this string, or ``- .. code-tab:: csharp GD.Print("Team".Find("I")); // Prints -1 - + GD.Print("Potato".Find("t")); // Prints 2 GD.Print("Potato".Find("t", 3)); // Prints 4 GD.Print("Potato".Find("t", 5)); // Prints -1 @@ -711,7 +727,7 @@ Formats the string by replacing all occurrences of ``placeholder`` with the elem # Prints "Waiting for Godot is a play by Samuel Beckett, and Godot Engine is named after it." var use_array_values = "Waiting for {0} is a play by {1}, and {0} Engine is named after it." print(use_array_values.format(["Godot", "Samuel Beckett"])) - + # Prints "User 42 is Godot." print("User {id} is {name}.".format({"id": 42, "name": "Godot"})) @@ -794,7 +810,7 @@ If the string is a valid file name or path, returns the file extension without t var b = "cool.txt".get_extension() # b is "txt" var c = "cool.font.tres".get_extension() # c is "tres" var d = ".pack1".get_extension() # d is "pack1" - + var e = "file.txt.".get_extension() # e is "" var f = "file.txt..".get_extension() # f is "" var g = "txt".get_extension() # g is "" @@ -893,13 +909,13 @@ Decodes a hexadecimal string as a :ref:`PackedByteArray`. var text = "hello world" var encoded = text.to_utf8_buffer().hex_encode() # outputs "68656c6c6f20776f726c64" - print(buf.hex_decode().get_string_from_utf8()) + print(encoded.hex_decode().get_string_from_utf8()) .. code-tab:: csharp var text = "hello world"; var encoded = text.ToUtf8Buffer().HexEncode(); // outputs "68656c6c6f20776f726c64" - GD.Print(buf.HexDecode().GetStringFromUtf8()); + GD.Print(encoded.HexDecode().GetStringFromUtf8()); @@ -1018,12 +1034,12 @@ Returns ``true`` if the string is a path, and its starting point is dependent on :ref:`bool` **is_subsequence_of**\ (\ text\: :ref:`String`\ ) |const| :ref:`🔗` -Returns ``true`` if all characters of this string can be found in ``text`` in their original order. +Returns ``true`` if all characters of this string can be found in ``text`` in their original order. This is not the same as :ref:`contains()`. :: var text = "Wow, incredible!" - + print("inedible".is_subsequence_of(text)) # Prints true print("Word!".is_subsequence_of(text)) # Prints true print("Window".is_subsequence_of(text)) # Prints false @@ -1039,7 +1055,7 @@ Returns ``true`` if all characters of this string can be found in ``text`` in th :ref:`bool` **is_subsequence_ofn**\ (\ text\: :ref:`String`\ ) |const| :ref:`🔗` -Returns ``true`` if all characters of this string can be found in ``text`` in their original order, **ignoring case**. +Returns ``true`` if all characters of this string can be found in ``text`` in their original order, **ignoring case**. This is not the same as :ref:`containsn()`. .. rst-class:: classref-item-separator @@ -1072,7 +1088,7 @@ See also :ref:`is_valid_unicode_identifier()` **is_valid_filename**\ (\ ) |const| :ref:`🔗` -Returns ``true`` if this string does not contain characters that are not allowed in file names (``:`` ``/`` ``\`` ``?`` ``*`` ``"`` ``|`` ``%`` ``<`` ``>``). +Returns ``true`` if this string is a valid file name. A valid file name cannot be empty, begin or end with space characters, or contain characters that are not allowed (``:`` ``/`` ``\`` ``?`` ``*`` ``"`` ``|`` ``%`` ``<`` ``>``). .. rst-class:: classref-item-separator @@ -1112,7 +1128,7 @@ If ``with_prefix`` is ``true``, the hexadecimal number needs to prefixed by ``"0 print("A08E".is_valid_hex_number()) # Prints true print("-AbCdEf".is_valid_hex_number()) # Prints true print("2.5".is_valid_hex_number()) # Prints false - + print("0xDEADC0DE".is_valid_hex_number(true)) # Prints true .. rst-class:: classref-item-separator @@ -1225,14 +1241,14 @@ Returns the concatenation of ``parts``' elements, with each element separated by .. code-tab:: gdscript var fruits = ["Apple", "Orange", "Pear", "Kiwi"] - + print(", ".join(fruits)) # Prints "Apple, Orange, Pear, Kiwi" print("---".join(fruits)) # Prints "Apple---Orange---Pear---Kiwi" .. code-tab:: csharp string[] fruits = ["Apple", "Orange", "Pear", "Kiwi"]; - + // In C#, this method is static. GD.Print(string.Join(", ", fruits)); // Prints "Apple, Orange, Pear, Kiwi" GD.Print(string.Join("---", fruits)); // Prints "Apple---Orange---Pear---Kiwi" @@ -1368,7 +1384,7 @@ Performs a **case-sensitive**, *natural order* comparison to another string. Ret When used for sorting, natural order comparison orders sequences of numbers by the combined value of each digit as is often expected, instead of the single digit's value. A sorted sequence of numbered strings will be ``["1", "2", "3", ...]``, not ``["1", "10", "2", "3", ...]``. -With different string lengths, returns ``1`` if this string is longer than the ``to`` string, or ``-1`` if shorter. Note that the length of empty strings is *always* ``0``. +If the character comparison reaches the end of one string, but the other string contains more characters, then it will use length as the deciding factor: ``1`` will be returned if this string is longer than the ``to`` string, or ``-1`` if shorter. Note that the length of empty strings is always ``0``. To get a :ref:`bool` result from a string comparison, use the ``==`` operator instead. See also :ref:`naturalnocasecmp_to()`, :ref:`filecasecmp_to()`, and :ref:`nocasecmp_to()`. @@ -1386,7 +1402,7 @@ Performs a **case-insensitive**, *natural order* comparison to another string. R When used for sorting, natural order comparison orders sequences of numbers by the combined value of each digit as is often expected, instead of the single digit's value. A sorted sequence of numbered strings will be ``["1", "2", "3", ...]``, not ``["1", "10", "2", "3", ...]``. -With different string lengths, returns ``1`` if this string is longer than the ``to`` string, or ``-1`` if shorter. Note that the length of empty strings is *always* ``0``. +If the character comparison reaches the end of one string, but the other string contains more characters, then it will use length as the deciding factor: ``1`` will be returned if this string is longer than the ``to`` string, or ``-1`` if shorter. Note that the length of empty strings is always ``0``. To get a :ref:`bool` result from a string comparison, use the ``==`` operator instead. See also :ref:`naturalcasecmp_to()`, :ref:`filenocasecmp_to()`, and :ref:`casecmp_to()`. @@ -1402,7 +1418,7 @@ To get a :ref:`bool` result from a string comparison, use the ``==`` Performs a **case-insensitive** comparison to another string. Returns ``-1`` if less than, ``1`` if greater than, or ``0`` if equal. "Less than" or "greater than" are determined by the `Unicode code points `__ of each string, which roughly matches the alphabetical order. Internally, lowercase characters are converted to uppercase for the comparison. -With different string lengths, returns ``1`` if this string is longer than the ``to`` string, or ``-1`` if shorter. Note that the length of empty strings is *always* ``0``. +If the character comparison reaches the end of one string, but the other string contains more characters, then it will use length as the deciding factor: ``1`` will be returned if this string is longer than the ``to`` string, or ``-1`` if shorter. Note that the length of empty strings is always ``0``. To get a :ref:`bool` result from a string comparison, use the ``==`` operator instead. See also :ref:`casecmp_to()`, :ref:`filenocasecmp_to()`, and :ref:`naturalnocasecmp_to()`. @@ -1427,11 +1443,11 @@ Trailing zeros are not included in the string. The last digit is rounded, not tr String.num(3.141593) # Returns "3.141593" String.num(3.141593, 3) # Returns "3.142" String.num(3.14159300) # Returns "3.141593" - + # Here, the last digit will be rounded up, # which reduces the total digit count, since trailing zeros are removed: String.num(42.129999, 5) # Returns "42.13" - + # If `decimals` is not specified, the maximum number of significant digits is 14: String.num(-0.0000012345432123454321) # Returns "-0.00000123454321" String.num(-10000.0000012345432123454321) # Returns "-10000.0000012345" @@ -1483,7 +1499,7 @@ Converts the given ``number`` to a string representation, in scientific notation -\ **Note:** In C#, this method is not implemented. To achieve similar results, see C#'s `Standard numeric format strings `__ +\ **Note:** In C#, this method is not implemented. To achieve similar results, see C#'s `Standard numeric format strings `__. .. rst-class:: classref-item-separator @@ -1533,9 +1549,9 @@ Formats the string representing a number to have an exact number of ``digits`` * .. rst-class:: classref-method -:ref:`String` **path_join**\ (\ file\: :ref:`String`\ ) |const| :ref:`🔗` +:ref:`String` **path_join**\ (\ path\: :ref:`String`\ ) |const| :ref:`🔗` -Concatenates ``file`` at the end of the string as a subpath, adding ``/`` if necessary. +Concatenates ``path`` at the end of the string as a subpath, adding ``/`` if necessary. \ **Example:** ``"this/is".path_join("path") == "this/is/path"``. @@ -1543,6 +1559,30 @@ Concatenates ``file`` at the end of the string as a subpath, adding ``/`` if nec ---- +.. _class_String_method_remove_char: + +.. rst-class:: classref-method + +:ref:`String` **remove_char**\ (\ what\: :ref:`int`\ ) |const| :ref:`🔗` + +Removes all occurrences of the Unicode character with code ``what``. Faster version of :ref:`replace()` when the key is only one character long and the replacement is ``""``. + +.. rst-class:: classref-item-separator + +---- + +.. _class_String_method_remove_chars: + +.. rst-class:: classref-method + +:ref:`String` **remove_chars**\ (\ chars\: :ref:`String`\ ) |const| :ref:`🔗` + +Removes any occurrence of the characters in ``chars``. See also :ref:`remove_char()`. + +.. rst-class:: classref-item-separator + +---- + .. _class_String_method_repeat: .. rst-class:: classref-method @@ -1567,6 +1607,30 @@ Replaces all occurrences of ``what`` inside the string with the given ``forwhat` ---- +.. _class_String_method_replace_char: + +.. rst-class:: classref-method + +:ref:`String` **replace_char**\ (\ key\: :ref:`int`, with\: :ref:`int`\ ) |const| :ref:`🔗` + +Replaces all occurrences of the Unicode character with code ``key`` with the Unicode character with code ``with``. Faster version of :ref:`replace()` when the key is only one character long. To get a single character use ``"X".unicode_at(0)`` (note that some strings, like compound letters and emoji, can be composed of multiple unicode codepoints, and will not work with this method, use :ref:`length()` to make sure). + +.. rst-class:: classref-item-separator + +---- + +.. _class_String_method_replace_chars: + +.. rst-class:: classref-method + +:ref:`String` **replace_chars**\ (\ keys\: :ref:`String`, with\: :ref:`int`\ ) |const| :ref:`🔗` + +Replaces any occurrence of the characters in ``keys`` with the Unicode character with code ``with``. See also :ref:`replace_char()`. + +.. rst-class:: classref-item-separator + +---- + .. _class_String_method_replacen: .. rst-class:: classref-method @@ -1663,7 +1727,7 @@ If ``maxsplit`` is greater than ``0``, the number of splits may not exceed ``max var some_string = "One,Two,Three,Four" var some_array = some_string.rsplit(",", true, 1) - + print(some_array.size()) # Prints 2 print(some_array[0]) # Prints "One,Two,Three" print(some_array[1]) # Prints "Four" @@ -1794,7 +1858,7 @@ If ``maxsplit`` is greater than ``0``, the number of splits may not exceed ``max .. code-tab:: gdscript var some_array = "One,Two,Three,Four".split(",", true, 2) - + print(some_array.size()) # Prints 3 print(some_array[0]) # Prints "One" print(some_array[1]) # Prints "Two" @@ -1804,7 +1868,7 @@ If ``maxsplit`` is greater than ``0``, the number of splits may not exceed ``max // C#'s `Split()` does not support the `maxsplit` parameter. var someArray = "One,Two,Three".Split(","); - + GD.Print(someArray[0]); // Prints "One" GD.Print(someArray[1]); // Prints "Two" GD.Print(someArray[2]); // Prints "Three" @@ -1934,6 +1998,37 @@ Converts the string representing an integer number into an :ref:`int` var c = "-1.2.3".to_int() # c is -1 var d = "Hello!".to_int() # d is 0 +.. rst-class:: classref-item-separator + +---- + +.. _class_String_method_to_kebab_case: + +.. rst-class:: classref-method + +:ref:`String` **to_kebab_case**\ (\ ) |const| :ref:`🔗` + +Returns the string converted to ``kebab-case``. + +\ **Note:** Numbers followed by a *single* letter are not separated in the conversion to keep some words (such as "2D") together. + + +.. tabs:: + + .. code-tab:: gdscript + + "Node2D".to_kebab_case() # Returns "node-2d" + "2nd place".to_kebab_case() # Returns "2-nd-place" + "Texture3DAssetFolder".to_kebab_case() # Returns "texture-3d-asset-folder" + + .. code-tab:: csharp + + "Node2D".ToKebabCase(); // Returns "node-2d" + "2nd place".ToKebabCase(); // Returns "2-nd-place" + "Texture3DAssetFolder".ToKebabCase(); // Returns "texture-3d-asset-folder" + + + .. rst-class:: classref-item-separator ---- @@ -1950,6 +2045,24 @@ Returns the string converted to ``lowercase``. ---- +.. _class_String_method_to_multibyte_char_buffer: + +.. rst-class:: classref-method + +:ref:`PackedByteArray` **to_multibyte_char_buffer**\ (\ encoding\: :ref:`String` = ""\ ) |const| :ref:`🔗` + +Converts the string to system multibyte code page encoded :ref:`PackedByteArray`. If conversion fails, empty array is returned. + +The values permitted for ``encoding`` are system dependent. If ``encoding`` is empty string, system default encoding is used. + +- For Windows, see `Code Page Identifiers `__ .NET names. + +- For macOS and Linux/BSD, see ``libiconv`` library documentation and ``iconv --list`` for a list of supported encodings. + +.. rst-class:: classref-item-separator + +---- + .. _class_String_method_to_pascal_case: .. rst-class:: classref-method @@ -2085,6 +2198,8 @@ Removes the given ``suffix`` from the end of the string, or returns the string u Returns the character code at position ``at``. +See also :ref:`chr()`, :ref:`@GDScript.char()`, and :ref:`@GDScript.ord()`. + .. rst-class:: classref-item-separator ---- @@ -2112,6 +2227,8 @@ Decodes the string from its URL-encoded format. This method is meant to properly +\ **Note:** This method decodes ``+`` as space. + .. rst-class:: classref-item-separator ---- @@ -2131,18 +2248,30 @@ Encodes the string to URL-friendly format. This method is meant to properly enco var prefix = "$DOCS_URL/?highlight=" var url = prefix + "Godot Engine:docs".uri_encode() - + print(url) # Prints "$DOCS_URL/?highlight=Godot%20Engine%3%docs" .. code-tab:: csharp var prefix = "$DOCS_URL/?highlight="; var url = prefix + "Godot Engine:docs".URIEncode(); - + GD.Print(url); // Prints "$DOCS_URL/?highlight=Godot%20Engine%3%docs" +.. rst-class:: classref-item-separator + +---- + +.. _class_String_method_uri_file_decode: + +.. rst-class:: classref-method + +:ref:`String` **uri_file_decode**\ (\ ) |const| :ref:`🔗` + +Decodes the file path from its URL-encoded format. Unlike :ref:`uri_decode()` this method leaves ``+`` as is. + .. rst-class:: classref-item-separator ---- @@ -2235,7 +2364,7 @@ Formats the **String**, replacing the placeholders with one or more parameters. :: print("I caught %d fishes!" % 2) # Prints "I caught 2 fishes!" - + var my_message = "Travelling to %s, at %2.2f km/h." var location = "Deep Valley" var speed = 40.3485 @@ -2354,6 +2483,7 @@ Returns ``true`` if the left **String** comes after ``right`` in `Unicode order Returns a new **String** that only contains the character at ``index``. Indices start from ``0``. If ``index`` is greater or equal to ``0``, the character is fetched starting from the beginning of the string. If ``index`` is a negative value, it is fetched starting from the end. Accessing a string out-of-bounds will cause a run-time error, pausing the project execution if run from the editor. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_stringname.rst b/classes/class_stringname.rst index ac06d1a17..dbe1d1d6b 100644 --- a/classes/class_stringname.rst +++ b/classes/class_stringname.rst @@ -178,12 +178,20 @@ Methods +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`String` | :ref:`pad_zeros`\ (\ digits\: :ref:`int`\ ) |const| | +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`String` | :ref:`path_join`\ (\ file\: :ref:`String`\ ) |const| | + | :ref:`String` | :ref:`path_join`\ (\ path\: :ref:`String`\ ) |const| | + +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`remove_char`\ (\ what\: :ref:`int`\ ) |const| | + +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`remove_chars`\ (\ chars\: :ref:`String`\ ) |const| | +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`String` | :ref:`repeat`\ (\ count\: :ref:`int`\ ) |const| | +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`String` | :ref:`replace`\ (\ what\: :ref:`String`, forwhat\: :ref:`String`\ ) |const| | +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`replace_char`\ (\ key\: :ref:`int`, with\: :ref:`int`\ ) |const| | + +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`replace_chars`\ (\ keys\: :ref:`String`, with\: :ref:`int`\ ) |const| | + +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`String` | :ref:`replacen`\ (\ what\: :ref:`String`, forwhat\: :ref:`String`\ ) |const| | +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`String` | :ref:`reverse`\ (\ ) |const| | @@ -230,8 +238,12 @@ Methods +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`to_int`\ (\ ) |const| | +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`to_kebab_case`\ (\ ) |const| | + +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`String` | :ref:`to_lower`\ (\ ) |const| | +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`PackedByteArray` | :ref:`to_multibyte_char_buffer`\ (\ encoding\: :ref:`String` = ""\ ) |const| | + +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`String` | :ref:`to_pascal_case`\ (\ ) |const| | +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`String` | :ref:`to_snake_case`\ (\ ) |const| | @@ -256,6 +268,8 @@ Methods +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`String` | :ref:`uri_encode`\ (\ ) |const| | +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`uri_file_decode`\ (\ ) |const| | + +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`String` | :ref:`validate_filename`\ (\ ) |const| | +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`String` | :ref:`validate_node_name`\ (\ ) |const| | @@ -617,7 +631,7 @@ Returns the index of the **first** occurrence of ``what`` in this string, or ``- .. code-tab:: gdscript print("Team".find("I")) # Prints -1 - + print("Potato".find("t")) # Prints 2 print("Potato".find("t", 3)) # Prints 4 print("Potato".find("t", 5)) # Prints -1 @@ -625,7 +639,7 @@ Returns the index of the **first** occurrence of ``what`` in this string, or ``- .. code-tab:: csharp GD.Print("Team".Find("I")); // Prints -1 - + GD.Print("Potato".Find("t")); // Prints 2 GD.Print("Potato".Find("t", 3)); // Prints 4 GD.Print("Potato".Find("t", 5)); // Prints -1 @@ -665,7 +679,7 @@ Formats the string by replacing all occurrences of ``placeholder`` with the elem # Prints "Waiting for Godot is a play by Samuel Beckett, and Godot Engine is named after it." var use_array_values = "Waiting for {0} is a play by {1}, and {0} Engine is named after it." print(use_array_values.format(["Godot", "Samuel Beckett"])) - + # Prints "User 42 is Godot." print("User {id} is {name}.".format({"id": 42, "name": "Godot"})) @@ -748,7 +762,7 @@ If the string is a valid file name or path, returns the file extension without t var b = "cool.txt".get_extension() # b is "txt" var c = "cool.font.tres".get_extension() # c is "tres" var d = ".pack1".get_extension() # d is "pack1" - + var e = "file.txt.".get_extension() # e is "" var f = "file.txt..".get_extension() # f is "" var g = "txt".get_extension() # g is "" @@ -847,13 +861,13 @@ Decodes a hexadecimal string as a :ref:`PackedByteArray`. var text = "hello world" var encoded = text.to_utf8_buffer().hex_encode() # outputs "68656c6c6f20776f726c64" - print(buf.hex_decode().get_string_from_utf8()) + print(encoded.hex_decode().get_string_from_utf8()) .. code-tab:: csharp var text = "hello world"; var encoded = text.ToUtf8Buffer().HexEncode(); // outputs "68656c6c6f20776f726c64" - GD.Print(buf.HexDecode().GetStringFromUtf8()); + GD.Print(encoded.HexDecode().GetStringFromUtf8()); @@ -958,12 +972,12 @@ Returns ``true`` if the string is a path, and its starting point is dependent on :ref:`bool` **is_subsequence_of**\ (\ text\: :ref:`String`\ ) |const| :ref:`🔗` -Returns ``true`` if all characters of this string can be found in ``text`` in their original order. +Returns ``true`` if all characters of this string can be found in ``text`` in their original order. This is not the same as :ref:`contains()`. :: var text = "Wow, incredible!" - + print("inedible".is_subsequence_of(text)) # Prints true print("Word!".is_subsequence_of(text)) # Prints true print("Window".is_subsequence_of(text)) # Prints false @@ -979,7 +993,7 @@ Returns ``true`` if all characters of this string can be found in ``text`` in th :ref:`bool` **is_subsequence_ofn**\ (\ text\: :ref:`String`\ ) |const| :ref:`🔗` -Returns ``true`` if all characters of this string can be found in ``text`` in their original order, **ignoring case**. +Returns ``true`` if all characters of this string can be found in ``text`` in their original order, **ignoring case**. This is not the same as :ref:`containsn()`. .. rst-class:: classref-item-separator @@ -1012,7 +1026,7 @@ See also :ref:`is_valid_unicode_identifier()` **is_valid_filename**\ (\ ) |const| :ref:`🔗` -Returns ``true`` if this string does not contain characters that are not allowed in file names (``:`` ``/`` ``\`` ``?`` ``*`` ``"`` ``|`` ``%`` ``<`` ``>``). +Returns ``true`` if this string is a valid file name. A valid file name cannot be empty, begin or end with space characters, or contain characters that are not allowed (``:`` ``/`` ``\`` ``?`` ``*`` ``"`` ``|`` ``%`` ``<`` ``>``). .. rst-class:: classref-item-separator @@ -1052,7 +1066,7 @@ If ``with_prefix`` is ``true``, the hexadecimal number needs to prefixed by ``"0 print("A08E".is_valid_hex_number()) # Prints true print("-AbCdEf".is_valid_hex_number()) # Prints true print("2.5".is_valid_hex_number()) # Prints false - + print("0xDEADC0DE".is_valid_hex_number(true)) # Prints true .. rst-class:: classref-item-separator @@ -1165,14 +1179,14 @@ Returns the concatenation of ``parts``' elements, with each element separated by .. code-tab:: gdscript var fruits = ["Apple", "Orange", "Pear", "Kiwi"] - + print(", ".join(fruits)) # Prints "Apple, Orange, Pear, Kiwi" print("---".join(fruits)) # Prints "Apple---Orange---Pear---Kiwi" .. code-tab:: csharp string[] fruits = ["Apple", "Orange", "Pear", "Kiwi"]; - + // In C#, this method is static. GD.Print(string.Join(", ", fruits)); // Prints "Apple, Orange, Pear, Kiwi" GD.Print(string.Join("---", fruits)); // Prints "Apple---Orange---Pear---Kiwi" @@ -1378,9 +1392,9 @@ Formats the string representing a number to have an exact number of ``digits`` * .. rst-class:: classref-method -:ref:`String` **path_join**\ (\ file\: :ref:`String`\ ) |const| :ref:`🔗` +:ref:`String` **path_join**\ (\ path\: :ref:`String`\ ) |const| :ref:`🔗` -Concatenates ``file`` at the end of the string as a subpath, adding ``/`` if necessary. +Concatenates ``path`` at the end of the string as a subpath, adding ``/`` if necessary. \ **Example:** ``"this/is".path_join("path") == "this/is/path"``. @@ -1388,6 +1402,30 @@ Concatenates ``file`` at the end of the string as a subpath, adding ``/`` if nec ---- +.. _class_StringName_method_remove_char: + +.. rst-class:: classref-method + +:ref:`String` **remove_char**\ (\ what\: :ref:`int`\ ) |const| :ref:`🔗` + +Removes all occurrences of the Unicode character with code ``what``. Faster version of :ref:`replace()` when the key is only one character long and the replacement is ``""``. + +.. rst-class:: classref-item-separator + +---- + +.. _class_StringName_method_remove_chars: + +.. rst-class:: classref-method + +:ref:`String` **remove_chars**\ (\ chars\: :ref:`String`\ ) |const| :ref:`🔗` + +Removes any occurrence of the characters in ``chars``. See also :ref:`remove_char()`. + +.. rst-class:: classref-item-separator + +---- + .. _class_StringName_method_repeat: .. rst-class:: classref-method @@ -1412,6 +1450,30 @@ Replaces all occurrences of ``what`` inside the string with the given ``forwhat` ---- +.. _class_StringName_method_replace_char: + +.. rst-class:: classref-method + +:ref:`String` **replace_char**\ (\ key\: :ref:`int`, with\: :ref:`int`\ ) |const| :ref:`🔗` + +Replaces all occurrences of the Unicode character with code ``key`` with the Unicode character with code ``with``. Faster version of :ref:`replace()` when the key is only one character long. To get a single character use ``"X".unicode_at(0)`` (note that some strings, like compound letters and emoji, can be composed of multiple unicode codepoints, and will not work with this method, use :ref:`length()` to make sure). + +.. rst-class:: classref-item-separator + +---- + +.. _class_StringName_method_replace_chars: + +.. rst-class:: classref-method + +:ref:`String` **replace_chars**\ (\ keys\: :ref:`String`, with\: :ref:`int`\ ) |const| :ref:`🔗` + +Replaces any occurrence of the characters in ``keys`` with the Unicode character with code ``with``. See also :ref:`replace_char()`. + +.. rst-class:: classref-item-separator + +---- + .. _class_StringName_method_replacen: .. rst-class:: classref-method @@ -1508,7 +1570,7 @@ If ``maxsplit`` is greater than ``0``, the number of splits may not exceed ``max var some_string = "One,Two,Three,Four" var some_array = some_string.rsplit(",", true, 1) - + print(some_array.size()) # Prints 2 print(some_array[0]) # Prints "One,Two,Three" print(some_array[1]) # Prints "Four" @@ -1639,7 +1701,7 @@ If ``maxsplit`` is greater than ``0``, the number of splits may not exceed ``max .. code-tab:: gdscript var some_array = "One,Two,Three,Four".split(",", true, 2) - + print(some_array.size()) # Prints 3 print(some_array[0]) # Prints "One" print(some_array[1]) # Prints "Two" @@ -1649,7 +1711,7 @@ If ``maxsplit`` is greater than ``0``, the number of splits may not exceed ``max // C#'s `Split()` does not support the `maxsplit` parameter. var someArray = "One,Two,Three".Split(","); - + GD.Print(someArray[0]); // Prints "One" GD.Print(someArray[1]); // Prints "Two" GD.Print(someArray[2]); // Prints "Three" @@ -1779,6 +1841,37 @@ Converts the string representing an integer number into an :ref:`int` var c = "-1.2.3".to_int() # c is -1 var d = "Hello!".to_int() # d is 0 +.. rst-class:: classref-item-separator + +---- + +.. _class_StringName_method_to_kebab_case: + +.. rst-class:: classref-method + +:ref:`String` **to_kebab_case**\ (\ ) |const| :ref:`🔗` + +Returns the string converted to ``kebab-case``. + +\ **Note:** Numbers followed by a *single* letter are not separated in the conversion to keep some words (such as "2D") together. + + +.. tabs:: + + .. code-tab:: gdscript + + "Node2D".to_kebab_case() # Returns "node-2d" + "2nd place".to_kebab_case() # Returns "2-nd-place" + "Texture3DAssetFolder".to_kebab_case() # Returns "texture-3d-asset-folder" + + .. code-tab:: csharp + + "Node2D".ToKebabCase(); // Returns "node-2d" + "2nd place".ToKebabCase(); // Returns "2-nd-place" + "Texture3DAssetFolder".ToKebabCase(); // Returns "texture-3d-asset-folder" + + + .. rst-class:: classref-item-separator ---- @@ -1795,6 +1888,24 @@ Returns the string converted to ``lowercase``. ---- +.. _class_StringName_method_to_multibyte_char_buffer: + +.. rst-class:: classref-method + +:ref:`PackedByteArray` **to_multibyte_char_buffer**\ (\ encoding\: :ref:`String` = ""\ ) |const| :ref:`🔗` + +Converts the string to system multibyte code page encoded :ref:`PackedByteArray`. If conversion fails, empty array is returned. + +The values permitted for ``encoding`` are system dependent. If ``encoding`` is empty string, system default encoding is used. + +- For Windows, see `Code Page Identifiers `__ .NET names. + +- For macOS and Linux/BSD, see ``libiconv`` library documentation and ``iconv --list`` for a list of supported encodings. + +.. rst-class:: classref-item-separator + +---- + .. _class_StringName_method_to_pascal_case: .. rst-class:: classref-method @@ -1930,6 +2041,8 @@ Removes the given ``suffix`` from the end of the string, or returns the string u Returns the character code at position ``at``. +See also :ref:`String.chr()`, :ref:`@GDScript.char()`, and :ref:`@GDScript.ord()`. + .. rst-class:: classref-item-separator ---- @@ -1957,6 +2070,8 @@ Decodes the string from its URL-encoded format. This method is meant to properly +\ **Note:** This method decodes ``+`` as space. + .. rst-class:: classref-item-separator ---- @@ -1976,18 +2091,30 @@ Encodes the string to URL-friendly format. This method is meant to properly enco var prefix = "$DOCS_URL/?highlight=" var url = prefix + "Godot Engine:docs".uri_encode() - + print(url) # Prints "$DOCS_URL/?highlight=Godot%20Engine%3%docs" .. code-tab:: csharp var prefix = "$DOCS_URL/?highlight="; var url = prefix + "Godot Engine:docs".URIEncode(); - + GD.Print(url); // Prints "$DOCS_URL/?highlight=Godot%20Engine%3%docs" +.. rst-class:: classref-item-separator + +---- + +.. _class_StringName_method_uri_file_decode: + +.. rst-class:: classref-method + +:ref:`String` **uri_file_decode**\ (\ ) |const| :ref:`🔗` + +Decodes the file path from its URL-encoded format. Unlike :ref:`uri_decode()` this method leaves ``+`` as is. + .. rst-class:: classref-item-separator ---- @@ -2178,6 +2305,7 @@ Returns ``true`` if the left **StringName**'s pointer comes after ``right``. Not Returns ``true`` if the left **StringName**'s pointer comes after ``right`` or if they are the same. Note that this will not match their `Unicode order `__. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_stylebox.rst b/classes/class_stylebox.rst index b4878193d..681891a1b 100644 --- a/classes/class_stylebox.rst +++ b/classes/class_stylebox.rst @@ -51,33 +51,33 @@ Methods .. table:: :widths: auto - +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_draw`\ (\ to_canvas_item\: :ref:`RID`, rect\: :ref:`Rect2`\ ) |virtual| |const| | - +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Rect2` | :ref:`_get_draw_rect`\ (\ rect\: :ref:`Rect2`\ ) |virtual| |const| | - +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Vector2` | :ref:`_get_minimum_size`\ (\ ) |virtual| |const| | - +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`_test_mask`\ (\ point\: :ref:`Vector2`, rect\: :ref:`Rect2`\ ) |virtual| |const| | - +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`draw`\ (\ canvas_item\: :ref:`RID`, rect\: :ref:`Rect2`\ ) |const| | - +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`float` | :ref:`get_content_margin`\ (\ margin\: :ref:`Side`\ ) |const| | - +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`CanvasItem` | :ref:`get_current_item_drawn`\ (\ ) |const| | - +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`float` | :ref:`get_margin`\ (\ margin\: :ref:`Side`\ ) |const| | - +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Vector2` | :ref:`get_minimum_size`\ (\ ) |const| | - +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Vector2` | :ref:`get_offset`\ (\ ) |const| | - +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`set_content_margin`\ (\ margin\: :ref:`Side`, offset\: :ref:`float`\ ) | - +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`set_content_margin_all`\ (\ offset\: :ref:`float`\ ) | - +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`test_mask`\ (\ point\: :ref:`Vector2`, rect\: :ref:`Rect2`\ ) |const| | - +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------+ + +-------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_draw`\ (\ to_canvas_item\: :ref:`RID`, rect\: :ref:`Rect2`\ ) |virtual| |required| |const| | + +-------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Rect2` | :ref:`_get_draw_rect`\ (\ rect\: :ref:`Rect2`\ ) |virtual| |const| | + +-------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Vector2` | :ref:`_get_minimum_size`\ (\ ) |virtual| |const| | + +-------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`_test_mask`\ (\ point\: :ref:`Vector2`, rect\: :ref:`Rect2`\ ) |virtual| |const| | + +-------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`draw`\ (\ canvas_item\: :ref:`RID`, rect\: :ref:`Rect2`\ ) |const| | + +-------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`get_content_margin`\ (\ margin\: :ref:`Side`\ ) |const| | + +-------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`CanvasItem` | :ref:`get_current_item_drawn`\ (\ ) |const| | + +-------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`get_margin`\ (\ margin\: :ref:`Side`\ ) |const| | + +-------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Vector2` | :ref:`get_minimum_size`\ (\ ) |const| | + +-------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Vector2` | :ref:`get_offset`\ (\ ) |const| | + +-------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_content_margin`\ (\ margin\: :ref:`Side`, offset\: :ref:`float`\ ) | + +-------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_content_margin_all`\ (\ offset\: :ref:`float`\ ) | + +-------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`test_mask`\ (\ point\: :ref:`Vector2`, rect\: :ref:`Rect2`\ ) |const| | + +-------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------+ .. rst-class:: classref-section-separator @@ -177,11 +177,11 @@ Method Descriptions .. rst-class:: classref-method -|void| **_draw**\ (\ to_canvas_item\: :ref:`RID`, rect\: :ref:`Rect2`\ ) |virtual| |const| :ref:`🔗` +|void| **_draw**\ (\ to_canvas_item\: :ref:`RID`, rect\: :ref:`Rect2`\ ) |virtual| |required| |const| :ref:`🔗` .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -195,7 +195,7 @@ Method Descriptions .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -221,7 +221,7 @@ Virtual method to be implemented by the user. Returns a custom minimum size that .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -336,6 +336,7 @@ Sets the default margin to ``offset`` pixels for all sides. Test a position in a rectangle, return whether it passes the mask test. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_styleboxempty.rst b/classes/class_styleboxempty.rst index d4bd63143..95498a748 100644 --- a/classes/class_styleboxempty.rst +++ b/classes/class_styleboxempty.rst @@ -22,6 +22,7 @@ Description An empty :ref:`StyleBox` that can be used to display nothing instead of the default style (e.g. it can "disable" ``focus`` styles). .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_styleboxflat.rst b/classes/class_styleboxflat.rst index d722f7b2b..62ea833bd 100644 --- a/classes/class_styleboxflat.rst +++ b/classes/class_styleboxflat.rst @@ -575,7 +575,7 @@ Returns the smallest border width out of all four borders. :ref:`int` **get_corner_radius**\ (\ corner\: :ref:`Corner`\ ) |const| :ref:`🔗` -Returns the given ``corner``'s radius. See :ref:`Corner` for possible values. +Returns the given ``corner``'s radius. .. rst-class:: classref-item-separator @@ -623,7 +623,7 @@ Sets the border width to ``width`` pixels for all sides. |void| **set_corner_radius**\ (\ corner\: :ref:`Corner`, radius\: :ref:`int`\ ) :ref:`🔗` -Sets the corner radius to ``radius`` pixels for the given ``corner``. See :ref:`Corner` for possible values. +Sets the corner radius to ``radius`` pixels for the given ``corner``. .. rst-class:: classref-item-separator @@ -662,6 +662,7 @@ Sets the expand margin to ``size`` pixels for the specified :ref:`Side`\ ) - :ref:`AxisStretchMode` **get_h_axis_stretch_mode**\ (\ ) -Controls how the stylebox's texture will be stretched or tiled horizontally. See :ref:`AxisStretchMode` for possible values. +Controls how the stylebox's texture will be stretched or tiled horizontally. .. rst-class:: classref-item-separator @@ -157,7 +157,7 @@ Controls how the stylebox's texture will be stretched or tiled horizontally. See - |void| **set_v_axis_stretch_mode**\ (\ value\: :ref:`AxisStretchMode`\ ) - :ref:`AxisStretchMode` **get_v_axis_stretch_mode**\ (\ ) -Controls how the stylebox's texture will be stretched or tiled vertically. See :ref:`AxisStretchMode` for possible values. +Controls how the stylebox's texture will be stretched or tiled vertically. .. rst-class:: classref-item-separator @@ -461,6 +461,7 @@ Sets the margin to ``size`` pixels for the specified :ref:`Side` children. Propagation doesn't happen if it returns ``false``. If the function is not implemented, all events are propagated to SubViewports. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_surfacetool.rst b/classes/class_surfacetool.rst index 3a92526fd..be56f42a2 100644 --- a/classes/class_surfacetool.rst +++ b/classes/class_surfacetool.rst @@ -678,6 +678,7 @@ Specifies an optional second set of UV coordinates to use for the *next* vertex. Specifies weight values to use for the *next* vertex. ``weights`` must contain 4 values. If every vertex needs to have this information set and you fail to submit it for the first vertex, this information may not be used at all. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_syntaxhighlighter.rst b/classes/class_syntaxhighlighter.rst index 42f8589c8..895032cb1 100644 --- a/classes/class_syntaxhighlighter.rst +++ b/classes/class_syntaxhighlighter.rst @@ -160,6 +160,7 @@ Clears then updates the **SyntaxHighlighter** caches. Override :ref:`_update_cac \ **Note:** This is called automatically when the associated :ref:`TextEdit` node, updates its own cache. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_systemfont.rst b/classes/class_systemfont.rst index 7fc78bc4a..aef90c735 100644 --- a/classes/class_systemfont.rst +++ b/classes/class_systemfont.rst @@ -60,6 +60,8 @@ Properties +-----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------+-------------------------+ | :ref:`bool` | :ref:`keep_rounding_remainders` | ``true`` | +-----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------+-------------------------+ + | :ref:`bool` | :ref:`modulate_color_glyphs` | ``false`` | + +-----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------+-------------------------+ | :ref:`int` | :ref:`msdf_pixel_range` | ``16`` | +-----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------+-------------------------+ | :ref:`int` | :ref:`msdf_size` | ``48`` | @@ -269,6 +271,23 @@ If set to ``true``, when aligning glyphs to the pixel boundaries rounding remain ---- +.. _class_SystemFont_property_modulate_color_glyphs: + +.. rst-class:: classref-property + +:ref:`bool` **modulate_color_glyphs** = ``false`` :ref:`🔗` + +.. rst-class:: classref-property-setget + +- |void| **set_modulate_color_glyphs**\ (\ value\: :ref:`bool`\ ) +- :ref:`bool` **is_modulate_color_glyphs**\ (\ ) + +If set to ``true``, color modulation is applied when drawing colored glyphs, otherwise it's applied to the monochrome glyphs only. + +.. rst-class:: classref-item-separator + +---- + .. _class_SystemFont_property_msdf_pixel_range: .. rst-class:: classref-property @@ -331,7 +350,7 @@ If set to ``true``, glyphs of all sizes are rendered using single multichannel s - |void| **set_oversampling**\ (\ value\: :ref:`float`\ ) - :ref:`float` **get_oversampling**\ (\ ) -Font oversampling factor, if set to ``0.0`` global oversampling factor is used instead. +If set to a positive value, overrides the oversampling factor of the viewport this font is used in. See :ref:`Viewport.oversampling`. This value doesn't override the ``oversampling`` parameter of ``draw_*`` methods. .. rst-class:: classref-item-separator @@ -351,6 +370,7 @@ Font oversampling factor, if set to ``0.0`` global oversampling factor is used i Font glyph subpixel positioning mode. Subpixel positioning provides shaper text and better kerning for smaller font sizes, at the cost of memory usage and font rasterization speed. Use :ref:`TextServer.SUBPIXEL_POSITIONING_AUTO` to automatically enable it based on the font size. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_tabbar.rst b/classes/class_tabbar.rst index f3cb144d0..803171b88 100644 --- a/classes/class_tabbar.rst +++ b/classes/class_tabbar.rst @@ -32,6 +32,8 @@ Properties +-----------------------------------------------------------------------+-----------------------------------------------------------------------------------+---------------------------------------------------------------------+ | :ref:`bool` | :ref:`clip_tabs` | ``true`` | +-----------------------------------------------------------------------+-----------------------------------------------------------------------------------+---------------------------------------------------------------------+ + | :ref:`bool` | :ref:`close_with_middle_mouse` | ``true`` | + +-----------------------------------------------------------------------+-----------------------------------------------------------------------------------+---------------------------------------------------------------------+ | :ref:`int` | :ref:`current_tab` | ``-1`` | +-----------------------------------------------------------------------+-----------------------------------------------------------------------------------+---------------------------------------------------------------------+ | :ref:`bool` | :ref:`deselect_enabled` | ``false`` | @@ -158,6 +160,8 @@ Theme Properties +-----------------------------------+------------------------------------------------------------------------------+-------------------------------------+ | :ref:`int` | :ref:`outline_size` | ``0`` | +-----------------------------------+------------------------------------------------------------------------------+-------------------------------------+ + | :ref:`int` | :ref:`tab_separation` | ``0`` | + +-----------------------------------+------------------------------------------------------------------------------+-------------------------------------+ | :ref:`Font` | :ref:`font` | | +-----------------------------------+------------------------------------------------------------------------------+-------------------------------------+ | :ref:`int` | :ref:`font_size` | | @@ -252,7 +256,7 @@ Emitted when a tab is clicked, even if it is the current tab. **tab_close_pressed**\ (\ tab\: :ref:`int`\ ) :ref:`🔗` -Emitted when a tab's close button is pressed. +Emitted when a tab's close button is pressed or when middle-clicking on a tab, if :ref:`close_with_middle_mouse` is enabled. \ **Note:** Tabs are not removed automatically once the close button is pressed, this behavior needs to be programmed manually. For example: @@ -420,6 +424,23 @@ If ``true``, tabs overflowing this node's width will be hidden, displaying two n ---- +.. _class_TabBar_property_close_with_middle_mouse: + +.. rst-class:: classref-property + +:ref:`bool` **close_with_middle_mouse** = ``true`` :ref:`🔗` + +.. rst-class:: classref-property-setget + +- |void| **set_close_with_middle_mouse**\ (\ value\: :ref:`bool`\ ) +- :ref:`bool` **get_close_with_middle_mouse**\ (\ ) + +If ``true``, middle clicking on the mouse will fire the :ref:`tab_close_pressed` signal. + +.. rst-class:: classref-item-separator + +---- + .. _class_TabBar_property_current_tab: .. rst-class:: classref-property @@ -550,7 +571,7 @@ If ``true``, enables selecting a tab with the right mouse button. - |void| **set_tab_alignment**\ (\ value\: :ref:`AlignmentMode`\ ) - :ref:`AlignmentMode` **get_tab_alignment**\ (\ ) -Sets the position at which tabs will be placed. See :ref:`AlignmentMode` for details. +The position at which tabs will be placed. .. rst-class:: classref-item-separator @@ -567,7 +588,7 @@ Sets the position at which tabs will be placed. See :ref:`AlignmentMode`\ ) - :ref:`CloseButtonDisplayPolicy` **get_tab_close_display_policy**\ (\ ) -Sets when the close button will appear on the tabs. See :ref:`CloseButtonDisplayPolicy` for details. +When the close button will appear on the tabs. .. rst-class:: classref-item-separator @@ -1115,6 +1136,18 @@ The size of the tab text outline. ---- +.. _class_TabBar_theme_constant_tab_separation: + +.. rst-class:: classref-themeproperty + +:ref:`int` **tab_separation** = ``0`` :ref:`🔗` + +The space between tabs in the tab bar. + +.. rst-class:: classref-item-separator + +---- + .. _class_TabBar_theme_font_font: .. rst-class:: classref-themeproperty @@ -1294,6 +1327,7 @@ The style of the currently selected tab. The style of the other, unselected tabs. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_tabcontainer.rst b/classes/class_tabcontainer.rst index 00b64f330..3ffe5f18f 100644 --- a/classes/class_tabcontainer.rst +++ b/classes/class_tabcontainer.rst @@ -155,6 +155,8 @@ Theme Properties +-----------------------------------+------------------------------------------------------------------------------------+-------------------------------------+ | :ref:`int` | :ref:`side_margin` | ``8`` | +-----------------------------------+------------------------------------------------------------------------------------+-------------------------------------+ + | :ref:`int` | :ref:`tab_separation` | ``0`` | + +-----------------------------------+------------------------------------------------------------------------------------+-------------------------------------+ | :ref:`Font` | :ref:`font` | | +-----------------------------------+------------------------------------------------------------------------------------+-------------------------------------+ | :ref:`int` | :ref:`font_size` | | @@ -425,7 +427,7 @@ If ``true``, tabs can be rearranged with mouse drag. - |void| **set_tab_alignment**\ (\ value\: :ref:`AlignmentMode`\ ) - :ref:`AlignmentMode` **get_tab_alignment**\ (\ ) -Sets the position at which tabs will be placed. See :ref:`AlignmentMode` for details. +The position at which tabs will be placed. .. rst-class:: classref-item-separator @@ -459,7 +461,7 @@ The focus access mode for the internal :ref:`TabBar` node. - |void| **set_tabs_position**\ (\ value\: :ref:`TabPosition`\ ) - :ref:`TabPosition` **get_tabs_position**\ (\ ) -Sets the position of the tab bar. See :ref:`TabPosition` for details. +The position of the tab bar. .. rst-class:: classref-item-separator @@ -982,6 +984,18 @@ The margin is ignored with :ref:`TabBar.ALIGNMENT_RIGHT` **tab_separation** = ``0`` :ref:`🔗` + +The space between tabs in the tab bar. + +.. rst-class:: classref-item-separator + +---- + .. _class_TabContainer_theme_font_font: .. rst-class:: classref-themeproperty @@ -1173,6 +1187,7 @@ The style of the other, unselected tabs. The style for the background fill of the :ref:`TabBar` area. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_tcpserver.rst b/classes/class_tcpserver.rst index 01e36c502..5daa4921e 100644 --- a/classes/class_tcpserver.rst +++ b/classes/class_tcpserver.rst @@ -129,6 +129,7 @@ Stops listening. If a connection is available, returns a StreamPeerTCP with the connection. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_textedit.rst b/classes/class_textedit.rst index 1a5c0cbcb..dade3bf51 100644 --- a/classes/class_textedit.rst +++ b/classes/class_textedit.rst @@ -26,6 +26,14 @@ Description A multiline text editor. It also has limited facilities for editing code, such as syntax highlighting support. For more advanced facilities for editing code, see :ref:`CodeEdit`. +While entering text, it is possible to insert special characters using Unicode, OEM or Windows alt codes: + +- To enter Unicode codepoints, hold :kbd:`Alt` and type the codepoint on the numpad. For example, to enter the character ``á`` (U+00E1), hold :kbd:`Alt` and type :kbd:`+E1` on the numpad (the leading zeroes can be omitted). + +- To enter OEM codepoints, hold :kbd:`Alt` and type the code on the numpad. For example, to enter the character ``á`` (OEM 160), hold :kbd:`Alt` and type ``160`` on the numpad. + +- To enter Windows codepoints, hold :kbd:`Alt` and type the code on the numpad. For example, to enter the character ``á`` (Windows 0225), hold :kbd:`Alt` and type :kbd:`0`, :kbd:`2`, :kbd:`2`, :kbd:`5` on the numpad. The leading zero here must **not** be omitted, as this is how Windows codepoints are distinguished from OEM codepoints. + \ **Note:** Most viewport, caret, and edit methods contain a ``caret_index`` argument for :ref:`caret_multiple` support. The argument should be one of the following: ``-1`` for all carets, ``0`` for the main caret, or greater than ``0`` for secondary carets in the order they were created. \ **Note:** When holding down :kbd:`Alt`, the vertical scroll wheel will scroll 5 times as fast as it would normally do. This also works in the Godot script editor. @@ -38,101 +46,107 @@ Properties .. table:: :widths: auto - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ - | :ref:`AutowrapMode` | :ref:`autowrap_mode` | ``3`` | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`caret_blink` | ``false`` | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ - | :ref:`float` | :ref:`caret_blink_interval` | ``0.65`` | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`caret_draw_when_editable_disabled` | ``false`` | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`caret_mid_grapheme` | ``false`` | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`caret_move_on_right_click` | ``true`` | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`caret_multiple` | ``true`` | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ - | :ref:`CaretType` | :ref:`caret_type` | ``0`` | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ - | :ref:`bool` | clip_contents | ``true`` (overrides :ref:`Control`) | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`context_menu_enabled` | ``true`` | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ - | :ref:`String` | :ref:`custom_word_separators` | ``""`` | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`deselect_on_focus_loss_enabled` | ``true`` | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`drag_and_drop_selection_enabled` | ``true`` | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`draw_control_chars` | ``false`` | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`draw_spaces` | ``false`` | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`draw_tabs` | ``false`` | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`editable` | ``true`` | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`emoji_menu_enabled` | ``true`` | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`empty_selection_clipboard_enabled` | ``true`` | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ - | :ref:`FocusMode` | focus_mode | ``2`` (overrides :ref:`Control`) | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`highlight_all_occurrences` | ``false`` | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`highlight_current_line` | ``false`` | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`indent_wrapped_lines` | ``false`` | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ - | :ref:`String` | :ref:`language` | ``""`` | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`middle_mouse_paste_enabled` | ``true`` | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`minimap_draw` | ``false`` | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`minimap_width` | ``80`` | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ - | :ref:`CursorShape` | mouse_default_cursor_shape | ``1`` (overrides :ref:`Control`) | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ - | :ref:`String` | :ref:`placeholder_text` | ``""`` | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`scroll_fit_content_height` | ``false`` | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`scroll_fit_content_width` | ``false`` | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`scroll_horizontal` | ``0`` | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`scroll_past_end_of_file` | ``false`` | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`scroll_smooth` | ``false`` | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ - | :ref:`float` | :ref:`scroll_v_scroll_speed` | ``80.0`` | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ - | :ref:`float` | :ref:`scroll_vertical` | ``0.0`` | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`selecting_enabled` | ``true`` | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`shortcut_keys_enabled` | ``true`` | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ - | :ref:`StructuredTextParser` | :ref:`structured_text_bidi_override` | ``0`` | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ - | :ref:`Array` | :ref:`structured_text_bidi_override_options` | ``[]`` | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ - | :ref:`SyntaxHighlighter` | :ref:`syntax_highlighter` | | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ - | :ref:`String` | :ref:`text` | ``""`` | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ - | :ref:`TextDirection` | :ref:`text_direction` | ``0`` | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`use_custom_word_separators` | ``false`` | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`use_default_word_separators` | ``true`` | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`virtual_keyboard_enabled` | ``true`` | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ - | :ref:`LineWrappingMode` | :ref:`wrap_mode` | ``0`` | - +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ + +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ + | :ref:`AutowrapMode` | :ref:`autowrap_mode` | ``3`` | + +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`backspace_deletes_composite_character_enabled` | ``false`` | + +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`caret_blink` | ``false`` | + +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`caret_blink_interval` | ``0.65`` | + +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`caret_draw_when_editable_disabled` | ``false`` | + +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`caret_mid_grapheme` | ``false`` | + +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`caret_move_on_right_click` | ``true`` | + +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`caret_multiple` | ``true`` | + +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ + | :ref:`CaretType` | :ref:`caret_type` | ``0`` | + +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ + | :ref:`bool` | clip_contents | ``true`` (overrides :ref:`Control`) | + +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`context_menu_enabled` | ``true`` | + +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`custom_word_separators` | ``""`` | + +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`deselect_on_focus_loss_enabled` | ``true`` | + +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`drag_and_drop_selection_enabled` | ``true`` | + +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`draw_control_chars` | ``false`` | + +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`draw_spaces` | ``false`` | + +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`draw_tabs` | ``false`` | + +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`editable` | ``true`` | + +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`emoji_menu_enabled` | ``true`` | + +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`empty_selection_clipboard_enabled` | ``true`` | + +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ + | :ref:`FocusMode` | focus_mode | ``2`` (overrides :ref:`Control`) | + +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`highlight_all_occurrences` | ``false`` | + +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`highlight_current_line` | ``false`` | + +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`indent_wrapped_lines` | ``false`` | + +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`language` | ``""`` | + +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`middle_mouse_paste_enabled` | ``true`` | + +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`minimap_draw` | ``false`` | + +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`minimap_width` | ``80`` | + +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ + | :ref:`CursorShape` | mouse_default_cursor_shape | ``1`` (overrides :ref:`Control`) | + +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`placeholder_text` | ``""`` | + +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`scroll_fit_content_height` | ``false`` | + +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`scroll_fit_content_width` | ``false`` | + +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`scroll_horizontal` | ``0`` | + +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`scroll_past_end_of_file` | ``false`` | + +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`scroll_smooth` | ``false`` | + +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`scroll_v_scroll_speed` | ``80.0`` | + +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`scroll_vertical` | ``0.0`` | + +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`selecting_enabled` | ``true`` | + +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`shortcut_keys_enabled` | ``true`` | + +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ + | :ref:`StructuredTextParser` | :ref:`structured_text_bidi_override` | ``0`` | + +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ + | :ref:`Array` | :ref:`structured_text_bidi_override_options` | ``[]`` | + +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ + | :ref:`SyntaxHighlighter` | :ref:`syntax_highlighter` | | + +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`tab_input_mode` | ``true`` | + +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`text` | ``""`` | + +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ + | :ref:`TextDirection` | :ref:`text_direction` | ``0`` | + +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`use_custom_word_separators` | ``false`` | + +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`use_default_word_separators` | ``true`` | + +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`virtual_keyboard_enabled` | ``true`` | + +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`virtual_keyboard_show_on_focus` | ``true`` | + +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ + | :ref:`LineWrappingMode` | :ref:`wrap_mode` | ``0`` | + +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+ .. rst-class:: classref-reftable-group @@ -271,12 +285,16 @@ Methods +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`get_minimap_visible_lines`\ (\ ) |const| | +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`get_next_composite_character_column`\ (\ line\: :ref:`int`, column\: :ref:`int`\ ) |const| | + +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`Vector2i` | :ref:`get_next_visible_line_index_offset_from`\ (\ line\: :ref:`int`, wrap_index\: :ref:`int`, visible_amount\: :ref:`int`\ ) |const| | +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`get_next_visible_line_offset_from`\ (\ line\: :ref:`int`, visible_amount\: :ref:`int`\ ) |const| | +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`Vector2i` | :ref:`get_pos_at_line_column`\ (\ line\: :ref:`int`, column\: :ref:`int`\ ) |const| | +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`get_previous_composite_character_column`\ (\ line\: :ref:`int`, column\: :ref:`int`\ ) |const| | + +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`Rect2i` | :ref:`get_rect_at_line_column`\ (\ line\: :ref:`int`, column\: :ref:`int`\ ) |const| | +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`get_saved_version`\ (\ ) |const| | @@ -1110,7 +1128,24 @@ Property Descriptions - |void| **set_autowrap_mode**\ (\ value\: :ref:`AutowrapMode`\ ) - :ref:`AutowrapMode` **get_autowrap_mode**\ (\ ) -If :ref:`wrap_mode` is set to :ref:`LINE_WRAPPING_BOUNDARY`, sets text wrapping mode. To see how each mode behaves, see :ref:`AutowrapMode`. +If :ref:`wrap_mode` is set to :ref:`LINE_WRAPPING_BOUNDARY`, sets text wrapping mode. + +.. rst-class:: classref-item-separator + +---- + +.. _class_TextEdit_property_backspace_deletes_composite_character_enabled: + +.. rst-class:: classref-property + +:ref:`bool` **backspace_deletes_composite_character_enabled** = ``false`` :ref:`🔗` + +.. rst-class:: classref-property-setget + +- |void| **set_backspace_deletes_composite_character_enabled**\ (\ value\: :ref:`bool`\ ) +- :ref:`bool` **is_backspace_deletes_composite_character_enabled**\ (\ ) + +If ``true`` and :ref:`caret_mid_grapheme` is ``false``, backspace deletes an entire composite character such as ❤️‍🩹, instead of deleting part of the composite character. .. rst-class:: classref-item-separator @@ -1755,6 +1790,23 @@ The syntax highlighter to use. ---- +.. _class_TextEdit_property_tab_input_mode: + +.. rst-class:: classref-property + +:ref:`bool` **tab_input_mode** = ``true`` :ref:`🔗` + +.. rst-class:: classref-property-setget + +- |void| **set_tab_input_mode**\ (\ value\: :ref:`bool`\ ) +- :ref:`bool` **get_tab_input_mode**\ (\ ) + +If ``true``, :ref:`ProjectSettings.input/ui_text_indent` input ``Tab`` character, otherwise it moves keyboard focus to the next :ref:`Control` in the scene. + +.. rst-class:: classref-item-separator + +---- + .. _class_TextEdit_property_text: .. rst-class:: classref-property @@ -1834,7 +1886,24 @@ If ``false``, using :kbd:`Ctrl + Left` or :kbd:`Ctrl + Right` (:kbd:`Cmd + Left` - |void| **set_virtual_keyboard_enabled**\ (\ value\: :ref:`bool`\ ) - :ref:`bool` **is_virtual_keyboard_enabled**\ (\ ) -If ``true``, the native virtual keyboard is shown when focused on platforms that support it. +If ``true``, the native virtual keyboard is enabled on platforms that support it. + +.. rst-class:: classref-item-separator + +---- + +.. _class_TextEdit_property_virtual_keyboard_show_on_focus: + +.. rst-class:: classref-property + +:ref:`bool` **virtual_keyboard_show_on_focus** = ``true`` :ref:`🔗` + +.. rst-class:: classref-property-setget + +- |void| **set_virtual_keyboard_show_on_focus**\ (\ value\: :ref:`bool`\ ) +- :ref:`bool` **get_virtual_keyboard_show_on_focus**\ (\ ) + +If ``true``, the native virtual keyboard is shown on focus events on platforms that support it. .. rst-class:: classref-item-separator @@ -2347,7 +2416,7 @@ Returns the name of the gutter at the given index. :ref:`GutterType` **get_gutter_type**\ (\ gutter\: :ref:`int`\ ) |const| :ref:`🔗` -Returns the type of the gutter at the given index. Gutters can contain icons, text, or custom visuals. See :ref:`GutterType` for options. +Returns the type of the gutter at the given index. Gutters can contain icons, text, or custom visuals. .. rst-class:: classref-item-separator @@ -2649,7 +2718,7 @@ You can add custom menu items or remove standard ones. Make sure your IDs don't menu.add_item("Insert Date", MENU_MAX + 1) # Connect callback. menu.id_pressed.connect(_on_item_pressed) - + func _on_item_pressed(id): if id == MENU_MAX + 1: insert_text_at_caret(Time.get_date_string_from_system()) @@ -2667,7 +2736,7 @@ You can add custom menu items or remove standard ones. Make sure your IDs don't // Add event handler. menu.IdPressed += OnItemPressed; } - + public void OnItemPressed(int id) { if (id == TextEdit.MenuItems.Max + 1) @@ -2708,6 +2777,20 @@ Returns the number of lines that may be drawn on the minimap. ---- +.. _class_TextEdit_method_get_next_composite_character_column: + +.. rst-class:: classref-method + +:ref:`int` **get_next_composite_character_column**\ (\ line\: :ref:`int`, column\: :ref:`int`\ ) |const| :ref:`🔗` + +Returns the correct column at the end of a composite character like ❤️‍🩹 (mending heart; Unicode: ``U+2764 U+FE0F U+200D U+1FA79``) which is comprised of more than one Unicode code point, if the caret is at the start of the composite character. Also returns the correct column with the caret at mid grapheme and for non-composite characters. + +\ **Note:** To check at caret location use ``get_next_composite_character_column(get_caret_line(), get_caret_column())`` + +.. rst-class:: classref-item-separator + +---- + .. _class_TextEdit_method_get_next_visible_line_index_offset_from: .. rst-class:: classref-method @@ -2746,6 +2829,20 @@ Returns the local position for the given ``line`` and ``column``. If ``x`` or `` ---- +.. _class_TextEdit_method_get_previous_composite_character_column: + +.. rst-class:: classref-method + +:ref:`int` **get_previous_composite_character_column**\ (\ line\: :ref:`int`, column\: :ref:`int`\ ) |const| :ref:`🔗` + +Returns the correct column at the start of a composite character like ❤️‍🩹 (mending heart; Unicode: ``U+2764 U+FE0F U+200D U+1FA79``) which is comprised of more than one Unicode code point, if the caret is at the end of the composite character. Also returns the correct column with the caret at mid grapheme and for non-composite characters. + +\ **Note:** To check at caret location use ``get_previous_composite_character_column(get_caret_line(), get_caret_column())`` + +.. rst-class:: classref-item-separator + +---- + .. _class_TextEdit_method_get_rect_at_line_column: .. rst-class:: classref-method @@ -3613,7 +3710,7 @@ If ``true``, the line data of the gutter at the given index can be overridden wh |void| **set_gutter_type**\ (\ gutter\: :ref:`int`, type\: :ref:`GutterType`\ ) :ref:`🔗` -Sets the type of gutter at the given index. Gutters can contain icons, text, or custom visuals. See :ref:`GutterType` for options. +Sets the type of gutter at the given index. Gutters can contain icons, text, or custom visuals. .. rst-class:: classref-item-separator @@ -4195,6 +4292,7 @@ Sets the :ref:`StyleBox` of this **TextEdit**. Sets the :ref:`StyleBox` of this **TextEdit** when :ref:`editable` is disabled. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_textline.rst b/classes/class_textline.rst index b3b5896fe..6c4e7bbf6 100644 --- a/classes/class_textline.rst +++ b/classes/class_textline.rst @@ -57,43 +57,45 @@ Methods .. table:: :widths: auto - +-------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`add_object`\ (\ key\: :ref:`Variant`, size\: :ref:`Vector2`, inline_align\: :ref:`InlineAlignment` = 5, length\: :ref:`int` = 1, baseline\: :ref:`float` = 0.0\ ) | - +-------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`add_string`\ (\ text\: :ref:`String`, font\: :ref:`Font`, font_size\: :ref:`int`, language\: :ref:`String` = "", meta\: :ref:`Variant` = null\ ) | - +-------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`clear`\ (\ ) | - +-------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`draw`\ (\ canvas\: :ref:`RID`, pos\: :ref:`Vector2`, color\: :ref:`Color` = Color(1, 1, 1, 1)\ ) |const| | - +-------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`draw_outline`\ (\ canvas\: :ref:`RID`, pos\: :ref:`Vector2`, outline_size\: :ref:`int` = 1, color\: :ref:`Color` = Color(1, 1, 1, 1)\ ) |const| | - +-------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`float` | :ref:`get_line_ascent`\ (\ ) |const| | - +-------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`float` | :ref:`get_line_descent`\ (\ ) |const| | - +-------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`float` | :ref:`get_line_underline_position`\ (\ ) |const| | - +-------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`float` | :ref:`get_line_underline_thickness`\ (\ ) |const| | - +-------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`float` | :ref:`get_line_width`\ (\ ) |const| | - +-------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Rect2` | :ref:`get_object_rect`\ (\ key\: :ref:`Variant`\ ) |const| | - +-------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Array` | :ref:`get_objects`\ (\ ) |const| | - +-------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`RID` | :ref:`get_rid`\ (\ ) |const| | - +-------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Vector2` | :ref:`get_size`\ (\ ) |const| | - +-------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`hit_test`\ (\ coords\: :ref:`float`\ ) |const| | - +-------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`resize_object`\ (\ key\: :ref:`Variant`, size\: :ref:`Vector2`, inline_align\: :ref:`InlineAlignment` = 5, baseline\: :ref:`float` = 0.0\ ) | - +-------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`set_bidi_override`\ (\ override\: :ref:`Array`\ ) | - +-------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`tab_align`\ (\ tab_stops\: :ref:`PackedFloat32Array`\ ) | - +-------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + +---------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`add_object`\ (\ key\: :ref:`Variant`, size\: :ref:`Vector2`, inline_align\: :ref:`InlineAlignment` = 5, length\: :ref:`int` = 1, baseline\: :ref:`float` = 0.0\ ) | + +---------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`add_string`\ (\ text\: :ref:`String`, font\: :ref:`Font`, font_size\: :ref:`int`, language\: :ref:`String` = "", meta\: :ref:`Variant` = null\ ) | + +---------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`clear`\ (\ ) | + +---------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`draw`\ (\ canvas\: :ref:`RID`, pos\: :ref:`Vector2`, color\: :ref:`Color` = Color(1, 1, 1, 1), oversampling\: :ref:`float` = 0.0\ ) |const| | + +---------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`draw_outline`\ (\ canvas\: :ref:`RID`, pos\: :ref:`Vector2`, outline_size\: :ref:`int` = 1, color\: :ref:`Color` = Color(1, 1, 1, 1), oversampling\: :ref:`float` = 0.0\ ) |const| | + +---------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Direction` | :ref:`get_inferred_direction`\ (\ ) |const| | + +---------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`get_line_ascent`\ (\ ) |const| | + +---------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`get_line_descent`\ (\ ) |const| | + +---------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`get_line_underline_position`\ (\ ) |const| | + +---------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`get_line_underline_thickness`\ (\ ) |const| | + +---------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`get_line_width`\ (\ ) |const| | + +---------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Rect2` | :ref:`get_object_rect`\ (\ key\: :ref:`Variant`\ ) |const| | + +---------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Array` | :ref:`get_objects`\ (\ ) |const| | + +---------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`RID` | :ref:`get_rid`\ (\ ) |const| | + +---------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Vector2` | :ref:`get_size`\ (\ ) |const| | + +---------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`hit_test`\ (\ coords\: :ref:`float`\ ) |const| | + +---------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`resize_object`\ (\ key\: :ref:`Variant`, size\: :ref:`Vector2`, inline_align\: :ref:`InlineAlignment` = 5, baseline\: :ref:`float` = 0.0\ ) | + +---------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_bidi_override`\ (\ override\: :ref:`Array`\ ) | + +---------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`tab_align`\ (\ tab_stops\: :ref:`PackedFloat32Array`\ ) | + +---------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ .. rst-class:: classref-section-separator @@ -234,7 +236,7 @@ If set to ``true`` text will display invalid characters. - |void| **set_text_overrun_behavior**\ (\ value\: :ref:`OverrunBehavior`\ ) - :ref:`OverrunBehavior` **get_text_overrun_behavior**\ (\ ) -Sets the clipping behavior when the text exceeds the text line's set width. See :ref:`OverrunBehavior` for a description of all modes. +The clipping behavior when the text exceeds the text line's set width. .. rst-class:: classref-item-separator @@ -302,9 +304,9 @@ Clears text line (removes text and inline objects). .. rst-class:: classref-method -|void| **draw**\ (\ canvas\: :ref:`RID`, pos\: :ref:`Vector2`, color\: :ref:`Color` = Color(1, 1, 1, 1)\ ) |const| :ref:`🔗` +|void| **draw**\ (\ canvas\: :ref:`RID`, pos\: :ref:`Vector2`, color\: :ref:`Color` = Color(1, 1, 1, 1), oversampling\: :ref:`float` = 0.0\ ) |const| :ref:`🔗` -Draw text into a canvas item at a given position, with ``color``. ``pos`` specifies the top left corner of the bounding box. +Draw text into a canvas item at a given position, with ``color``. ``pos`` specifies the top left corner of the bounding box. If ``oversampling`` is greater than zero, it is used as font oversampling factor, otherwise viewport oversampling settings are used. .. rst-class:: classref-item-separator @@ -314,9 +316,21 @@ Draw text into a canvas item at a given position, with ``color``. ``pos`` specif .. rst-class:: classref-method -|void| **draw_outline**\ (\ canvas\: :ref:`RID`, pos\: :ref:`Vector2`, outline_size\: :ref:`int` = 1, color\: :ref:`Color` = Color(1, 1, 1, 1)\ ) |const| :ref:`🔗` +|void| **draw_outline**\ (\ canvas\: :ref:`RID`, pos\: :ref:`Vector2`, outline_size\: :ref:`int` = 1, color\: :ref:`Color` = Color(1, 1, 1, 1), oversampling\: :ref:`float` = 0.0\ ) |const| :ref:`🔗` -Draw text into a canvas item at a given position, with ``color``. ``pos`` specifies the top left corner of the bounding box. +Draw text into a canvas item at a given position, with ``color``. ``pos`` specifies the top left corner of the bounding box. If ``oversampling`` is greater than zero, it is used as font oversampling factor, otherwise viewport oversampling settings are used. + +.. rst-class:: classref-item-separator + +---- + +.. _class_TextLine_method_get_inferred_direction: + +.. rst-class:: classref-method + +:ref:`Direction` **get_inferred_direction**\ (\ ) |const| :ref:`🔗` + +Returns the text writing direction inferred by the BiDi algorithm. .. rst-class:: classref-item-separator @@ -477,6 +491,7 @@ Override ranges should cover full source text without overlaps. BiDi algorithm w Aligns text to the given tab-stops. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_textmesh.rst b/classes/class_textmesh.rst index 8c5e716b0..6f54737fc 100644 --- a/classes/class_textmesh.rst +++ b/classes/class_textmesh.rst @@ -12,14 +12,14 @@ TextMesh **Inherits:** :ref:`PrimitiveMesh` **<** :ref:`Mesh` **<** :ref:`Resource` **<** :ref:`RefCounted` **<** :ref:`Object` -Generate an :ref:`PrimitiveMesh` from the text. +Generate a :ref:`PrimitiveMesh` from the text. .. rst-class:: classref-introduction-group Description ----------- -Generate an :ref:`PrimitiveMesh` from the text. +Generate a :ref:`PrimitiveMesh` from the text. TextMesh can be generated only when using dynamic fonts with vector glyph contours. Bitmap fonts (including bitmap data in the TrueType/OpenType containers, like color emoji fonts) are not supported. @@ -98,7 +98,7 @@ Property Descriptions - |void| **set_autowrap_mode**\ (\ value\: :ref:`AutowrapMode`\ ) - :ref:`AutowrapMode` **get_autowrap_mode**\ (\ ) -If set to something other than :ref:`TextServer.AUTOWRAP_OFF`, the text gets wrapped inside the node's bounding rectangle. If you resize the node, it will change its height automatically to show all the text. To see how each mode behaves, see :ref:`AutowrapMode`. +If set to something other than :ref:`TextServer.AUTOWRAP_OFF`, the text gets wrapped inside the node's bounding rectangle. If you resize the node, it will change its height automatically to show all the text. .. rst-class:: classref-item-separator @@ -183,7 +183,7 @@ Font size of the **TextMesh**'s text. - |void| **set_horizontal_alignment**\ (\ value\: :ref:`HorizontalAlignment`\ ) - :ref:`HorizontalAlignment` **get_horizontal_alignment**\ (\ ) -Controls the text's horizontal alignment. Supports left, center, right, and fill, or justify. Set it to one of the :ref:`HorizontalAlignment` constants. +Controls the text's horizontal alignment. Supports left, center, right, and fill, or justify. .. rst-class:: classref-item-separator @@ -200,7 +200,7 @@ Controls the text's horizontal alignment. Supports left, center, right, and fill - |void| **set_justification_flags**\ (\ value\: |bitfield|\[:ref:`JustificationFlag`\]\ ) - |bitfield|\[:ref:`JustificationFlag`\] **get_justification_flags**\ (\ ) -Line fill alignment rules. See :ref:`JustificationFlag` for more information. +Line fill alignment rules. .. rst-class:: classref-item-separator @@ -372,7 +372,7 @@ If ``true``, all the text displays as UPPERCASE. - |void| **set_vertical_alignment**\ (\ value\: :ref:`VerticalAlignment`\ ) - :ref:`VerticalAlignment` **get_vertical_alignment**\ (\ ) -Controls the text's vertical alignment. Supports top, center, bottom. Set it to one of the :ref:`VerticalAlignment` constants. +Controls the text's vertical alignment. Supports top, center, and bottom. .. rst-class:: classref-item-separator @@ -392,6 +392,7 @@ Controls the text's vertical alignment. Supports top, center, bottom. Set it to Text width (in pixels), used for fill alignment. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_textparagraph.rst b/classes/class_textparagraph.rst index 1c26b167e..bb4134559 100644 --- a/classes/class_textparagraph.rst +++ b/classes/class_textparagraph.rst @@ -65,71 +65,75 @@ Methods .. table:: :widths: auto - +---------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`add_object`\ (\ key\: :ref:`Variant`, size\: :ref:`Vector2`, inline_align\: :ref:`InlineAlignment` = 5, length\: :ref:`int` = 1, baseline\: :ref:`float` = 0.0\ ) | - +---------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`add_string`\ (\ text\: :ref:`String`, font\: :ref:`Font`, font_size\: :ref:`int`, language\: :ref:`String` = "", meta\: :ref:`Variant` = null\ ) | - +---------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`clear`\ (\ ) | - +---------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`clear_dropcap`\ (\ ) | - +---------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`draw`\ (\ canvas\: :ref:`RID`, pos\: :ref:`Vector2`, color\: :ref:`Color` = Color(1, 1, 1, 1), dc_color\: :ref:`Color` = Color(1, 1, 1, 1)\ ) |const| | - +---------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`draw_dropcap`\ (\ canvas\: :ref:`RID`, pos\: :ref:`Vector2`, color\: :ref:`Color` = Color(1, 1, 1, 1)\ ) |const| | - +---------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`draw_dropcap_outline`\ (\ canvas\: :ref:`RID`, pos\: :ref:`Vector2`, outline_size\: :ref:`int` = 1, color\: :ref:`Color` = Color(1, 1, 1, 1)\ ) |const| | - +---------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`draw_line`\ (\ canvas\: :ref:`RID`, pos\: :ref:`Vector2`, line\: :ref:`int`, color\: :ref:`Color` = Color(1, 1, 1, 1)\ ) |const| | - +---------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`draw_line_outline`\ (\ canvas\: :ref:`RID`, pos\: :ref:`Vector2`, line\: :ref:`int`, outline_size\: :ref:`int` = 1, color\: :ref:`Color` = Color(1, 1, 1, 1)\ ) |const| | - +---------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`draw_outline`\ (\ canvas\: :ref:`RID`, pos\: :ref:`Vector2`, outline_size\: :ref:`int` = 1, color\: :ref:`Color` = Color(1, 1, 1, 1), dc_color\: :ref:`Color` = Color(1, 1, 1, 1)\ ) |const| | - +---------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`get_dropcap_lines`\ (\ ) |const| | - +---------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`RID` | :ref:`get_dropcap_rid`\ (\ ) |const| | - +---------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Vector2` | :ref:`get_dropcap_size`\ (\ ) |const| | - +---------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`float` | :ref:`get_line_ascent`\ (\ line\: :ref:`int`\ ) |const| | - +---------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`get_line_count`\ (\ ) |const| | - +---------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`float` | :ref:`get_line_descent`\ (\ line\: :ref:`int`\ ) |const| | - +---------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Rect2` | :ref:`get_line_object_rect`\ (\ line\: :ref:`int`, key\: :ref:`Variant`\ ) |const| | - +---------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Array` | :ref:`get_line_objects`\ (\ line\: :ref:`int`\ ) |const| | - +---------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Vector2i` | :ref:`get_line_range`\ (\ line\: :ref:`int`\ ) |const| | - +---------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`RID` | :ref:`get_line_rid`\ (\ line\: :ref:`int`\ ) |const| | - +---------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Vector2` | :ref:`get_line_size`\ (\ line\: :ref:`int`\ ) |const| | - +---------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`float` | :ref:`get_line_underline_position`\ (\ line\: :ref:`int`\ ) |const| | - +---------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`float` | :ref:`get_line_underline_thickness`\ (\ line\: :ref:`int`\ ) |const| | - +---------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`float` | :ref:`get_line_width`\ (\ line\: :ref:`int`\ ) |const| | - +---------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Vector2` | :ref:`get_non_wrapped_size`\ (\ ) |const| | - +---------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`RID` | :ref:`get_rid`\ (\ ) |const| | - +---------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Vector2` | :ref:`get_size`\ (\ ) |const| | - +---------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`hit_test`\ (\ coords\: :ref:`Vector2`\ ) |const| | - +---------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`resize_object`\ (\ key\: :ref:`Variant`, size\: :ref:`Vector2`, inline_align\: :ref:`InlineAlignment` = 5, baseline\: :ref:`float` = 0.0\ ) | - +---------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`set_bidi_override`\ (\ override\: :ref:`Array`\ ) | - +---------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`set_dropcap`\ (\ text\: :ref:`String`, font\: :ref:`Font`, font_size\: :ref:`int`, dropcap_margins\: :ref:`Rect2` = Rect2(0, 0, 0, 0), language\: :ref:`String` = ""\ ) | - +---------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`tab_align`\ (\ tab_stops\: :ref:`PackedFloat32Array`\ ) | - +---------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + +---------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`add_object`\ (\ key\: :ref:`Variant`, size\: :ref:`Vector2`, inline_align\: :ref:`InlineAlignment` = 5, length\: :ref:`int` = 1, baseline\: :ref:`float` = 0.0\ ) | + +---------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`add_string`\ (\ text\: :ref:`String`, font\: :ref:`Font`, font_size\: :ref:`int`, language\: :ref:`String` = "", meta\: :ref:`Variant` = null\ ) | + +---------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`clear`\ (\ ) | + +---------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`clear_dropcap`\ (\ ) | + +---------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`draw`\ (\ canvas\: :ref:`RID`, pos\: :ref:`Vector2`, color\: :ref:`Color` = Color(1, 1, 1, 1), dc_color\: :ref:`Color` = Color(1, 1, 1, 1), oversampling\: :ref:`float` = 0.0\ ) |const| | + +---------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`draw_dropcap`\ (\ canvas\: :ref:`RID`, pos\: :ref:`Vector2`, color\: :ref:`Color` = Color(1, 1, 1, 1), oversampling\: :ref:`float` = 0.0\ ) |const| | + +---------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`draw_dropcap_outline`\ (\ canvas\: :ref:`RID`, pos\: :ref:`Vector2`, outline_size\: :ref:`int` = 1, color\: :ref:`Color` = Color(1, 1, 1, 1), oversampling\: :ref:`float` = 0.0\ ) |const| | + +---------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`draw_line`\ (\ canvas\: :ref:`RID`, pos\: :ref:`Vector2`, line\: :ref:`int`, color\: :ref:`Color` = Color(1, 1, 1, 1), oversampling\: :ref:`float` = 0.0\ ) |const| | + +---------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`draw_line_outline`\ (\ canvas\: :ref:`RID`, pos\: :ref:`Vector2`, line\: :ref:`int`, outline_size\: :ref:`int` = 1, color\: :ref:`Color` = Color(1, 1, 1, 1), oversampling\: :ref:`float` = 0.0\ ) |const| | + +---------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`draw_outline`\ (\ canvas\: :ref:`RID`, pos\: :ref:`Vector2`, outline_size\: :ref:`int` = 1, color\: :ref:`Color` = Color(1, 1, 1, 1), dc_color\: :ref:`Color` = Color(1, 1, 1, 1), oversampling\: :ref:`float` = 0.0\ ) |const| | + +---------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`get_dropcap_lines`\ (\ ) |const| | + +---------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`RID` | :ref:`get_dropcap_rid`\ (\ ) |const| | + +---------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Vector2` | :ref:`get_dropcap_size`\ (\ ) |const| | + +---------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Direction` | :ref:`get_inferred_direction`\ (\ ) |const| | + +---------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`get_line_ascent`\ (\ line\: :ref:`int`\ ) |const| | + +---------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`get_line_count`\ (\ ) |const| | + +---------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`get_line_descent`\ (\ line\: :ref:`int`\ ) |const| | + +---------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Rect2` | :ref:`get_line_object_rect`\ (\ line\: :ref:`int`, key\: :ref:`Variant`\ ) |const| | + +---------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Array` | :ref:`get_line_objects`\ (\ line\: :ref:`int`\ ) |const| | + +---------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Vector2i` | :ref:`get_line_range`\ (\ line\: :ref:`int`\ ) |const| | + +---------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`RID` | :ref:`get_line_rid`\ (\ line\: :ref:`int`\ ) |const| | + +---------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Vector2` | :ref:`get_line_size`\ (\ line\: :ref:`int`\ ) |const| | + +---------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`get_line_underline_position`\ (\ line\: :ref:`int`\ ) |const| | + +---------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`get_line_underline_thickness`\ (\ line\: :ref:`int`\ ) |const| | + +---------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`get_line_width`\ (\ line\: :ref:`int`\ ) |const| | + +---------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Vector2` | :ref:`get_non_wrapped_size`\ (\ ) |const| | + +---------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Vector2i` | :ref:`get_range`\ (\ ) |const| | + +---------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`RID` | :ref:`get_rid`\ (\ ) |const| | + +---------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Vector2` | :ref:`get_size`\ (\ ) |const| | + +---------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`hit_test`\ (\ coords\: :ref:`Vector2`\ ) |const| | + +---------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`resize_object`\ (\ key\: :ref:`Variant`, size\: :ref:`Vector2`, inline_align\: :ref:`InlineAlignment` = 5, baseline\: :ref:`float` = 0.0\ ) | + +---------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_bidi_override`\ (\ override\: :ref:`Array`\ ) | + +---------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`set_dropcap`\ (\ text\: :ref:`String`, font\: :ref:`Font`, font_size\: :ref:`int`, dropcap_margins\: :ref:`Rect2` = Rect2(0, 0, 0, 0), language\: :ref:`String` = ""\ ) | + +---------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`tab_align`\ (\ tab_stops\: :ref:`PackedFloat32Array`\ ) | + +---------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ .. rst-class:: classref-section-separator @@ -236,7 +240,7 @@ Ellipsis character used for text clipping. - |void| **set_justification_flags**\ (\ value\: |bitfield|\[:ref:`JustificationFlag`\]\ ) - |bitfield|\[:ref:`JustificationFlag`\] **get_justification_flags**\ (\ ) -Line fill alignment rules. See :ref:`JustificationFlag` for more information. +Line fill alignment rules. .. rst-class:: classref-item-separator @@ -338,7 +342,7 @@ If set to ``true`` text will display invalid characters. - |void| **set_text_overrun_behavior**\ (\ value\: :ref:`OverrunBehavior`\ ) - :ref:`OverrunBehavior` **get_text_overrun_behavior**\ (\ ) -Sets the clipping behavior when the text exceeds the paragraph's set width. See :ref:`OverrunBehavior` for a description of all modes. +The clipping behavior when the text exceeds the paragraph's set width. .. rst-class:: classref-item-separator @@ -418,9 +422,9 @@ Removes dropcap. .. rst-class:: classref-method -|void| **draw**\ (\ canvas\: :ref:`RID`, pos\: :ref:`Vector2`, color\: :ref:`Color` = Color(1, 1, 1, 1), dc_color\: :ref:`Color` = Color(1, 1, 1, 1)\ ) |const| :ref:`🔗` +|void| **draw**\ (\ canvas\: :ref:`RID`, pos\: :ref:`Vector2`, color\: :ref:`Color` = Color(1, 1, 1, 1), dc_color\: :ref:`Color` = Color(1, 1, 1, 1), oversampling\: :ref:`float` = 0.0\ ) |const| :ref:`🔗` -Draw all lines of the text and drop cap into a canvas item at a given position, with ``color``. ``pos`` specifies the top left corner of the bounding box. +Draw all lines of the text and drop cap into a canvas item at a given position, with ``color``. ``pos`` specifies the top left corner of the bounding box. If ``oversampling`` is greater than zero, it is used as font oversampling factor, otherwise viewport oversampling settings are used. .. rst-class:: classref-item-separator @@ -430,9 +434,9 @@ Draw all lines of the text and drop cap into a canvas item at a given position, .. rst-class:: classref-method -|void| **draw_dropcap**\ (\ canvas\: :ref:`RID`, pos\: :ref:`Vector2`, color\: :ref:`Color` = Color(1, 1, 1, 1)\ ) |const| :ref:`🔗` +|void| **draw_dropcap**\ (\ canvas\: :ref:`RID`, pos\: :ref:`Vector2`, color\: :ref:`Color` = Color(1, 1, 1, 1), oversampling\: :ref:`float` = 0.0\ ) |const| :ref:`🔗` -Draw drop cap into a canvas item at a given position, with ``color``. ``pos`` specifies the top left corner of the bounding box. +Draw drop cap into a canvas item at a given position, with ``color``. ``pos`` specifies the top left corner of the bounding box. If ``oversampling`` is greater than zero, it is used as font oversampling factor, otherwise viewport oversampling settings are used. .. rst-class:: classref-item-separator @@ -442,9 +446,9 @@ Draw drop cap into a canvas item at a given position, with ``color``. ``pos`` sp .. rst-class:: classref-method -|void| **draw_dropcap_outline**\ (\ canvas\: :ref:`RID`, pos\: :ref:`Vector2`, outline_size\: :ref:`int` = 1, color\: :ref:`Color` = Color(1, 1, 1, 1)\ ) |const| :ref:`🔗` +|void| **draw_dropcap_outline**\ (\ canvas\: :ref:`RID`, pos\: :ref:`Vector2`, outline_size\: :ref:`int` = 1, color\: :ref:`Color` = Color(1, 1, 1, 1), oversampling\: :ref:`float` = 0.0\ ) |const| :ref:`🔗` -Draw drop cap outline into a canvas item at a given position, with ``color``. ``pos`` specifies the top left corner of the bounding box. +Draw drop cap outline into a canvas item at a given position, with ``color``. ``pos`` specifies the top left corner of the bounding box. If ``oversampling`` is greater than zero, it is used as font oversampling factor, otherwise viewport oversampling settings are used. .. rst-class:: classref-item-separator @@ -454,9 +458,9 @@ Draw drop cap outline into a canvas item at a given position, with ``color``. `` .. rst-class:: classref-method -|void| **draw_line**\ (\ canvas\: :ref:`RID`, pos\: :ref:`Vector2`, line\: :ref:`int`, color\: :ref:`Color` = Color(1, 1, 1, 1)\ ) |const| :ref:`🔗` +|void| **draw_line**\ (\ canvas\: :ref:`RID`, pos\: :ref:`Vector2`, line\: :ref:`int`, color\: :ref:`Color` = Color(1, 1, 1, 1), oversampling\: :ref:`float` = 0.0\ ) |const| :ref:`🔗` -Draw single line of text into a canvas item at a given position, with ``color``. ``pos`` specifies the top left corner of the bounding box. +Draw single line of text into a canvas item at a given position, with ``color``. ``pos`` specifies the top left corner of the bounding box. If ``oversampling`` is greater than zero, it is used as font oversampling factor, otherwise viewport oversampling settings are used. .. rst-class:: classref-item-separator @@ -466,9 +470,9 @@ Draw single line of text into a canvas item at a given position, with ``color``. .. rst-class:: classref-method -|void| **draw_line_outline**\ (\ canvas\: :ref:`RID`, pos\: :ref:`Vector2`, line\: :ref:`int`, outline_size\: :ref:`int` = 1, color\: :ref:`Color` = Color(1, 1, 1, 1)\ ) |const| :ref:`🔗` +|void| **draw_line_outline**\ (\ canvas\: :ref:`RID`, pos\: :ref:`Vector2`, line\: :ref:`int`, outline_size\: :ref:`int` = 1, color\: :ref:`Color` = Color(1, 1, 1, 1), oversampling\: :ref:`float` = 0.0\ ) |const| :ref:`🔗` -Draw outline of the single line of text into a canvas item at a given position, with ``color``. ``pos`` specifies the top left corner of the bounding box. +Draw outline of the single line of text into a canvas item at a given position, with ``color``. ``pos`` specifies the top left corner of the bounding box. If ``oversampling`` is greater than zero, it is used as font oversampling factor, otherwise viewport oversampling settings are used. .. rst-class:: classref-item-separator @@ -478,9 +482,9 @@ Draw outline of the single line of text into a canvas item at a given position, .. rst-class:: classref-method -|void| **draw_outline**\ (\ canvas\: :ref:`RID`, pos\: :ref:`Vector2`, outline_size\: :ref:`int` = 1, color\: :ref:`Color` = Color(1, 1, 1, 1), dc_color\: :ref:`Color` = Color(1, 1, 1, 1)\ ) |const| :ref:`🔗` +|void| **draw_outline**\ (\ canvas\: :ref:`RID`, pos\: :ref:`Vector2`, outline_size\: :ref:`int` = 1, color\: :ref:`Color` = Color(1, 1, 1, 1), dc_color\: :ref:`Color` = Color(1, 1, 1, 1), oversampling\: :ref:`float` = 0.0\ ) |const| :ref:`🔗` -Draw outlines of all lines of the text and drop cap into a canvas item at a given position, with ``color``. ``pos`` specifies the top left corner of the bounding box. +Draw outlines of all lines of the text and drop cap into a canvas item at a given position, with ``color``. ``pos`` specifies the top left corner of the bounding box. If ``oversampling`` is greater than zero, it is used as font oversampling factor, otherwise viewport oversampling settings are used. .. rst-class:: classref-item-separator @@ -522,6 +526,18 @@ Returns drop cap bounding box size. ---- +.. _class_TextParagraph_method_get_inferred_direction: + +.. rst-class:: classref-method + +:ref:`Direction` **get_inferred_direction**\ (\ ) |const| :ref:`🔗` + +Returns the text writing direction inferred by the BiDi algorithm. + +.. rst-class:: classref-item-separator + +---- + .. _class_TextParagraph_method_get_line_ascent: .. rst-class:: classref-method @@ -666,6 +682,18 @@ Returns the size of the bounding box of the paragraph, without line breaks. ---- +.. _class_TextParagraph_method_get_range: + +.. rst-class:: classref-method + +:ref:`Vector2i` **get_range**\ (\ ) |const| :ref:`🔗` + +Returns the character range of the paragraph. + +.. rst-class:: classref-item-separator + +---- + .. _class_TextParagraph_method_get_rid: .. rst-class:: classref-method @@ -749,6 +777,7 @@ Sets drop cap, overrides previously set drop cap. Drop cap (dropped capital) is Aligns paragraph to the given tab-stops. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_textserver.rst b/classes/class_textserver.rst index 1357efc5c..11c72c842 100644 --- a/classes/class_textserver.rst +++ b/classes/class_textserver.rst @@ -48,443 +48,473 @@ Methods .. table:: :widths: auto - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`RID` | :ref:`create_font`\ (\ ) | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`RID` | :ref:`create_font_linked_variation`\ (\ font_rid\: :ref:`RID`\ ) | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`RID` | :ref:`create_shaped_text`\ (\ direction\: :ref:`Direction` = 0, orientation\: :ref:`Orientation` = 0\ ) | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`draw_hex_code_box`\ (\ canvas\: :ref:`RID`, size\: :ref:`int`, pos\: :ref:`Vector2`, index\: :ref:`int`, color\: :ref:`Color`\ ) |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`font_clear_glyphs`\ (\ font_rid\: :ref:`RID`, size\: :ref:`Vector2i`\ ) | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`font_clear_kerning_map`\ (\ font_rid\: :ref:`RID`, size\: :ref:`int`\ ) | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`font_clear_size_cache`\ (\ font_rid\: :ref:`RID`\ ) | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`font_clear_textures`\ (\ font_rid\: :ref:`RID`, size\: :ref:`Vector2i`\ ) | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`font_draw_glyph`\ (\ font_rid\: :ref:`RID`, canvas\: :ref:`RID`, size\: :ref:`int`, pos\: :ref:`Vector2`, index\: :ref:`int`, color\: :ref:`Color` = Color(1, 1, 1, 1)\ ) |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`font_draw_glyph_outline`\ (\ font_rid\: :ref:`RID`, canvas\: :ref:`RID`, size\: :ref:`int`, outline_size\: :ref:`int`, pos\: :ref:`Vector2`, index\: :ref:`int`, color\: :ref:`Color` = Color(1, 1, 1, 1)\ ) |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`FontAntialiasing` | :ref:`font_get_antialiasing`\ (\ font_rid\: :ref:`RID`\ ) |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`float` | :ref:`font_get_ascent`\ (\ font_rid\: :ref:`RID`, size\: :ref:`int`\ ) |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`float` | :ref:`font_get_baseline_offset`\ (\ font_rid\: :ref:`RID`\ ) |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`font_get_char_from_glyph_index`\ (\ font_rid\: :ref:`RID`, size\: :ref:`int`, glyph_index\: :ref:`int`\ ) |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`float` | :ref:`font_get_descent`\ (\ font_rid\: :ref:`RID`, size\: :ref:`int`\ ) |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`font_get_disable_embedded_bitmaps`\ (\ font_rid\: :ref:`RID`\ ) |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`float` | :ref:`font_get_embolden`\ (\ font_rid\: :ref:`RID`\ ) |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`font_get_face_count`\ (\ font_rid\: :ref:`RID`\ ) |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`font_get_face_index`\ (\ font_rid\: :ref:`RID`\ ) |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`font_get_fixed_size`\ (\ font_rid\: :ref:`RID`\ ) |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`FixedSizeScaleMode` | :ref:`font_get_fixed_size_scale_mode`\ (\ font_rid\: :ref:`RID`\ ) |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`font_get_generate_mipmaps`\ (\ font_rid\: :ref:`RID`\ ) |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`float` | :ref:`font_get_global_oversampling`\ (\ ) |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Vector2` | :ref:`font_get_glyph_advance`\ (\ font_rid\: :ref:`RID`, size\: :ref:`int`, glyph\: :ref:`int`\ ) |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Dictionary` | :ref:`font_get_glyph_contours`\ (\ font\: :ref:`RID`, size\: :ref:`int`, index\: :ref:`int`\ ) |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`font_get_glyph_index`\ (\ font_rid\: :ref:`RID`, size\: :ref:`int`, char\: :ref:`int`, variation_selector\: :ref:`int`\ ) |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`PackedInt32Array` | :ref:`font_get_glyph_list`\ (\ font_rid\: :ref:`RID`, size\: :ref:`Vector2i`\ ) |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Vector2` | :ref:`font_get_glyph_offset`\ (\ font_rid\: :ref:`RID`, size\: :ref:`Vector2i`, glyph\: :ref:`int`\ ) |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Vector2` | :ref:`font_get_glyph_size`\ (\ font_rid\: :ref:`RID`, size\: :ref:`Vector2i`, glyph\: :ref:`int`\ ) |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`font_get_glyph_texture_idx`\ (\ font_rid\: :ref:`RID`, size\: :ref:`Vector2i`, glyph\: :ref:`int`\ ) |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`RID` | :ref:`font_get_glyph_texture_rid`\ (\ font_rid\: :ref:`RID`, size\: :ref:`Vector2i`, glyph\: :ref:`int`\ ) |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Vector2` | :ref:`font_get_glyph_texture_size`\ (\ font_rid\: :ref:`RID`, size\: :ref:`Vector2i`, glyph\: :ref:`int`\ ) |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Rect2` | :ref:`font_get_glyph_uv_rect`\ (\ font_rid\: :ref:`RID`, size\: :ref:`Vector2i`, glyph\: :ref:`int`\ ) |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Hinting` | :ref:`font_get_hinting`\ (\ font_rid\: :ref:`RID`\ ) |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`font_get_keep_rounding_remainders`\ (\ font_rid\: :ref:`RID`\ ) |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Vector2` | :ref:`font_get_kerning`\ (\ font_rid\: :ref:`RID`, size\: :ref:`int`, glyph_pair\: :ref:`Vector2i`\ ) |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Array`\[:ref:`Vector2i`\] | :ref:`font_get_kerning_list`\ (\ font_rid\: :ref:`RID`, size\: :ref:`int`\ ) |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`font_get_language_support_override`\ (\ font_rid\: :ref:`RID`, language\: :ref:`String`\ ) | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`PackedStringArray` | :ref:`font_get_language_support_overrides`\ (\ font_rid\: :ref:`RID`\ ) | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`font_get_msdf_pixel_range`\ (\ font_rid\: :ref:`RID`\ ) |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`font_get_msdf_size`\ (\ font_rid\: :ref:`RID`\ ) |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`String` | :ref:`font_get_name`\ (\ font_rid\: :ref:`RID`\ ) |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Dictionary` | :ref:`font_get_opentype_feature_overrides`\ (\ font_rid\: :ref:`RID`\ ) |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Dictionary` | :ref:`font_get_ot_name_strings`\ (\ font_rid\: :ref:`RID`\ ) |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`float` | :ref:`font_get_oversampling`\ (\ font_rid\: :ref:`RID`\ ) |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`float` | :ref:`font_get_scale`\ (\ font_rid\: :ref:`RID`, size\: :ref:`int`\ ) |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`font_get_script_support_override`\ (\ font_rid\: :ref:`RID`, script\: :ref:`String`\ ) | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`PackedStringArray` | :ref:`font_get_script_support_overrides`\ (\ font_rid\: :ref:`RID`\ ) | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Array`\[:ref:`Vector2i`\] | :ref:`font_get_size_cache_list`\ (\ font_rid\: :ref:`RID`\ ) |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`font_get_spacing`\ (\ font_rid\: :ref:`RID`, spacing\: :ref:`SpacingType`\ ) |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`font_get_stretch`\ (\ font_rid\: :ref:`RID`\ ) |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |bitfield|\[:ref:`FontStyle`\] | :ref:`font_get_style`\ (\ font_rid\: :ref:`RID`\ ) |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`String` | :ref:`font_get_style_name`\ (\ font_rid\: :ref:`RID`\ ) |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`SubpixelPositioning` | :ref:`font_get_subpixel_positioning`\ (\ font_rid\: :ref:`RID`\ ) |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`String` | :ref:`font_get_supported_chars`\ (\ font_rid\: :ref:`RID`\ ) |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`PackedInt32Array` | :ref:`font_get_supported_glyphs`\ (\ font_rid\: :ref:`RID`\ ) |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`font_get_texture_count`\ (\ font_rid\: :ref:`RID`, size\: :ref:`Vector2i`\ ) |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Image` | :ref:`font_get_texture_image`\ (\ font_rid\: :ref:`RID`, size\: :ref:`Vector2i`, texture_index\: :ref:`int`\ ) |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`PackedInt32Array` | :ref:`font_get_texture_offsets`\ (\ font_rid\: :ref:`RID`, size\: :ref:`Vector2i`, texture_index\: :ref:`int`\ ) |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Transform2D` | :ref:`font_get_transform`\ (\ font_rid\: :ref:`RID`\ ) |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`float` | :ref:`font_get_underline_position`\ (\ font_rid\: :ref:`RID`, size\: :ref:`int`\ ) |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`float` | :ref:`font_get_underline_thickness`\ (\ font_rid\: :ref:`RID`, size\: :ref:`int`\ ) |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Dictionary` | :ref:`font_get_variation_coordinates`\ (\ font_rid\: :ref:`RID`\ ) |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`font_get_weight`\ (\ font_rid\: :ref:`RID`\ ) |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`font_has_char`\ (\ font_rid\: :ref:`RID`, char\: :ref:`int`\ ) |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`font_is_allow_system_fallback`\ (\ font_rid\: :ref:`RID`\ ) |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`font_is_force_autohinter`\ (\ font_rid\: :ref:`RID`\ ) |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`font_is_language_supported`\ (\ font_rid\: :ref:`RID`, language\: :ref:`String`\ ) |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`font_is_multichannel_signed_distance_field`\ (\ font_rid\: :ref:`RID`\ ) |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`font_is_script_supported`\ (\ font_rid\: :ref:`RID`, script\: :ref:`String`\ ) |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`font_remove_glyph`\ (\ font_rid\: :ref:`RID`, size\: :ref:`Vector2i`, glyph\: :ref:`int`\ ) | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`font_remove_kerning`\ (\ font_rid\: :ref:`RID`, size\: :ref:`int`, glyph_pair\: :ref:`Vector2i`\ ) | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`font_remove_language_support_override`\ (\ font_rid\: :ref:`RID`, language\: :ref:`String`\ ) | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`font_remove_script_support_override`\ (\ font_rid\: :ref:`RID`, script\: :ref:`String`\ ) | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`font_remove_size_cache`\ (\ font_rid\: :ref:`RID`, size\: :ref:`Vector2i`\ ) | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`font_remove_texture`\ (\ font_rid\: :ref:`RID`, size\: :ref:`Vector2i`, texture_index\: :ref:`int`\ ) | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`font_render_glyph`\ (\ font_rid\: :ref:`RID`, size\: :ref:`Vector2i`, index\: :ref:`int`\ ) | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`font_render_range`\ (\ font_rid\: :ref:`RID`, size\: :ref:`Vector2i`, start\: :ref:`int`, end\: :ref:`int`\ ) | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`font_set_allow_system_fallback`\ (\ font_rid\: :ref:`RID`, allow_system_fallback\: :ref:`bool`\ ) | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`font_set_antialiasing`\ (\ font_rid\: :ref:`RID`, antialiasing\: :ref:`FontAntialiasing`\ ) | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`font_set_ascent`\ (\ font_rid\: :ref:`RID`, size\: :ref:`int`, ascent\: :ref:`float`\ ) | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`font_set_baseline_offset`\ (\ font_rid\: :ref:`RID`, baseline_offset\: :ref:`float`\ ) | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`font_set_data`\ (\ font_rid\: :ref:`RID`, data\: :ref:`PackedByteArray`\ ) | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`font_set_descent`\ (\ font_rid\: :ref:`RID`, size\: :ref:`int`, descent\: :ref:`float`\ ) | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`font_set_disable_embedded_bitmaps`\ (\ font_rid\: :ref:`RID`, disable_embedded_bitmaps\: :ref:`bool`\ ) | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`font_set_embolden`\ (\ font_rid\: :ref:`RID`, strength\: :ref:`float`\ ) | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`font_set_face_index`\ (\ font_rid\: :ref:`RID`, face_index\: :ref:`int`\ ) | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`font_set_fixed_size`\ (\ font_rid\: :ref:`RID`, fixed_size\: :ref:`int`\ ) | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`font_set_fixed_size_scale_mode`\ (\ font_rid\: :ref:`RID`, fixed_size_scale_mode\: :ref:`FixedSizeScaleMode`\ ) | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`font_set_force_autohinter`\ (\ font_rid\: :ref:`RID`, force_autohinter\: :ref:`bool`\ ) | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`font_set_generate_mipmaps`\ (\ font_rid\: :ref:`RID`, generate_mipmaps\: :ref:`bool`\ ) | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`font_set_global_oversampling`\ (\ oversampling\: :ref:`float`\ ) | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`font_set_glyph_advance`\ (\ font_rid\: :ref:`RID`, size\: :ref:`int`, glyph\: :ref:`int`, advance\: :ref:`Vector2`\ ) | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`font_set_glyph_offset`\ (\ font_rid\: :ref:`RID`, size\: :ref:`Vector2i`, glyph\: :ref:`int`, offset\: :ref:`Vector2`\ ) | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`font_set_glyph_size`\ (\ font_rid\: :ref:`RID`, size\: :ref:`Vector2i`, glyph\: :ref:`int`, gl_size\: :ref:`Vector2`\ ) | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`font_set_glyph_texture_idx`\ (\ font_rid\: :ref:`RID`, size\: :ref:`Vector2i`, glyph\: :ref:`int`, texture_idx\: :ref:`int`\ ) | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`font_set_glyph_uv_rect`\ (\ font_rid\: :ref:`RID`, size\: :ref:`Vector2i`, glyph\: :ref:`int`, uv_rect\: :ref:`Rect2`\ ) | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`font_set_hinting`\ (\ font_rid\: :ref:`RID`, hinting\: :ref:`Hinting`\ ) | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`font_set_keep_rounding_remainders`\ (\ font_rid\: :ref:`RID`, keep_rounding_remainders\: :ref:`bool`\ ) | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`font_set_kerning`\ (\ font_rid\: :ref:`RID`, size\: :ref:`int`, glyph_pair\: :ref:`Vector2i`, kerning\: :ref:`Vector2`\ ) | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`font_set_language_support_override`\ (\ font_rid\: :ref:`RID`, language\: :ref:`String`, supported\: :ref:`bool`\ ) | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`font_set_msdf_pixel_range`\ (\ font_rid\: :ref:`RID`, msdf_pixel_range\: :ref:`int`\ ) | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`font_set_msdf_size`\ (\ font_rid\: :ref:`RID`, msdf_size\: :ref:`int`\ ) | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`font_set_multichannel_signed_distance_field`\ (\ font_rid\: :ref:`RID`, msdf\: :ref:`bool`\ ) | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`font_set_name`\ (\ font_rid\: :ref:`RID`, name\: :ref:`String`\ ) | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`font_set_opentype_feature_overrides`\ (\ font_rid\: :ref:`RID`, overrides\: :ref:`Dictionary`\ ) | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`font_set_oversampling`\ (\ font_rid\: :ref:`RID`, oversampling\: :ref:`float`\ ) | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`font_set_scale`\ (\ font_rid\: :ref:`RID`, size\: :ref:`int`, scale\: :ref:`float`\ ) | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`font_set_script_support_override`\ (\ font_rid\: :ref:`RID`, script\: :ref:`String`, supported\: :ref:`bool`\ ) | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`font_set_spacing`\ (\ font_rid\: :ref:`RID`, spacing\: :ref:`SpacingType`, value\: :ref:`int`\ ) | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`font_set_stretch`\ (\ font_rid\: :ref:`RID`, weight\: :ref:`int`\ ) | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`font_set_style`\ (\ font_rid\: :ref:`RID`, style\: |bitfield|\[:ref:`FontStyle`\]\ ) | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`font_set_style_name`\ (\ font_rid\: :ref:`RID`, name\: :ref:`String`\ ) | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`font_set_subpixel_positioning`\ (\ font_rid\: :ref:`RID`, subpixel_positioning\: :ref:`SubpixelPositioning`\ ) | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`font_set_texture_image`\ (\ font_rid\: :ref:`RID`, size\: :ref:`Vector2i`, texture_index\: :ref:`int`, image\: :ref:`Image`\ ) | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`font_set_texture_offsets`\ (\ font_rid\: :ref:`RID`, size\: :ref:`Vector2i`, texture_index\: :ref:`int`, offset\: :ref:`PackedInt32Array`\ ) | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`font_set_transform`\ (\ font_rid\: :ref:`RID`, transform\: :ref:`Transform2D`\ ) | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`font_set_underline_position`\ (\ font_rid\: :ref:`RID`, size\: :ref:`int`, underline_position\: :ref:`float`\ ) | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`font_set_underline_thickness`\ (\ font_rid\: :ref:`RID`, size\: :ref:`int`, underline_thickness\: :ref:`float`\ ) | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`font_set_variation_coordinates`\ (\ font_rid\: :ref:`RID`, variation_coordinates\: :ref:`Dictionary`\ ) | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`font_set_weight`\ (\ font_rid\: :ref:`RID`, weight\: :ref:`int`\ ) | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Dictionary` | :ref:`font_supported_feature_list`\ (\ font_rid\: :ref:`RID`\ ) |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Dictionary` | :ref:`font_supported_variation_list`\ (\ font_rid\: :ref:`RID`\ ) |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`String` | :ref:`format_number`\ (\ number\: :ref:`String`, language\: :ref:`String` = ""\ ) |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`free_rid`\ (\ rid\: :ref:`RID`\ ) | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`get_features`\ (\ ) |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Vector2` | :ref:`get_hex_code_box_size`\ (\ size\: :ref:`int`, index\: :ref:`int`\ ) |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`String` | :ref:`get_name`\ (\ ) |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`PackedByteArray` | :ref:`get_support_data`\ (\ ) |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`String` | :ref:`get_support_data_filename`\ (\ ) |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`String` | :ref:`get_support_data_info`\ (\ ) |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`has`\ (\ rid\: :ref:`RID`\ ) | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`has_feature`\ (\ feature\: :ref:`Feature`\ ) |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`is_confusable`\ (\ string\: :ref:`String`, dict\: :ref:`PackedStringArray`\ ) |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`is_locale_right_to_left`\ (\ locale\: :ref:`String`\ ) |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`is_valid_identifier`\ (\ string\: :ref:`String`\ ) |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`is_valid_letter`\ (\ unicode\: :ref:`int`\ ) |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`load_support_data`\ (\ filename\: :ref:`String`\ ) | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`name_to_tag`\ (\ name\: :ref:`String`\ ) |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`String` | :ref:`parse_number`\ (\ number\: :ref:`String`, language\: :ref:`String` = ""\ ) |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Array`\[:ref:`Vector3i`\] | :ref:`parse_structured_text`\ (\ parser_type\: :ref:`StructuredTextParser`, args\: :ref:`Array`, text\: :ref:`String`\ ) |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`String` | :ref:`percent_sign`\ (\ language\: :ref:`String` = ""\ ) |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`save_support_data`\ (\ filename\: :ref:`String`\ ) |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`shaped_get_span_count`\ (\ shaped\: :ref:`RID`\ ) |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Variant` | :ref:`shaped_get_span_embedded_object`\ (\ shaped\: :ref:`RID`, index\: :ref:`int`\ ) |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Variant` | :ref:`shaped_get_span_meta`\ (\ shaped\: :ref:`RID`, index\: :ref:`int`\ ) |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`shaped_set_span_update_font`\ (\ shaped\: :ref:`RID`, index\: :ref:`int`, fonts\: :ref:`Array`\[:ref:`RID`\], size\: :ref:`int`, opentype_features\: :ref:`Dictionary` = {}\ ) | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`shaped_text_add_object`\ (\ shaped\: :ref:`RID`, key\: :ref:`Variant`, size\: :ref:`Vector2`, inline_align\: :ref:`InlineAlignment` = 5, length\: :ref:`int` = 1, baseline\: :ref:`float` = 0.0\ ) | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`shaped_text_add_string`\ (\ shaped\: :ref:`RID`, text\: :ref:`String`, fonts\: :ref:`Array`\[:ref:`RID`\], size\: :ref:`int`, opentype_features\: :ref:`Dictionary` = {}, language\: :ref:`String` = "", meta\: :ref:`Variant` = null\ ) | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`shaped_text_clear`\ (\ rid\: :ref:`RID`\ ) | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`shaped_text_closest_character_pos`\ (\ shaped\: :ref:`RID`, pos\: :ref:`int`\ ) |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`shaped_text_draw`\ (\ shaped\: :ref:`RID`, canvas\: :ref:`RID`, pos\: :ref:`Vector2`, clip_l\: :ref:`float` = -1, clip_r\: :ref:`float` = -1, color\: :ref:`Color` = Color(1, 1, 1, 1)\ ) |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`shaped_text_draw_outline`\ (\ shaped\: :ref:`RID`, canvas\: :ref:`RID`, pos\: :ref:`Vector2`, clip_l\: :ref:`float` = -1, clip_r\: :ref:`float` = -1, outline_size\: :ref:`int` = 1, color\: :ref:`Color` = Color(1, 1, 1, 1)\ ) |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`float` | :ref:`shaped_text_fit_to_width`\ (\ shaped\: :ref:`RID`, width\: :ref:`float`, justification_flags\: |bitfield|\[:ref:`JustificationFlag`\] = 3\ ) | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`float` | :ref:`shaped_text_get_ascent`\ (\ shaped\: :ref:`RID`\ ) |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Dictionary` | :ref:`shaped_text_get_carets`\ (\ shaped\: :ref:`RID`, position\: :ref:`int`\ ) |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`PackedInt32Array` | :ref:`shaped_text_get_character_breaks`\ (\ shaped\: :ref:`RID`\ ) |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`shaped_text_get_custom_ellipsis`\ (\ shaped\: :ref:`RID`\ ) |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`String` | :ref:`shaped_text_get_custom_punctuation`\ (\ shaped\: :ref:`RID`\ ) |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`float` | :ref:`shaped_text_get_descent`\ (\ shaped\: :ref:`RID`\ ) |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Direction` | :ref:`shaped_text_get_direction`\ (\ shaped\: :ref:`RID`\ ) |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Direction` | :ref:`shaped_text_get_dominant_direction_in_range`\ (\ shaped\: :ref:`RID`, start\: :ref:`int`, end\: :ref:`int`\ ) |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`shaped_text_get_ellipsis_glyph_count`\ (\ shaped\: :ref:`RID`\ ) |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Array`\[:ref:`Dictionary`\] | :ref:`shaped_text_get_ellipsis_glyphs`\ (\ shaped\: :ref:`RID`\ ) |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`shaped_text_get_ellipsis_pos`\ (\ shaped\: :ref:`RID`\ ) |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`shaped_text_get_glyph_count`\ (\ shaped\: :ref:`RID`\ ) |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Array`\[:ref:`Dictionary`\] | :ref:`shaped_text_get_glyphs`\ (\ shaped\: :ref:`RID`\ ) |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Vector2` | :ref:`shaped_text_get_grapheme_bounds`\ (\ shaped\: :ref:`RID`, pos\: :ref:`int`\ ) |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Direction` | :ref:`shaped_text_get_inferred_direction`\ (\ shaped\: :ref:`RID`\ ) |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`PackedInt32Array` | :ref:`shaped_text_get_line_breaks`\ (\ shaped\: :ref:`RID`, width\: :ref:`float`, start\: :ref:`int` = 0, break_flags\: |bitfield|\[:ref:`LineBreakFlag`\] = 3\ ) |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`PackedInt32Array` | :ref:`shaped_text_get_line_breaks_adv`\ (\ shaped\: :ref:`RID`, width\: :ref:`PackedFloat32Array`, start\: :ref:`int` = 0, once\: :ref:`bool` = true, break_flags\: |bitfield|\[:ref:`LineBreakFlag`\] = 3\ ) |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`shaped_text_get_object_glyph`\ (\ shaped\: :ref:`RID`, key\: :ref:`Variant`\ ) |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Vector2i` | :ref:`shaped_text_get_object_range`\ (\ shaped\: :ref:`RID`, key\: :ref:`Variant`\ ) |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Rect2` | :ref:`shaped_text_get_object_rect`\ (\ shaped\: :ref:`RID`, key\: :ref:`Variant`\ ) |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Array` | :ref:`shaped_text_get_objects`\ (\ shaped\: :ref:`RID`\ ) |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Orientation` | :ref:`shaped_text_get_orientation`\ (\ shaped\: :ref:`RID`\ ) |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`RID` | :ref:`shaped_text_get_parent`\ (\ shaped\: :ref:`RID`\ ) |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`shaped_text_get_preserve_control`\ (\ shaped\: :ref:`RID`\ ) |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`shaped_text_get_preserve_invalid`\ (\ shaped\: :ref:`RID`\ ) |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Vector2i` | :ref:`shaped_text_get_range`\ (\ shaped\: :ref:`RID`\ ) |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`PackedVector2Array` | :ref:`shaped_text_get_selection`\ (\ shaped\: :ref:`RID`, start\: :ref:`int`, end\: :ref:`int`\ ) |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Vector2` | :ref:`shaped_text_get_size`\ (\ shaped\: :ref:`RID`\ ) |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`shaped_text_get_spacing`\ (\ shaped\: :ref:`RID`, spacing\: :ref:`SpacingType`\ ) |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`shaped_text_get_trim_pos`\ (\ shaped\: :ref:`RID`\ ) |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`float` | :ref:`shaped_text_get_underline_position`\ (\ shaped\: :ref:`RID`\ ) |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`float` | :ref:`shaped_text_get_underline_thickness`\ (\ shaped\: :ref:`RID`\ ) |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`float` | :ref:`shaped_text_get_width`\ (\ shaped\: :ref:`RID`\ ) |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`PackedInt32Array` | :ref:`shaped_text_get_word_breaks`\ (\ shaped\: :ref:`RID`, grapheme_flags\: |bitfield|\[:ref:`GraphemeFlag`\] = 264, skip_grapheme_flags\: |bitfield|\[:ref:`GraphemeFlag`\] = 4\ ) |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`shaped_text_has_visible_chars`\ (\ shaped\: :ref:`RID`\ ) |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`shaped_text_hit_test_grapheme`\ (\ shaped\: :ref:`RID`, coords\: :ref:`float`\ ) |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`shaped_text_hit_test_position`\ (\ shaped\: :ref:`RID`, coords\: :ref:`float`\ ) |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`shaped_text_is_ready`\ (\ shaped\: :ref:`RID`\ ) |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`shaped_text_next_character_pos`\ (\ shaped\: :ref:`RID`, pos\: :ref:`int`\ ) |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`shaped_text_next_grapheme_pos`\ (\ shaped\: :ref:`RID`, pos\: :ref:`int`\ ) |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`shaped_text_overrun_trim_to_width`\ (\ shaped\: :ref:`RID`, width\: :ref:`float` = 0, overrun_trim_flags\: |bitfield|\[:ref:`TextOverrunFlag`\] = 0\ ) | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`shaped_text_prev_character_pos`\ (\ shaped\: :ref:`RID`, pos\: :ref:`int`\ ) |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`shaped_text_prev_grapheme_pos`\ (\ shaped\: :ref:`RID`, pos\: :ref:`int`\ ) |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`shaped_text_resize_object`\ (\ shaped\: :ref:`RID`, key\: :ref:`Variant`, size\: :ref:`Vector2`, inline_align\: :ref:`InlineAlignment` = 5, baseline\: :ref:`float` = 0.0\ ) | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`shaped_text_set_bidi_override`\ (\ shaped\: :ref:`RID`, override\: :ref:`Array`\ ) | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`shaped_text_set_custom_ellipsis`\ (\ shaped\: :ref:`RID`, char\: :ref:`int`\ ) | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`shaped_text_set_custom_punctuation`\ (\ shaped\: :ref:`RID`, punct\: :ref:`String`\ ) | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`shaped_text_set_direction`\ (\ shaped\: :ref:`RID`, direction\: :ref:`Direction` = 0\ ) | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`shaped_text_set_orientation`\ (\ shaped\: :ref:`RID`, orientation\: :ref:`Orientation` = 0\ ) | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`shaped_text_set_preserve_control`\ (\ shaped\: :ref:`RID`, enabled\: :ref:`bool`\ ) | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`shaped_text_set_preserve_invalid`\ (\ shaped\: :ref:`RID`, enabled\: :ref:`bool`\ ) | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`shaped_text_set_spacing`\ (\ shaped\: :ref:`RID`, spacing\: :ref:`SpacingType`, value\: :ref:`int`\ ) | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`shaped_text_shape`\ (\ shaped\: :ref:`RID`\ ) | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Array`\[:ref:`Dictionary`\] | :ref:`shaped_text_sort_logical`\ (\ shaped\: :ref:`RID`\ ) | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`RID` | :ref:`shaped_text_substr`\ (\ shaped\: :ref:`RID`, start\: :ref:`int`, length\: :ref:`int`\ ) |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`float` | :ref:`shaped_text_tab_align`\ (\ shaped\: :ref:`RID`, tab_stops\: :ref:`PackedFloat32Array`\ ) | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`spoof_check`\ (\ string\: :ref:`String`\ ) |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`PackedInt32Array` | :ref:`string_get_character_breaks`\ (\ string\: :ref:`String`, language\: :ref:`String` = ""\ ) |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`PackedInt32Array` | :ref:`string_get_word_breaks`\ (\ string\: :ref:`String`, language\: :ref:`String` = "", chars_per_line\: :ref:`int` = 0\ ) |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`String` | :ref:`string_to_lower`\ (\ string\: :ref:`String`, language\: :ref:`String` = ""\ ) |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`String` | :ref:`string_to_title`\ (\ string\: :ref:`String`, language\: :ref:`String` = ""\ ) |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`String` | :ref:`string_to_upper`\ (\ string\: :ref:`String`, language\: :ref:`String` = ""\ ) |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`String` | :ref:`strip_diacritics`\ (\ string\: :ref:`String`\ ) |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`String` | :ref:`tag_to_name`\ (\ tag\: :ref:`int`\ ) |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`RID` | :ref:`create_font`\ (\ ) | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`RID` | :ref:`create_font_linked_variation`\ (\ font_rid\: :ref:`RID`\ ) | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`RID` | :ref:`create_shaped_text`\ (\ direction\: :ref:`Direction` = 0, orientation\: :ref:`Orientation` = 0\ ) | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`draw_hex_code_box`\ (\ canvas\: :ref:`RID`, size\: :ref:`int`, pos\: :ref:`Vector2`, index\: :ref:`int`, color\: :ref:`Color`\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`font_clear_glyphs`\ (\ font_rid\: :ref:`RID`, size\: :ref:`Vector2i`\ ) | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`font_clear_kerning_map`\ (\ font_rid\: :ref:`RID`, size\: :ref:`int`\ ) | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`font_clear_size_cache`\ (\ font_rid\: :ref:`RID`\ ) | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`font_clear_system_fallback_cache`\ (\ ) | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`font_clear_textures`\ (\ font_rid\: :ref:`RID`, size\: :ref:`Vector2i`\ ) | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`font_draw_glyph`\ (\ font_rid\: :ref:`RID`, canvas\: :ref:`RID`, size\: :ref:`int`, pos\: :ref:`Vector2`, index\: :ref:`int`, color\: :ref:`Color` = Color(1, 1, 1, 1), oversampling\: :ref:`float` = 0.0\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`font_draw_glyph_outline`\ (\ font_rid\: :ref:`RID`, canvas\: :ref:`RID`, size\: :ref:`int`, outline_size\: :ref:`int`, pos\: :ref:`Vector2`, index\: :ref:`int`, color\: :ref:`Color` = Color(1, 1, 1, 1), oversampling\: :ref:`float` = 0.0\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`FontAntialiasing` | :ref:`font_get_antialiasing`\ (\ font_rid\: :ref:`RID`\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`font_get_ascent`\ (\ font_rid\: :ref:`RID`, size\: :ref:`int`\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`font_get_baseline_offset`\ (\ font_rid\: :ref:`RID`\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`font_get_char_from_glyph_index`\ (\ font_rid\: :ref:`RID`, size\: :ref:`int`, glyph_index\: :ref:`int`\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`font_get_descent`\ (\ font_rid\: :ref:`RID`, size\: :ref:`int`\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`font_get_disable_embedded_bitmaps`\ (\ font_rid\: :ref:`RID`\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`font_get_embolden`\ (\ font_rid\: :ref:`RID`\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`font_get_face_count`\ (\ font_rid\: :ref:`RID`\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`font_get_face_index`\ (\ font_rid\: :ref:`RID`\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`font_get_fixed_size`\ (\ font_rid\: :ref:`RID`\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`FixedSizeScaleMode` | :ref:`font_get_fixed_size_scale_mode`\ (\ font_rid\: :ref:`RID`\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`font_get_generate_mipmaps`\ (\ font_rid\: :ref:`RID`\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`font_get_global_oversampling`\ (\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Vector2` | :ref:`font_get_glyph_advance`\ (\ font_rid\: :ref:`RID`, size\: :ref:`int`, glyph\: :ref:`int`\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Dictionary` | :ref:`font_get_glyph_contours`\ (\ font\: :ref:`RID`, size\: :ref:`int`, index\: :ref:`int`\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`font_get_glyph_index`\ (\ font_rid\: :ref:`RID`, size\: :ref:`int`, char\: :ref:`int`, variation_selector\: :ref:`int`\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`PackedInt32Array` | :ref:`font_get_glyph_list`\ (\ font_rid\: :ref:`RID`, size\: :ref:`Vector2i`\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Vector2` | :ref:`font_get_glyph_offset`\ (\ font_rid\: :ref:`RID`, size\: :ref:`Vector2i`, glyph\: :ref:`int`\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Vector2` | :ref:`font_get_glyph_size`\ (\ font_rid\: :ref:`RID`, size\: :ref:`Vector2i`, glyph\: :ref:`int`\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`font_get_glyph_texture_idx`\ (\ font_rid\: :ref:`RID`, size\: :ref:`Vector2i`, glyph\: :ref:`int`\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`RID` | :ref:`font_get_glyph_texture_rid`\ (\ font_rid\: :ref:`RID`, size\: :ref:`Vector2i`, glyph\: :ref:`int`\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Vector2` | :ref:`font_get_glyph_texture_size`\ (\ font_rid\: :ref:`RID`, size\: :ref:`Vector2i`, glyph\: :ref:`int`\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Rect2` | :ref:`font_get_glyph_uv_rect`\ (\ font_rid\: :ref:`RID`, size\: :ref:`Vector2i`, glyph\: :ref:`int`\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Hinting` | :ref:`font_get_hinting`\ (\ font_rid\: :ref:`RID`\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`font_get_keep_rounding_remainders`\ (\ font_rid\: :ref:`RID`\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Vector2` | :ref:`font_get_kerning`\ (\ font_rid\: :ref:`RID`, size\: :ref:`int`, glyph_pair\: :ref:`Vector2i`\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Array`\[:ref:`Vector2i`\] | :ref:`font_get_kerning_list`\ (\ font_rid\: :ref:`RID`, size\: :ref:`int`\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`font_get_language_support_override`\ (\ font_rid\: :ref:`RID`, language\: :ref:`String`\ ) | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`PackedStringArray` | :ref:`font_get_language_support_overrides`\ (\ font_rid\: :ref:`RID`\ ) | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`font_get_msdf_pixel_range`\ (\ font_rid\: :ref:`RID`\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`font_get_msdf_size`\ (\ font_rid\: :ref:`RID`\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`font_get_name`\ (\ font_rid\: :ref:`RID`\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Dictionary` | :ref:`font_get_opentype_feature_overrides`\ (\ font_rid\: :ref:`RID`\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Dictionary` | :ref:`font_get_ot_name_strings`\ (\ font_rid\: :ref:`RID`\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`font_get_oversampling`\ (\ font_rid\: :ref:`RID`\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`font_get_scale`\ (\ font_rid\: :ref:`RID`, size\: :ref:`int`\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`font_get_script_support_override`\ (\ font_rid\: :ref:`RID`, script\: :ref:`String`\ ) | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`PackedStringArray` | :ref:`font_get_script_support_overrides`\ (\ font_rid\: :ref:`RID`\ ) | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Array`\[:ref:`Dictionary`\] | :ref:`font_get_size_cache_info`\ (\ font_rid\: :ref:`RID`\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Array`\[:ref:`Vector2i`\] | :ref:`font_get_size_cache_list`\ (\ font_rid\: :ref:`RID`\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`font_get_spacing`\ (\ font_rid\: :ref:`RID`, spacing\: :ref:`SpacingType`\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`font_get_stretch`\ (\ font_rid\: :ref:`RID`\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |bitfield|\[:ref:`FontStyle`\] | :ref:`font_get_style`\ (\ font_rid\: :ref:`RID`\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`font_get_style_name`\ (\ font_rid\: :ref:`RID`\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`SubpixelPositioning` | :ref:`font_get_subpixel_positioning`\ (\ font_rid\: :ref:`RID`\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`font_get_supported_chars`\ (\ font_rid\: :ref:`RID`\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`PackedInt32Array` | :ref:`font_get_supported_glyphs`\ (\ font_rid\: :ref:`RID`\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`font_get_texture_count`\ (\ font_rid\: :ref:`RID`, size\: :ref:`Vector2i`\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Image` | :ref:`font_get_texture_image`\ (\ font_rid\: :ref:`RID`, size\: :ref:`Vector2i`, texture_index\: :ref:`int`\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`PackedInt32Array` | :ref:`font_get_texture_offsets`\ (\ font_rid\: :ref:`RID`, size\: :ref:`Vector2i`, texture_index\: :ref:`int`\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Transform2D` | :ref:`font_get_transform`\ (\ font_rid\: :ref:`RID`\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`font_get_underline_position`\ (\ font_rid\: :ref:`RID`, size\: :ref:`int`\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`font_get_underline_thickness`\ (\ font_rid\: :ref:`RID`, size\: :ref:`int`\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Dictionary` | :ref:`font_get_variation_coordinates`\ (\ font_rid\: :ref:`RID`\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`font_get_weight`\ (\ font_rid\: :ref:`RID`\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`font_has_char`\ (\ font_rid\: :ref:`RID`, char\: :ref:`int`\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`font_is_allow_system_fallback`\ (\ font_rid\: :ref:`RID`\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`font_is_force_autohinter`\ (\ font_rid\: :ref:`RID`\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`font_is_language_supported`\ (\ font_rid\: :ref:`RID`, language\: :ref:`String`\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`font_is_modulate_color_glyphs`\ (\ font_rid\: :ref:`RID`\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`font_is_multichannel_signed_distance_field`\ (\ font_rid\: :ref:`RID`\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`font_is_script_supported`\ (\ font_rid\: :ref:`RID`, script\: :ref:`String`\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`font_remove_glyph`\ (\ font_rid\: :ref:`RID`, size\: :ref:`Vector2i`, glyph\: :ref:`int`\ ) | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`font_remove_kerning`\ (\ font_rid\: :ref:`RID`, size\: :ref:`int`, glyph_pair\: :ref:`Vector2i`\ ) | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`font_remove_language_support_override`\ (\ font_rid\: :ref:`RID`, language\: :ref:`String`\ ) | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`font_remove_script_support_override`\ (\ font_rid\: :ref:`RID`, script\: :ref:`String`\ ) | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`font_remove_size_cache`\ (\ font_rid\: :ref:`RID`, size\: :ref:`Vector2i`\ ) | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`font_remove_texture`\ (\ font_rid\: :ref:`RID`, size\: :ref:`Vector2i`, texture_index\: :ref:`int`\ ) | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`font_render_glyph`\ (\ font_rid\: :ref:`RID`, size\: :ref:`Vector2i`, index\: :ref:`int`\ ) | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`font_render_range`\ (\ font_rid\: :ref:`RID`, size\: :ref:`Vector2i`, start\: :ref:`int`, end\: :ref:`int`\ ) | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`font_set_allow_system_fallback`\ (\ font_rid\: :ref:`RID`, allow_system_fallback\: :ref:`bool`\ ) | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`font_set_antialiasing`\ (\ font_rid\: :ref:`RID`, antialiasing\: :ref:`FontAntialiasing`\ ) | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`font_set_ascent`\ (\ font_rid\: :ref:`RID`, size\: :ref:`int`, ascent\: :ref:`float`\ ) | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`font_set_baseline_offset`\ (\ font_rid\: :ref:`RID`, baseline_offset\: :ref:`float`\ ) | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`font_set_data`\ (\ font_rid\: :ref:`RID`, data\: :ref:`PackedByteArray`\ ) | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`font_set_descent`\ (\ font_rid\: :ref:`RID`, size\: :ref:`int`, descent\: :ref:`float`\ ) | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`font_set_disable_embedded_bitmaps`\ (\ font_rid\: :ref:`RID`, disable_embedded_bitmaps\: :ref:`bool`\ ) | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`font_set_embolden`\ (\ font_rid\: :ref:`RID`, strength\: :ref:`float`\ ) | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`font_set_face_index`\ (\ font_rid\: :ref:`RID`, face_index\: :ref:`int`\ ) | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`font_set_fixed_size`\ (\ font_rid\: :ref:`RID`, fixed_size\: :ref:`int`\ ) | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`font_set_fixed_size_scale_mode`\ (\ font_rid\: :ref:`RID`, fixed_size_scale_mode\: :ref:`FixedSizeScaleMode`\ ) | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`font_set_force_autohinter`\ (\ font_rid\: :ref:`RID`, force_autohinter\: :ref:`bool`\ ) | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`font_set_generate_mipmaps`\ (\ font_rid\: :ref:`RID`, generate_mipmaps\: :ref:`bool`\ ) | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`font_set_global_oversampling`\ (\ oversampling\: :ref:`float`\ ) | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`font_set_glyph_advance`\ (\ font_rid\: :ref:`RID`, size\: :ref:`int`, glyph\: :ref:`int`, advance\: :ref:`Vector2`\ ) | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`font_set_glyph_offset`\ (\ font_rid\: :ref:`RID`, size\: :ref:`Vector2i`, glyph\: :ref:`int`, offset\: :ref:`Vector2`\ ) | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`font_set_glyph_size`\ (\ font_rid\: :ref:`RID`, size\: :ref:`Vector2i`, glyph\: :ref:`int`, gl_size\: :ref:`Vector2`\ ) | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`font_set_glyph_texture_idx`\ (\ font_rid\: :ref:`RID`, size\: :ref:`Vector2i`, glyph\: :ref:`int`, texture_idx\: :ref:`int`\ ) | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`font_set_glyph_uv_rect`\ (\ font_rid\: :ref:`RID`, size\: :ref:`Vector2i`, glyph\: :ref:`int`, uv_rect\: :ref:`Rect2`\ ) | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`font_set_hinting`\ (\ font_rid\: :ref:`RID`, hinting\: :ref:`Hinting`\ ) | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`font_set_keep_rounding_remainders`\ (\ font_rid\: :ref:`RID`, keep_rounding_remainders\: :ref:`bool`\ ) | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`font_set_kerning`\ (\ font_rid\: :ref:`RID`, size\: :ref:`int`, glyph_pair\: :ref:`Vector2i`, kerning\: :ref:`Vector2`\ ) | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`font_set_language_support_override`\ (\ font_rid\: :ref:`RID`, language\: :ref:`String`, supported\: :ref:`bool`\ ) | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`font_set_modulate_color_glyphs`\ (\ font_rid\: :ref:`RID`, force_autohinter\: :ref:`bool`\ ) | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`font_set_msdf_pixel_range`\ (\ font_rid\: :ref:`RID`, msdf_pixel_range\: :ref:`int`\ ) | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`font_set_msdf_size`\ (\ font_rid\: :ref:`RID`, msdf_size\: :ref:`int`\ ) | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`font_set_multichannel_signed_distance_field`\ (\ font_rid\: :ref:`RID`, msdf\: :ref:`bool`\ ) | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`font_set_name`\ (\ font_rid\: :ref:`RID`, name\: :ref:`String`\ ) | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`font_set_opentype_feature_overrides`\ (\ font_rid\: :ref:`RID`, overrides\: :ref:`Dictionary`\ ) | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`font_set_oversampling`\ (\ font_rid\: :ref:`RID`, oversampling\: :ref:`float`\ ) | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`font_set_scale`\ (\ font_rid\: :ref:`RID`, size\: :ref:`int`, scale\: :ref:`float`\ ) | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`font_set_script_support_override`\ (\ font_rid\: :ref:`RID`, script\: :ref:`String`, supported\: :ref:`bool`\ ) | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`font_set_spacing`\ (\ font_rid\: :ref:`RID`, spacing\: :ref:`SpacingType`, value\: :ref:`int`\ ) | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`font_set_stretch`\ (\ font_rid\: :ref:`RID`, weight\: :ref:`int`\ ) | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`font_set_style`\ (\ font_rid\: :ref:`RID`, style\: |bitfield|\[:ref:`FontStyle`\]\ ) | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`font_set_style_name`\ (\ font_rid\: :ref:`RID`, name\: :ref:`String`\ ) | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`font_set_subpixel_positioning`\ (\ font_rid\: :ref:`RID`, subpixel_positioning\: :ref:`SubpixelPositioning`\ ) | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`font_set_texture_image`\ (\ font_rid\: :ref:`RID`, size\: :ref:`Vector2i`, texture_index\: :ref:`int`, image\: :ref:`Image`\ ) | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`font_set_texture_offsets`\ (\ font_rid\: :ref:`RID`, size\: :ref:`Vector2i`, texture_index\: :ref:`int`, offset\: :ref:`PackedInt32Array`\ ) | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`font_set_transform`\ (\ font_rid\: :ref:`RID`, transform\: :ref:`Transform2D`\ ) | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`font_set_underline_position`\ (\ font_rid\: :ref:`RID`, size\: :ref:`int`, underline_position\: :ref:`float`\ ) | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`font_set_underline_thickness`\ (\ font_rid\: :ref:`RID`, size\: :ref:`int`, underline_thickness\: :ref:`float`\ ) | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`font_set_variation_coordinates`\ (\ font_rid\: :ref:`RID`, variation_coordinates\: :ref:`Dictionary`\ ) | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`font_set_weight`\ (\ font_rid\: :ref:`RID`, weight\: :ref:`int`\ ) | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Dictionary` | :ref:`font_supported_feature_list`\ (\ font_rid\: :ref:`RID`\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Dictionary` | :ref:`font_supported_variation_list`\ (\ font_rid\: :ref:`RID`\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`format_number`\ (\ number\: :ref:`String`, language\: :ref:`String` = ""\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`free_rid`\ (\ rid\: :ref:`RID`\ ) | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`get_features`\ (\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Vector2` | :ref:`get_hex_code_box_size`\ (\ size\: :ref:`int`, index\: :ref:`int`\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`get_name`\ (\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`PackedByteArray` | :ref:`get_support_data`\ (\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`get_support_data_filename`\ (\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`get_support_data_info`\ (\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`has`\ (\ rid\: :ref:`RID`\ ) | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`has_feature`\ (\ feature\: :ref:`Feature`\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`is_confusable`\ (\ string\: :ref:`String`, dict\: :ref:`PackedStringArray`\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`is_locale_right_to_left`\ (\ locale\: :ref:`String`\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`is_valid_identifier`\ (\ string\: :ref:`String`\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`is_valid_letter`\ (\ unicode\: :ref:`int`\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`load_support_data`\ (\ filename\: :ref:`String`\ ) | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`name_to_tag`\ (\ name\: :ref:`String`\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`parse_number`\ (\ number\: :ref:`String`, language\: :ref:`String` = ""\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Array`\[:ref:`Vector3i`\] | :ref:`parse_structured_text`\ (\ parser_type\: :ref:`StructuredTextParser`, args\: :ref:`Array`, text\: :ref:`String`\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`percent_sign`\ (\ language\: :ref:`String` = ""\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`save_support_data`\ (\ filename\: :ref:`String`\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`shaped_get_run_count`\ (\ shaped\: :ref:`RID`\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Direction` | :ref:`shaped_get_run_direction`\ (\ shaped\: :ref:`RID`, index\: :ref:`int`\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`RID` | :ref:`shaped_get_run_font_rid`\ (\ shaped\: :ref:`RID`, index\: :ref:`int`\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`shaped_get_run_font_size`\ (\ shaped\: :ref:`RID`, index\: :ref:`int`\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`shaped_get_run_language`\ (\ shaped\: :ref:`RID`, index\: :ref:`int`\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Variant` | :ref:`shaped_get_run_object`\ (\ shaped\: :ref:`RID`, index\: :ref:`int`\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Vector2i` | :ref:`shaped_get_run_range`\ (\ shaped\: :ref:`RID`, index\: :ref:`int`\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`shaped_get_run_text`\ (\ shaped\: :ref:`RID`, index\: :ref:`int`\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`shaped_get_span_count`\ (\ shaped\: :ref:`RID`\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Variant` | :ref:`shaped_get_span_embedded_object`\ (\ shaped\: :ref:`RID`, index\: :ref:`int`\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Variant` | :ref:`shaped_get_span_meta`\ (\ shaped\: :ref:`RID`, index\: :ref:`int`\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Variant` | :ref:`shaped_get_span_object`\ (\ shaped\: :ref:`RID`, index\: :ref:`int`\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`shaped_get_span_text`\ (\ shaped\: :ref:`RID`, index\: :ref:`int`\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`shaped_get_text`\ (\ shaped\: :ref:`RID`\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`shaped_set_span_update_font`\ (\ shaped\: :ref:`RID`, index\: :ref:`int`, fonts\: :ref:`Array`\[:ref:`RID`\], size\: :ref:`int`, opentype_features\: :ref:`Dictionary` = {}\ ) | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`shaped_text_add_object`\ (\ shaped\: :ref:`RID`, key\: :ref:`Variant`, size\: :ref:`Vector2`, inline_align\: :ref:`InlineAlignment` = 5, length\: :ref:`int` = 1, baseline\: :ref:`float` = 0.0\ ) | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`shaped_text_add_string`\ (\ shaped\: :ref:`RID`, text\: :ref:`String`, fonts\: :ref:`Array`\[:ref:`RID`\], size\: :ref:`int`, opentype_features\: :ref:`Dictionary` = {}, language\: :ref:`String` = "", meta\: :ref:`Variant` = null\ ) | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`shaped_text_clear`\ (\ rid\: :ref:`RID`\ ) | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`shaped_text_closest_character_pos`\ (\ shaped\: :ref:`RID`, pos\: :ref:`int`\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`shaped_text_draw`\ (\ shaped\: :ref:`RID`, canvas\: :ref:`RID`, pos\: :ref:`Vector2`, clip_l\: :ref:`float` = -1, clip_r\: :ref:`float` = -1, color\: :ref:`Color` = Color(1, 1, 1, 1), oversampling\: :ref:`float` = 0.0\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`shaped_text_draw_outline`\ (\ shaped\: :ref:`RID`, canvas\: :ref:`RID`, pos\: :ref:`Vector2`, clip_l\: :ref:`float` = -1, clip_r\: :ref:`float` = -1, outline_size\: :ref:`int` = 1, color\: :ref:`Color` = Color(1, 1, 1, 1), oversampling\: :ref:`float` = 0.0\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`shaped_text_fit_to_width`\ (\ shaped\: :ref:`RID`, width\: :ref:`float`, justification_flags\: |bitfield|\[:ref:`JustificationFlag`\] = 3\ ) | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`shaped_text_get_ascent`\ (\ shaped\: :ref:`RID`\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Dictionary` | :ref:`shaped_text_get_carets`\ (\ shaped\: :ref:`RID`, position\: :ref:`int`\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`PackedInt32Array` | :ref:`shaped_text_get_character_breaks`\ (\ shaped\: :ref:`RID`\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`shaped_text_get_custom_ellipsis`\ (\ shaped\: :ref:`RID`\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`shaped_text_get_custom_punctuation`\ (\ shaped\: :ref:`RID`\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`shaped_text_get_descent`\ (\ shaped\: :ref:`RID`\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Direction` | :ref:`shaped_text_get_direction`\ (\ shaped\: :ref:`RID`\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Direction` | :ref:`shaped_text_get_dominant_direction_in_range`\ (\ shaped\: :ref:`RID`, start\: :ref:`int`, end\: :ref:`int`\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`shaped_text_get_ellipsis_glyph_count`\ (\ shaped\: :ref:`RID`\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Array`\[:ref:`Dictionary`\] | :ref:`shaped_text_get_ellipsis_glyphs`\ (\ shaped\: :ref:`RID`\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`shaped_text_get_ellipsis_pos`\ (\ shaped\: :ref:`RID`\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`shaped_text_get_glyph_count`\ (\ shaped\: :ref:`RID`\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Array`\[:ref:`Dictionary`\] | :ref:`shaped_text_get_glyphs`\ (\ shaped\: :ref:`RID`\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Vector2` | :ref:`shaped_text_get_grapheme_bounds`\ (\ shaped\: :ref:`RID`, pos\: :ref:`int`\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Direction` | :ref:`shaped_text_get_inferred_direction`\ (\ shaped\: :ref:`RID`\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`PackedInt32Array` | :ref:`shaped_text_get_line_breaks`\ (\ shaped\: :ref:`RID`, width\: :ref:`float`, start\: :ref:`int` = 0, break_flags\: |bitfield|\[:ref:`LineBreakFlag`\] = 3\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`PackedInt32Array` | :ref:`shaped_text_get_line_breaks_adv`\ (\ shaped\: :ref:`RID`, width\: :ref:`PackedFloat32Array`, start\: :ref:`int` = 0, once\: :ref:`bool` = true, break_flags\: |bitfield|\[:ref:`LineBreakFlag`\] = 3\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`shaped_text_get_object_glyph`\ (\ shaped\: :ref:`RID`, key\: :ref:`Variant`\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Vector2i` | :ref:`shaped_text_get_object_range`\ (\ shaped\: :ref:`RID`, key\: :ref:`Variant`\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Rect2` | :ref:`shaped_text_get_object_rect`\ (\ shaped\: :ref:`RID`, key\: :ref:`Variant`\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Array` | :ref:`shaped_text_get_objects`\ (\ shaped\: :ref:`RID`\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Orientation` | :ref:`shaped_text_get_orientation`\ (\ shaped\: :ref:`RID`\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`RID` | :ref:`shaped_text_get_parent`\ (\ shaped\: :ref:`RID`\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`shaped_text_get_preserve_control`\ (\ shaped\: :ref:`RID`\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`shaped_text_get_preserve_invalid`\ (\ shaped\: :ref:`RID`\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Vector2i` | :ref:`shaped_text_get_range`\ (\ shaped\: :ref:`RID`\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`PackedVector2Array` | :ref:`shaped_text_get_selection`\ (\ shaped\: :ref:`RID`, start\: :ref:`int`, end\: :ref:`int`\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Vector2` | :ref:`shaped_text_get_size`\ (\ shaped\: :ref:`RID`\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`shaped_text_get_spacing`\ (\ shaped\: :ref:`RID`, spacing\: :ref:`SpacingType`\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`shaped_text_get_trim_pos`\ (\ shaped\: :ref:`RID`\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`shaped_text_get_underline_position`\ (\ shaped\: :ref:`RID`\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`shaped_text_get_underline_thickness`\ (\ shaped\: :ref:`RID`\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`shaped_text_get_width`\ (\ shaped\: :ref:`RID`\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`PackedInt32Array` | :ref:`shaped_text_get_word_breaks`\ (\ shaped\: :ref:`RID`, grapheme_flags\: |bitfield|\[:ref:`GraphemeFlag`\] = 264, skip_grapheme_flags\: |bitfield|\[:ref:`GraphemeFlag`\] = 4\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`shaped_text_has_visible_chars`\ (\ shaped\: :ref:`RID`\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`shaped_text_hit_test_grapheme`\ (\ shaped\: :ref:`RID`, coords\: :ref:`float`\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`shaped_text_hit_test_position`\ (\ shaped\: :ref:`RID`, coords\: :ref:`float`\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`shaped_text_is_ready`\ (\ shaped\: :ref:`RID`\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`shaped_text_next_character_pos`\ (\ shaped\: :ref:`RID`, pos\: :ref:`int`\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`shaped_text_next_grapheme_pos`\ (\ shaped\: :ref:`RID`, pos\: :ref:`int`\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`shaped_text_overrun_trim_to_width`\ (\ shaped\: :ref:`RID`, width\: :ref:`float` = 0, overrun_trim_flags\: |bitfield|\[:ref:`TextOverrunFlag`\] = 0\ ) | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`shaped_text_prev_character_pos`\ (\ shaped\: :ref:`RID`, pos\: :ref:`int`\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`shaped_text_prev_grapheme_pos`\ (\ shaped\: :ref:`RID`, pos\: :ref:`int`\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`shaped_text_resize_object`\ (\ shaped\: :ref:`RID`, key\: :ref:`Variant`, size\: :ref:`Vector2`, inline_align\: :ref:`InlineAlignment` = 5, baseline\: :ref:`float` = 0.0\ ) | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`shaped_text_set_bidi_override`\ (\ shaped\: :ref:`RID`, override\: :ref:`Array`\ ) | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`shaped_text_set_custom_ellipsis`\ (\ shaped\: :ref:`RID`, char\: :ref:`int`\ ) | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`shaped_text_set_custom_punctuation`\ (\ shaped\: :ref:`RID`, punct\: :ref:`String`\ ) | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`shaped_text_set_direction`\ (\ shaped\: :ref:`RID`, direction\: :ref:`Direction` = 0\ ) | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`shaped_text_set_orientation`\ (\ shaped\: :ref:`RID`, orientation\: :ref:`Orientation` = 0\ ) | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`shaped_text_set_preserve_control`\ (\ shaped\: :ref:`RID`, enabled\: :ref:`bool`\ ) | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`shaped_text_set_preserve_invalid`\ (\ shaped\: :ref:`RID`, enabled\: :ref:`bool`\ ) | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`shaped_text_set_spacing`\ (\ shaped\: :ref:`RID`, spacing\: :ref:`SpacingType`, value\: :ref:`int`\ ) | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`shaped_text_shape`\ (\ shaped\: :ref:`RID`\ ) | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Array`\[:ref:`Dictionary`\] | :ref:`shaped_text_sort_logical`\ (\ shaped\: :ref:`RID`\ ) | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`RID` | :ref:`shaped_text_substr`\ (\ shaped\: :ref:`RID`, start\: :ref:`int`, length\: :ref:`int`\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`shaped_text_tab_align`\ (\ shaped\: :ref:`RID`, tab_stops\: :ref:`PackedFloat32Array`\ ) | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`spoof_check`\ (\ string\: :ref:`String`\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`PackedInt32Array` | :ref:`string_get_character_breaks`\ (\ string\: :ref:`String`, language\: :ref:`String` = ""\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`PackedInt32Array` | :ref:`string_get_word_breaks`\ (\ string\: :ref:`String`, language\: :ref:`String` = "", chars_per_line\: :ref:`int` = 0\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`string_to_lower`\ (\ string\: :ref:`String`, language\: :ref:`String` = ""\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`string_to_title`\ (\ string\: :ref:`String`, language\: :ref:`String` = ""\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`string_to_upper`\ (\ string\: :ref:`String`, language\: :ref:`String` = ""\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`strip_diacritics`\ (\ string\: :ref:`String`\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`tag_to_name`\ (\ tag\: :ref:`int`\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ .. rst-class:: classref-section-separator @@ -525,7 +555,7 @@ Font glyphs are rasterized as 8-bit grayscale anti-aliased bitmaps. Font glyphs are rasterized for LCD screens. -LCD subpixel layout is determined by the value of ``gui/theme/lcd_subpixel_layout`` project settings. +LCD subpixel layout is determined by the value of the :ref:`ProjectSettings.gui/theme/lcd_subpixel_layout` setting. LCD subpixel anti-aliasing mode is suitable only for rendering horizontal, unscaled text in 2D. @@ -837,6 +867,8 @@ Should be used only in conjunction with :ref:`BREAK_WORD_BOUND` **BREAK_TRIM_EDGE_SPACES** = ``16`` +**Deprecated:** Use ``BREAK_TRIM_START_EDGE_SPACES | BREAK_TRIM_END_EDGE_SPACES`` instead. + Remove edge spaces from the broken line segments. .. _class_TextServer_constant_BREAK_TRIM_INDENT: @@ -847,6 +879,26 @@ Remove edge spaces from the broken line segments. Subtract first line indentation width from all lines after the first one. +.. _class_TextServer_constant_BREAK_TRIM_START_EDGE_SPACES: + +.. rst-class:: classref-enumeration-constant + +:ref:`LineBreakFlag` **BREAK_TRIM_START_EDGE_SPACES** = ``64`` + +Remove spaces and line break characters from the start of broken line segments. + +E.g, after line breaking, the second segment of the following text ``test \n next``, is ``next`` if the flag is set, and `` next`` if it is not. + +.. _class_TextServer_constant_BREAK_TRIM_END_EDGE_SPACES: + +.. rst-class:: classref-enumeration-constant + +:ref:`LineBreakFlag` **BREAK_TRIM_END_EDGE_SPACES** = ``128`` + +Remove spaces and line break characters from the end of broken line segments. + +E.g, after line breaking, the first segment of the following text ``test \n next``, is ``test`` if the flag is set, and ``test \n`` if it is not. + .. rst-class:: classref-item-separator ---- @@ -939,7 +991,7 @@ Trims the text per word. :ref:`OverrunBehavior` **OVERRUN_TRIM_ELLIPSIS** = ``3`` -Trims the text per character and adds an ellipsis to indicate that parts are hidden. +Trims the text per character and adds an ellipsis to indicate that parts are hidden if trimmed text is 6 characters or longer. .. _class_TextServer_constant_OVERRUN_TRIM_WORD_ELLIPSIS: @@ -947,7 +999,23 @@ Trims the text per character and adds an ellipsis to indicate that parts are hid :ref:`OverrunBehavior` **OVERRUN_TRIM_WORD_ELLIPSIS** = ``4`` -Trims the text per word and adds an ellipsis to indicate that parts are hidden. +Trims the text per word and adds an ellipsis to indicate that parts are hidden if trimmed text is 6 characters or longer. + +.. _class_TextServer_constant_OVERRUN_TRIM_ELLIPSIS_FORCE: + +.. rst-class:: classref-enumeration-constant + +:ref:`OverrunBehavior` **OVERRUN_TRIM_ELLIPSIS_FORCE** = ``5`` + +Trims the text per character and adds an ellipsis to indicate that parts are hidden regardless of trimmed text length. + +.. _class_TextServer_constant_OVERRUN_TRIM_WORD_ELLIPSIS_FORCE: + +.. rst-class:: classref-enumeration-constant + +:ref:`OverrunBehavior` **OVERRUN_TRIM_WORD_ELLIPSIS_FORCE** = ``6`` + +Trims the text per word and adds an ellipsis to indicate that parts are hidden regardless of trimmed text length. .. rst-class:: classref-item-separator @@ -1219,7 +1287,7 @@ Glyph horizontal position is rounded to one quarter of the pixel size, each glyp :ref:`SubpixelPositioning` **SUBPIXEL_POSITIONING_ONE_HALF_MAX_SIZE** = ``20`` -Maximum font size which will use one half of the pixel subpixel positioning in :ref:`SUBPIXEL_POSITIONING_AUTO` mode. +Maximum font size which will use "one half of the pixel" subpixel positioning in :ref:`SUBPIXEL_POSITIONING_AUTO` mode. .. _class_TextServer_constant_SUBPIXEL_POSITIONING_ONE_QUARTER_MAX_SIZE: @@ -1227,7 +1295,7 @@ Maximum font size which will use one half of the pixel subpixel positioning in : :ref:`SubpixelPositioning` **SUBPIXEL_POSITIONING_ONE_QUARTER_MAX_SIZE** = ``16`` -Maximum font size which will use one quarter of the pixel subpixel positioning in :ref:`SUBPIXEL_POSITIONING_AUTO` mode. +Maximum font size which will use "one quarter of the pixel" subpixel positioning in :ref:`SUBPIXEL_POSITIONING_AUTO` mode. .. rst-class:: classref-item-separator @@ -1475,7 +1543,7 @@ Font is italic or oblique. :ref:`FontStyle` **FONT_FIXED_WIDTH** = ``4`` -Font have fixed-width characters. +Font has fixed-width characters (also known as monospace). .. rst-class:: classref-item-separator @@ -1676,6 +1744,18 @@ Removes all font sizes from the cache entry. ---- +.. _class_TextServer_method_font_clear_system_fallback_cache: + +.. rst-class:: classref-method + +|void| **font_clear_system_fallback_cache**\ (\ ) :ref:`🔗` + +Frees all automatically loaded system fonts. + +.. rst-class:: classref-item-separator + +---- + .. _class_TextServer_method_font_clear_textures: .. rst-class:: classref-method @@ -1694,9 +1774,9 @@ Removes all textures from font cache entry. .. rst-class:: classref-method -|void| **font_draw_glyph**\ (\ font_rid\: :ref:`RID`, canvas\: :ref:`RID`, size\: :ref:`int`, pos\: :ref:`Vector2`, index\: :ref:`int`, color\: :ref:`Color` = Color(1, 1, 1, 1)\ ) |const| :ref:`🔗` +|void| **font_draw_glyph**\ (\ font_rid\: :ref:`RID`, canvas\: :ref:`RID`, size\: :ref:`int`, pos\: :ref:`Vector2`, index\: :ref:`int`, color\: :ref:`Color` = Color(1, 1, 1, 1), oversampling\: :ref:`float` = 0.0\ ) |const| :ref:`🔗` -Draws single glyph into a canvas item at the position, using ``font_rid`` at the size ``size``. +Draws single glyph into a canvas item at the position, using ``font_rid`` at the size ``size``. If ``oversampling`` is greater than zero, it is used as font oversampling factor, otherwise viewport oversampling settings are used. \ **Note:** Glyph index is specific to the font, use glyphs indices returned by :ref:`shaped_text_get_glyphs()` or :ref:`font_get_glyph_index()`. @@ -1710,9 +1790,9 @@ Draws single glyph into a canvas item at the position, using ``font_rid`` at the .. rst-class:: classref-method -|void| **font_draw_glyph_outline**\ (\ font_rid\: :ref:`RID`, canvas\: :ref:`RID`, size\: :ref:`int`, outline_size\: :ref:`int`, pos\: :ref:`Vector2`, index\: :ref:`int`, color\: :ref:`Color` = Color(1, 1, 1, 1)\ ) |const| :ref:`🔗` +|void| **font_draw_glyph_outline**\ (\ font_rid\: :ref:`RID`, canvas\: :ref:`RID`, size\: :ref:`int`, outline_size\: :ref:`int`, pos\: :ref:`Vector2`, index\: :ref:`int`, color\: :ref:`Color` = Color(1, 1, 1, 1), oversampling\: :ref:`float` = 0.0\ ) |const| :ref:`🔗` -Draws single glyph outline of size ``outline_size`` into a canvas item at the position, using ``font_rid`` at the size ``size``. +Draws single glyph outline of size ``outline_size`` into a canvas item at the position, using ``font_rid`` at the size ``size``. If ``oversampling`` is greater than zero, it is used as font oversampling factor, otherwise viewport oversampling settings are used. \ **Note:** Glyph index is specific to the font, use glyphs indices returned by :ref:`shaped_text_get_glyphs()` or :ref:`font_get_glyph_index()`. @@ -1872,7 +1952,9 @@ Returns ``true`` if font texture mipmap generation is enabled. :ref:`float` **font_get_global_oversampling**\ (\ ) |const| :ref:`🔗` -Returns the font oversampling factor, shared by all fonts in the TextServer. +**Deprecated:** Use :ref:`Viewport` oversampling, or the ``oversampling`` argument of the ``draw_*`` methods instead. + +Deprecated. This method always returns ``1.0``. .. rst-class:: classref-item-separator @@ -2158,7 +2240,7 @@ Returns :ref:`Dictionary` with OpenType font name strings (loc :ref:`float` **font_get_oversampling**\ (\ font_rid\: :ref:`RID`\ ) |const| :ref:`🔗` -Returns font oversampling factor, if set to ``0.0`` global oversampling factor is used instead. Used by dynamic fonts only. +Returns oversampling factor override. If set to a positive value, overrides the oversampling factor of the viewport this font is used in. See :ref:`Viewport.oversampling`. This value doesn't override the ``oversampling`` parameter of ``draw_*`` methods. Used by dynamic fonts only. .. rst-class:: classref-item-separator @@ -2200,6 +2282,18 @@ Returns list of script support overrides. ---- +.. _class_TextServer_method_font_get_size_cache_info: + +.. rst-class:: classref-method + +:ref:`Array`\[:ref:`Dictionary`\] **font_get_size_cache_info**\ (\ font_rid\: :ref:`RID`\ ) |const| :ref:`🔗` + +Returns font cache information, each entry contains the following fields: ``Vector2i size_px`` - font size in pixels, ``float viewport_oversampling`` - viewport oversampling factor, ``int glyphs`` - number of rendered glyphs, ``int textures`` - number of used textures, ``int textures_size`` - size of texture data in bytes. + +.. rst-class:: classref-item-separator + +---- + .. _class_TextServer_method_font_get_size_cache_list: .. rst-class:: classref-method @@ -2218,7 +2312,7 @@ Returns list of the font sizes in the cache. Each size is :ref:`Vector2i` **font_get_spacing**\ (\ font_rid\: :ref:`RID`, spacing\: :ref:`SpacingType`\ ) |const| :ref:`🔗` -Returns the spacing for ``spacing`` (see :ref:`SpacingType`) in pixels (not relative to the font size). +Returns the spacing for ``spacing`` in pixels (not relative to the font size). .. rst-class:: classref-item-separator @@ -2242,7 +2336,7 @@ Returns font stretch amount, compared to a normal width. A percentage value betw |bitfield|\[:ref:`FontStyle`\] **font_get_style**\ (\ font_rid\: :ref:`RID`\ ) |const| :ref:`🔗` -Returns font style flags, see :ref:`FontStyle`. +Returns font style flags. .. rst-class:: classref-item-separator @@ -2440,6 +2534,18 @@ Returns ``true``, if font supports given language (`ISO 639 ` **font_is_modulate_color_glyphs**\ (\ font_rid\: :ref:`RID`\ ) |const| :ref:`🔗` + +Returns ``true``, if color modulation is applied when drawing colored glyphs. + +.. rst-class:: classref-item-separator + +---- + .. _class_TextServer_method_font_is_multichannel_signed_distance_field: .. rst-class:: classref-method @@ -2726,9 +2832,9 @@ If set to ``true`` font texture mipmap generation is enabled. |void| **font_set_global_oversampling**\ (\ oversampling\: :ref:`float`\ ) :ref:`🔗` -Sets oversampling factor, shared by all font in the TextServer. +**Deprecated:** Use :ref:`Viewport` oversampling, or the ``oversampling`` argument of the ``draw_*`` methods instead. -\ **Note:** This value can be automatically changed by display server. +Deprecated. This method does nothing. .. rst-class:: classref-item-separator @@ -2844,6 +2950,18 @@ Adds override for :ref:`font_is_language_supported()`, force_autohinter\: :ref:`bool`\ ) :ref:`🔗` + +If set to ``true``, color modulation is applied when drawing colored glyphs, otherwise it's applied to the monochrome glyphs only. + +.. rst-class:: classref-item-separator + +---- + .. _class_TextServer_method_font_set_msdf_pixel_range: .. rst-class:: classref-method @@ -2912,7 +3030,7 @@ Sets font OpenType feature set override. |void| **font_set_oversampling**\ (\ font_rid\: :ref:`RID`, oversampling\: :ref:`float`\ ) :ref:`🔗` -Sets font oversampling factor, if set to ``0.0`` global oversampling factor is used instead. Used by dynamic fonts only. +If set to a positive value, overrides the oversampling factor of the viewport this font is used in. See :ref:`Viewport.oversampling`. This value doesn't override the ``oversampling`` parameter of ``draw_*`` methods. Used by dynamic fonts only. .. rst-class:: classref-item-separator @@ -2948,7 +3066,7 @@ Adds override for :ref:`font_is_script_supported()`, spacing\: :ref:`SpacingType`, value\: :ref:`int`\ ) :ref:`🔗` -Sets the spacing for ``spacing`` (see :ref:`SpacingType`) to ``value`` in pixels (not relative to the font size). +Sets the spacing for ``spacing`` to ``value`` in pixels (not relative to the font size). .. rst-class:: classref-item-separator @@ -2974,7 +3092,7 @@ Sets font stretch amount, compared to a normal width. A percentage value between |void| **font_set_style**\ (\ font_rid\: :ref:`RID`, style\: |bitfield|\[:ref:`FontStyle`\]\ ) :ref:`🔗` -Sets the font style flags, see :ref:`FontStyle`. +Sets the font style flags. \ **Note:** This value is used for font matching only and will not affect font rendering. Use :ref:`font_set_face_index()`, :ref:`font_set_variation_coordinates()`, :ref:`font_set_embolden()`, or :ref:`font_set_transform()` instead. @@ -3352,7 +3470,7 @@ Converts ``number`` from the numeral systems used in ``language`` to Western Ara :ref:`Array`\[:ref:`Vector3i`\] **parse_structured_text**\ (\ parser_type\: :ref:`StructuredTextParser`, args\: :ref:`Array`, text\: :ref:`String`\ ) |const| :ref:`🔗` -Default implementation of the BiDi algorithm override function. See :ref:`StructuredTextParser` for more info. +Default implementation of the BiDi algorithm override function. .. rst-class:: classref-item-separator @@ -3384,6 +3502,102 @@ Saves optional TextServer database (e.g. ICU break iterators and dictionaries) t ---- +.. _class_TextServer_method_shaped_get_run_count: + +.. rst-class:: classref-method + +:ref:`int` **shaped_get_run_count**\ (\ shaped\: :ref:`RID`\ ) |const| :ref:`🔗` + +Returns the number of uniform text runs in the buffer. + +.. rst-class:: classref-item-separator + +---- + +.. _class_TextServer_method_shaped_get_run_direction: + +.. rst-class:: classref-method + +:ref:`Direction` **shaped_get_run_direction**\ (\ shaped\: :ref:`RID`, index\: :ref:`int`\ ) |const| :ref:`🔗` + +Returns the direction of the ``index`` text run (in visual order). + +.. rst-class:: classref-item-separator + +---- + +.. _class_TextServer_method_shaped_get_run_font_rid: + +.. rst-class:: classref-method + +:ref:`RID` **shaped_get_run_font_rid**\ (\ shaped\: :ref:`RID`, index\: :ref:`int`\ ) |const| :ref:`🔗` + +Returns the font RID of the ``index`` text run (in visual order). + +.. rst-class:: classref-item-separator + +---- + +.. _class_TextServer_method_shaped_get_run_font_size: + +.. rst-class:: classref-method + +:ref:`int` **shaped_get_run_font_size**\ (\ shaped\: :ref:`RID`, index\: :ref:`int`\ ) |const| :ref:`🔗` + +Returns the font size of the ``index`` text run (in visual order). + +.. rst-class:: classref-item-separator + +---- + +.. _class_TextServer_method_shaped_get_run_language: + +.. rst-class:: classref-method + +:ref:`String` **shaped_get_run_language**\ (\ shaped\: :ref:`RID`, index\: :ref:`int`\ ) |const| :ref:`🔗` + +Returns the language of the ``index`` text run (in visual order). + +.. rst-class:: classref-item-separator + +---- + +.. _class_TextServer_method_shaped_get_run_object: + +.. rst-class:: classref-method + +:ref:`Variant` **shaped_get_run_object**\ (\ shaped\: :ref:`RID`, index\: :ref:`int`\ ) |const| :ref:`🔗` + +Returns the embedded object of the ``index`` text run (in visual order). + +.. rst-class:: classref-item-separator + +---- + +.. _class_TextServer_method_shaped_get_run_range: + +.. rst-class:: classref-method + +:ref:`Vector2i` **shaped_get_run_range**\ (\ shaped\: :ref:`RID`, index\: :ref:`int`\ ) |const| :ref:`🔗` + +Returns the source text range of the ``index`` text run (in visual order). + +.. rst-class:: classref-item-separator + +---- + +.. _class_TextServer_method_shaped_get_run_text: + +.. rst-class:: classref-method + +:ref:`String` **shaped_get_run_text**\ (\ shaped\: :ref:`RID`, index\: :ref:`int`\ ) |const| :ref:`🔗` + +Returns the source text of the ``index`` text run (in visual order). + +.. rst-class:: classref-item-separator + +---- + .. _class_TextServer_method_shaped_get_span_count: .. rst-class:: classref-method @@ -3420,6 +3634,42 @@ Returns text span metadata. ---- +.. _class_TextServer_method_shaped_get_span_object: + +.. rst-class:: classref-method + +:ref:`Variant` **shaped_get_span_object**\ (\ shaped\: :ref:`RID`, index\: :ref:`int`\ ) |const| :ref:`🔗` + +Returns the text span embedded object key. + +.. rst-class:: classref-item-separator + +---- + +.. _class_TextServer_method_shaped_get_span_text: + +.. rst-class:: classref-method + +:ref:`String` **shaped_get_span_text**\ (\ shaped\: :ref:`RID`, index\: :ref:`int`\ ) |const| :ref:`🔗` + +Returns the text span source text. + +.. rst-class:: classref-item-separator + +---- + +.. _class_TextServer_method_shaped_get_text: + +.. rst-class:: classref-method + +:ref:`String` **shaped_get_text**\ (\ shaped\: :ref:`RID`\ ) |const| :ref:`🔗` + +Returns the text buffer source text, including object replacement characters. + +.. rst-class:: classref-item-separator + +---- + .. _class_TextServer_method_shaped_set_span_update_font: .. rst-class:: classref-method @@ -3484,9 +3734,11 @@ Returns composite character position closest to the ``pos``. .. rst-class:: classref-method -|void| **shaped_text_draw**\ (\ shaped\: :ref:`RID`, canvas\: :ref:`RID`, pos\: :ref:`Vector2`, clip_l\: :ref:`float` = -1, clip_r\: :ref:`float` = -1, color\: :ref:`Color` = Color(1, 1, 1, 1)\ ) |const| :ref:`🔗` +|void| **shaped_text_draw**\ (\ shaped\: :ref:`RID`, canvas\: :ref:`RID`, pos\: :ref:`Vector2`, clip_l\: :ref:`float` = -1, clip_r\: :ref:`float` = -1, color\: :ref:`Color` = Color(1, 1, 1, 1), oversampling\: :ref:`float` = 0.0\ ) |const| :ref:`🔗` -Draw shaped text into a canvas item at a given position, with ``color``. ``pos`` specifies the leftmost point of the baseline (for horizontal layout) or topmost point of the baseline (for vertical layout). +Draw shaped text into a canvas item at a given position, with ``color``. ``pos`` specifies the leftmost point of the baseline (for horizontal layout) or topmost point of the baseline (for vertical layout). If ``oversampling`` is greater than zero, it is used as font oversampling factor, otherwise viewport oversampling settings are used. + +\ ``clip_l`` and ``clip_r`` are offsets relative to ``pos``, going to the right in horizontal layout and downward in vertical layout. If ``clip_l`` is not negative, glyphs starting before the offset are clipped. If ``clip_r`` is not negative, glyphs ending after the offset are clipped. .. rst-class:: classref-item-separator @@ -3496,9 +3748,11 @@ Draw shaped text into a canvas item at a given position, with ``color``. ``pos`` .. rst-class:: classref-method -|void| **shaped_text_draw_outline**\ (\ shaped\: :ref:`RID`, canvas\: :ref:`RID`, pos\: :ref:`Vector2`, clip_l\: :ref:`float` = -1, clip_r\: :ref:`float` = -1, outline_size\: :ref:`int` = 1, color\: :ref:`Color` = Color(1, 1, 1, 1)\ ) |const| :ref:`🔗` +|void| **shaped_text_draw_outline**\ (\ shaped\: :ref:`RID`, canvas\: :ref:`RID`, pos\: :ref:`Vector2`, clip_l\: :ref:`float` = -1, clip_r\: :ref:`float` = -1, outline_size\: :ref:`int` = 1, color\: :ref:`Color` = Color(1, 1, 1, 1), oversampling\: :ref:`float` = 0.0\ ) |const| :ref:`🔗` -Draw the outline of the shaped text into a canvas item at a given position, with ``color``. ``pos`` specifies the leftmost point of the baseline (for horizontal layout) or topmost point of the baseline (for vertical layout). +Draw the outline of the shaped text into a canvas item at a given position, with ``color``. ``pos`` specifies the leftmost point of the baseline (for horizontal layout) or topmost point of the baseline (for vertical layout). If ``oversampling`` is greater than zero, it is used as font oversampling factor, otherwise viewport oversampling settings are used. + +\ ``clip_l`` and ``clip_r`` are offsets relative to ``pos``, going to the right in horizontal layout and downward in vertical layout. If ``clip_l`` is not negative, glyphs starting before the offset are clipped. If ``clip_r`` is not negative, glyphs ending after the offset are clipped. .. rst-class:: classref-item-separator @@ -3924,7 +4178,7 @@ Returns width (for horizontal layout) or height (for vertical) of the text. :ref:`PackedInt32Array` **shaped_text_get_word_breaks**\ (\ shaped\: :ref:`RID`, grapheme_flags\: |bitfield|\[:ref:`GraphemeFlag`\] = 264, skip_grapheme_flags\: |bitfield|\[:ref:`GraphemeFlag`\] = 4\ ) |const| :ref:`🔗` -Breaks text into words and returns array of character ranges. Use ``grapheme_flags`` to set what characters are used for breaking (see :ref:`GraphemeFlag`). +Breaks text into words and returns array of character ranges. Use ``grapheme_flags`` to set what characters are used for breaking. .. rst-class:: classref-item-separator @@ -4328,6 +4582,7 @@ Strips diacritics from the string. Converts OpenType tag to readable feature, variation, script, or language name. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_textserveradvanced.rst b/classes/class_textserveradvanced.rst index beed8294d..8cb3abf73 100644 --- a/classes/class_textserveradvanced.rst +++ b/classes/class_textserveradvanced.rst @@ -22,6 +22,7 @@ Description An implementation of :ref:`TextServer` that uses HarfBuzz, ICU and SIL Graphite to support BiDi, complex text layouts and contextual OpenType features. This is Godot's default primary :ref:`TextServer` interface. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_textserverdummy.rst b/classes/class_textserverdummy.rst index 932e4df4f..8a89638dd 100644 --- a/classes/class_textserverdummy.rst +++ b/classes/class_textserverdummy.rst @@ -37,6 +37,7 @@ A dummy text server is always available at the start of a project. Here's how to The command line argument ``--text-driver Dummy`` (case-sensitive) can be used to force the "Dummy" :ref:`TextServer` on any project. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_textserverextension.rst b/classes/class_textserverextension.rst index d52a0cb4e..70a6bab2b 100644 --- a/classes/class_textserverextension.rst +++ b/classes/class_textserverextension.rst @@ -31,449 +31,483 @@ Methods .. table:: :widths: auto - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_cleanup`\ (\ ) |virtual| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`RID` | :ref:`_create_font`\ (\ ) |virtual| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`RID` | :ref:`_create_font_linked_variation`\ (\ font_rid\: :ref:`RID`\ ) |virtual| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`RID` | :ref:`_create_shaped_text`\ (\ direction\: :ref:`Direction`, orientation\: :ref:`Orientation`\ ) |virtual| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_draw_hex_code_box`\ (\ canvas\: :ref:`RID`, size\: :ref:`int`, pos\: :ref:`Vector2`, index\: :ref:`int`, color\: :ref:`Color`\ ) |virtual| |const| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_font_clear_glyphs`\ (\ font_rid\: :ref:`RID`, size\: :ref:`Vector2i`\ ) |virtual| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_font_clear_kerning_map`\ (\ font_rid\: :ref:`RID`, size\: :ref:`int`\ ) |virtual| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_font_clear_size_cache`\ (\ font_rid\: :ref:`RID`\ ) |virtual| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_font_clear_textures`\ (\ font_rid\: :ref:`RID`, size\: :ref:`Vector2i`\ ) |virtual| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_font_draw_glyph`\ (\ font_rid\: :ref:`RID`, canvas\: :ref:`RID`, size\: :ref:`int`, pos\: :ref:`Vector2`, index\: :ref:`int`, color\: :ref:`Color`\ ) |virtual| |const| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_font_draw_glyph_outline`\ (\ font_rid\: :ref:`RID`, canvas\: :ref:`RID`, size\: :ref:`int`, outline_size\: :ref:`int`, pos\: :ref:`Vector2`, index\: :ref:`int`, color\: :ref:`Color`\ ) |virtual| |const| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`FontAntialiasing` | :ref:`_font_get_antialiasing`\ (\ font_rid\: :ref:`RID`\ ) |virtual| |const| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`float` | :ref:`_font_get_ascent`\ (\ font_rid\: :ref:`RID`, size\: :ref:`int`\ ) |virtual| |const| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`float` | :ref:`_font_get_baseline_offset`\ (\ font_rid\: :ref:`RID`\ ) |virtual| |const| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`_font_get_char_from_glyph_index`\ (\ font_rid\: :ref:`RID`, size\: :ref:`int`, glyph_index\: :ref:`int`\ ) |virtual| |const| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`float` | :ref:`_font_get_descent`\ (\ font_rid\: :ref:`RID`, size\: :ref:`int`\ ) |virtual| |const| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`_font_get_disable_embedded_bitmaps`\ (\ font_rid\: :ref:`RID`\ ) |virtual| |const| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`float` | :ref:`_font_get_embolden`\ (\ font_rid\: :ref:`RID`\ ) |virtual| |const| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`_font_get_face_count`\ (\ font_rid\: :ref:`RID`\ ) |virtual| |const| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`_font_get_face_index`\ (\ font_rid\: :ref:`RID`\ ) |virtual| |const| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`_font_get_fixed_size`\ (\ font_rid\: :ref:`RID`\ ) |virtual| |const| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`FixedSizeScaleMode` | :ref:`_font_get_fixed_size_scale_mode`\ (\ font_rid\: :ref:`RID`\ ) |virtual| |const| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`_font_get_generate_mipmaps`\ (\ font_rid\: :ref:`RID`\ ) |virtual| |const| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`float` | :ref:`_font_get_global_oversampling`\ (\ ) |virtual| |const| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Vector2` | :ref:`_font_get_glyph_advance`\ (\ font_rid\: :ref:`RID`, size\: :ref:`int`, glyph\: :ref:`int`\ ) |virtual| |const| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Dictionary` | :ref:`_font_get_glyph_contours`\ (\ font_rid\: :ref:`RID`, size\: :ref:`int`, index\: :ref:`int`\ ) |virtual| |const| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`_font_get_glyph_index`\ (\ font_rid\: :ref:`RID`, size\: :ref:`int`, char\: :ref:`int`, variation_selector\: :ref:`int`\ ) |virtual| |const| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`PackedInt32Array` | :ref:`_font_get_glyph_list`\ (\ font_rid\: :ref:`RID`, size\: :ref:`Vector2i`\ ) |virtual| |const| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Vector2` | :ref:`_font_get_glyph_offset`\ (\ font_rid\: :ref:`RID`, size\: :ref:`Vector2i`, glyph\: :ref:`int`\ ) |virtual| |const| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Vector2` | :ref:`_font_get_glyph_size`\ (\ font_rid\: :ref:`RID`, size\: :ref:`Vector2i`, glyph\: :ref:`int`\ ) |virtual| |const| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`_font_get_glyph_texture_idx`\ (\ font_rid\: :ref:`RID`, size\: :ref:`Vector2i`, glyph\: :ref:`int`\ ) |virtual| |const| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`RID` | :ref:`_font_get_glyph_texture_rid`\ (\ font_rid\: :ref:`RID`, size\: :ref:`Vector2i`, glyph\: :ref:`int`\ ) |virtual| |const| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Vector2` | :ref:`_font_get_glyph_texture_size`\ (\ font_rid\: :ref:`RID`, size\: :ref:`Vector2i`, glyph\: :ref:`int`\ ) |virtual| |const| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Rect2` | :ref:`_font_get_glyph_uv_rect`\ (\ font_rid\: :ref:`RID`, size\: :ref:`Vector2i`, glyph\: :ref:`int`\ ) |virtual| |const| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Hinting` | :ref:`_font_get_hinting`\ (\ font_rid\: :ref:`RID`\ ) |virtual| |const| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`_font_get_keep_rounding_remainders`\ (\ font_rid\: :ref:`RID`\ ) |virtual| |const| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Vector2` | :ref:`_font_get_kerning`\ (\ font_rid\: :ref:`RID`, size\: :ref:`int`, glyph_pair\: :ref:`Vector2i`\ ) |virtual| |const| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Array`\[:ref:`Vector2i`\] | :ref:`_font_get_kerning_list`\ (\ font_rid\: :ref:`RID`, size\: :ref:`int`\ ) |virtual| |const| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`_font_get_language_support_override`\ (\ font_rid\: :ref:`RID`, language\: :ref:`String`\ ) |virtual| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`PackedStringArray` | :ref:`_font_get_language_support_overrides`\ (\ font_rid\: :ref:`RID`\ ) |virtual| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`_font_get_msdf_pixel_range`\ (\ font_rid\: :ref:`RID`\ ) |virtual| |const| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`_font_get_msdf_size`\ (\ font_rid\: :ref:`RID`\ ) |virtual| |const| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`String` | :ref:`_font_get_name`\ (\ font_rid\: :ref:`RID`\ ) |virtual| |const| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Dictionary` | :ref:`_font_get_opentype_feature_overrides`\ (\ font_rid\: :ref:`RID`\ ) |virtual| |const| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Dictionary` | :ref:`_font_get_ot_name_strings`\ (\ font_rid\: :ref:`RID`\ ) |virtual| |const| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`float` | :ref:`_font_get_oversampling`\ (\ font_rid\: :ref:`RID`\ ) |virtual| |const| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`float` | :ref:`_font_get_scale`\ (\ font_rid\: :ref:`RID`, size\: :ref:`int`\ ) |virtual| |const| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`_font_get_script_support_override`\ (\ font_rid\: :ref:`RID`, script\: :ref:`String`\ ) |virtual| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`PackedStringArray` | :ref:`_font_get_script_support_overrides`\ (\ font_rid\: :ref:`RID`\ ) |virtual| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Array`\[:ref:`Vector2i`\] | :ref:`_font_get_size_cache_list`\ (\ font_rid\: :ref:`RID`\ ) |virtual| |const| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`_font_get_spacing`\ (\ font_rid\: :ref:`RID`, spacing\: :ref:`SpacingType`\ ) |virtual| |const| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`_font_get_stretch`\ (\ font_rid\: :ref:`RID`\ ) |virtual| |const| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |bitfield|\[:ref:`FontStyle`\] | :ref:`_font_get_style`\ (\ font_rid\: :ref:`RID`\ ) |virtual| |const| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`String` | :ref:`_font_get_style_name`\ (\ font_rid\: :ref:`RID`\ ) |virtual| |const| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`SubpixelPositioning` | :ref:`_font_get_subpixel_positioning`\ (\ font_rid\: :ref:`RID`\ ) |virtual| |const| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`String` | :ref:`_font_get_supported_chars`\ (\ font_rid\: :ref:`RID`\ ) |virtual| |const| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`PackedInt32Array` | :ref:`_font_get_supported_glyphs`\ (\ font_rid\: :ref:`RID`\ ) |virtual| |const| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`_font_get_texture_count`\ (\ font_rid\: :ref:`RID`, size\: :ref:`Vector2i`\ ) |virtual| |const| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Image` | :ref:`_font_get_texture_image`\ (\ font_rid\: :ref:`RID`, size\: :ref:`Vector2i`, texture_index\: :ref:`int`\ ) |virtual| |const| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`PackedInt32Array` | :ref:`_font_get_texture_offsets`\ (\ font_rid\: :ref:`RID`, size\: :ref:`Vector2i`, texture_index\: :ref:`int`\ ) |virtual| |const| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Transform2D` | :ref:`_font_get_transform`\ (\ font_rid\: :ref:`RID`\ ) |virtual| |const| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`float` | :ref:`_font_get_underline_position`\ (\ font_rid\: :ref:`RID`, size\: :ref:`int`\ ) |virtual| |const| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`float` | :ref:`_font_get_underline_thickness`\ (\ font_rid\: :ref:`RID`, size\: :ref:`int`\ ) |virtual| |const| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Dictionary` | :ref:`_font_get_variation_coordinates`\ (\ font_rid\: :ref:`RID`\ ) |virtual| |const| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`_font_get_weight`\ (\ font_rid\: :ref:`RID`\ ) |virtual| |const| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`_font_has_char`\ (\ font_rid\: :ref:`RID`, char\: :ref:`int`\ ) |virtual| |const| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`_font_is_allow_system_fallback`\ (\ font_rid\: :ref:`RID`\ ) |virtual| |const| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`_font_is_force_autohinter`\ (\ font_rid\: :ref:`RID`\ ) |virtual| |const| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`_font_is_language_supported`\ (\ font_rid\: :ref:`RID`, language\: :ref:`String`\ ) |virtual| |const| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`_font_is_multichannel_signed_distance_field`\ (\ font_rid\: :ref:`RID`\ ) |virtual| |const| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`_font_is_script_supported`\ (\ font_rid\: :ref:`RID`, script\: :ref:`String`\ ) |virtual| |const| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_font_remove_glyph`\ (\ font_rid\: :ref:`RID`, size\: :ref:`Vector2i`, glyph\: :ref:`int`\ ) |virtual| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_font_remove_kerning`\ (\ font_rid\: :ref:`RID`, size\: :ref:`int`, glyph_pair\: :ref:`Vector2i`\ ) |virtual| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_font_remove_language_support_override`\ (\ font_rid\: :ref:`RID`, language\: :ref:`String`\ ) |virtual| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_font_remove_script_support_override`\ (\ font_rid\: :ref:`RID`, script\: :ref:`String`\ ) |virtual| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_font_remove_size_cache`\ (\ font_rid\: :ref:`RID`, size\: :ref:`Vector2i`\ ) |virtual| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_font_remove_texture`\ (\ font_rid\: :ref:`RID`, size\: :ref:`Vector2i`, texture_index\: :ref:`int`\ ) |virtual| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_font_render_glyph`\ (\ font_rid\: :ref:`RID`, size\: :ref:`Vector2i`, index\: :ref:`int`\ ) |virtual| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_font_render_range`\ (\ font_rid\: :ref:`RID`, size\: :ref:`Vector2i`, start\: :ref:`int`, end\: :ref:`int`\ ) |virtual| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_font_set_allow_system_fallback`\ (\ font_rid\: :ref:`RID`, allow_system_fallback\: :ref:`bool`\ ) |virtual| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_font_set_antialiasing`\ (\ font_rid\: :ref:`RID`, antialiasing\: :ref:`FontAntialiasing`\ ) |virtual| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_font_set_ascent`\ (\ font_rid\: :ref:`RID`, size\: :ref:`int`, ascent\: :ref:`float`\ ) |virtual| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_font_set_baseline_offset`\ (\ font_rid\: :ref:`RID`, baseline_offset\: :ref:`float`\ ) |virtual| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_font_set_data`\ (\ font_rid\: :ref:`RID`, data\: :ref:`PackedByteArray`\ ) |virtual| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_font_set_data_ptr`\ (\ font_rid\: :ref:`RID`, data_ptr\: ``const uint8_t*``, data_size\: :ref:`int`\ ) |virtual| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_font_set_descent`\ (\ font_rid\: :ref:`RID`, size\: :ref:`int`, descent\: :ref:`float`\ ) |virtual| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_font_set_disable_embedded_bitmaps`\ (\ font_rid\: :ref:`RID`, disable_embedded_bitmaps\: :ref:`bool`\ ) |virtual| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_font_set_embolden`\ (\ font_rid\: :ref:`RID`, strength\: :ref:`float`\ ) |virtual| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_font_set_face_index`\ (\ font_rid\: :ref:`RID`, face_index\: :ref:`int`\ ) |virtual| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_font_set_fixed_size`\ (\ font_rid\: :ref:`RID`, fixed_size\: :ref:`int`\ ) |virtual| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_font_set_fixed_size_scale_mode`\ (\ font_rid\: :ref:`RID`, fixed_size_scale_mode\: :ref:`FixedSizeScaleMode`\ ) |virtual| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_font_set_force_autohinter`\ (\ font_rid\: :ref:`RID`, force_autohinter\: :ref:`bool`\ ) |virtual| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_font_set_generate_mipmaps`\ (\ font_rid\: :ref:`RID`, generate_mipmaps\: :ref:`bool`\ ) |virtual| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_font_set_global_oversampling`\ (\ oversampling\: :ref:`float`\ ) |virtual| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_font_set_glyph_advance`\ (\ font_rid\: :ref:`RID`, size\: :ref:`int`, glyph\: :ref:`int`, advance\: :ref:`Vector2`\ ) |virtual| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_font_set_glyph_offset`\ (\ font_rid\: :ref:`RID`, size\: :ref:`Vector2i`, glyph\: :ref:`int`, offset\: :ref:`Vector2`\ ) |virtual| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_font_set_glyph_size`\ (\ font_rid\: :ref:`RID`, size\: :ref:`Vector2i`, glyph\: :ref:`int`, gl_size\: :ref:`Vector2`\ ) |virtual| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_font_set_glyph_texture_idx`\ (\ font_rid\: :ref:`RID`, size\: :ref:`Vector2i`, glyph\: :ref:`int`, texture_idx\: :ref:`int`\ ) |virtual| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_font_set_glyph_uv_rect`\ (\ font_rid\: :ref:`RID`, size\: :ref:`Vector2i`, glyph\: :ref:`int`, uv_rect\: :ref:`Rect2`\ ) |virtual| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_font_set_hinting`\ (\ font_rid\: :ref:`RID`, hinting\: :ref:`Hinting`\ ) |virtual| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_font_set_keep_rounding_remainders`\ (\ font_rid\: :ref:`RID`, keep_rounding_remainders\: :ref:`bool`\ ) |virtual| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_font_set_kerning`\ (\ font_rid\: :ref:`RID`, size\: :ref:`int`, glyph_pair\: :ref:`Vector2i`, kerning\: :ref:`Vector2`\ ) |virtual| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_font_set_language_support_override`\ (\ font_rid\: :ref:`RID`, language\: :ref:`String`, supported\: :ref:`bool`\ ) |virtual| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_font_set_msdf_pixel_range`\ (\ font_rid\: :ref:`RID`, msdf_pixel_range\: :ref:`int`\ ) |virtual| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_font_set_msdf_size`\ (\ font_rid\: :ref:`RID`, msdf_size\: :ref:`int`\ ) |virtual| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_font_set_multichannel_signed_distance_field`\ (\ font_rid\: :ref:`RID`, msdf\: :ref:`bool`\ ) |virtual| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_font_set_name`\ (\ font_rid\: :ref:`RID`, name\: :ref:`String`\ ) |virtual| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_font_set_opentype_feature_overrides`\ (\ font_rid\: :ref:`RID`, overrides\: :ref:`Dictionary`\ ) |virtual| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_font_set_oversampling`\ (\ font_rid\: :ref:`RID`, oversampling\: :ref:`float`\ ) |virtual| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_font_set_scale`\ (\ font_rid\: :ref:`RID`, size\: :ref:`int`, scale\: :ref:`float`\ ) |virtual| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_font_set_script_support_override`\ (\ font_rid\: :ref:`RID`, script\: :ref:`String`, supported\: :ref:`bool`\ ) |virtual| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_font_set_spacing`\ (\ font_rid\: :ref:`RID`, spacing\: :ref:`SpacingType`, value\: :ref:`int`\ ) |virtual| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_font_set_stretch`\ (\ font_rid\: :ref:`RID`, stretch\: :ref:`int`\ ) |virtual| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_font_set_style`\ (\ font_rid\: :ref:`RID`, style\: |bitfield|\[:ref:`FontStyle`\]\ ) |virtual| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_font_set_style_name`\ (\ font_rid\: :ref:`RID`, name_style\: :ref:`String`\ ) |virtual| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_font_set_subpixel_positioning`\ (\ font_rid\: :ref:`RID`, subpixel_positioning\: :ref:`SubpixelPositioning`\ ) |virtual| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_font_set_texture_image`\ (\ font_rid\: :ref:`RID`, size\: :ref:`Vector2i`, texture_index\: :ref:`int`, image\: :ref:`Image`\ ) |virtual| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_font_set_texture_offsets`\ (\ font_rid\: :ref:`RID`, size\: :ref:`Vector2i`, texture_index\: :ref:`int`, offset\: :ref:`PackedInt32Array`\ ) |virtual| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_font_set_transform`\ (\ font_rid\: :ref:`RID`, transform\: :ref:`Transform2D`\ ) |virtual| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_font_set_underline_position`\ (\ font_rid\: :ref:`RID`, size\: :ref:`int`, underline_position\: :ref:`float`\ ) |virtual| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_font_set_underline_thickness`\ (\ font_rid\: :ref:`RID`, size\: :ref:`int`, underline_thickness\: :ref:`float`\ ) |virtual| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_font_set_variation_coordinates`\ (\ font_rid\: :ref:`RID`, variation_coordinates\: :ref:`Dictionary`\ ) |virtual| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_font_set_weight`\ (\ font_rid\: :ref:`RID`, weight\: :ref:`int`\ ) |virtual| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Dictionary` | :ref:`_font_supported_feature_list`\ (\ font_rid\: :ref:`RID`\ ) |virtual| |const| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Dictionary` | :ref:`_font_supported_variation_list`\ (\ font_rid\: :ref:`RID`\ ) |virtual| |const| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`String` | :ref:`_format_number`\ (\ number\: :ref:`String`, language\: :ref:`String`\ ) |virtual| |const| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_free_rid`\ (\ rid\: :ref:`RID`\ ) |virtual| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`_get_features`\ (\ ) |virtual| |const| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Vector2` | :ref:`_get_hex_code_box_size`\ (\ size\: :ref:`int`, index\: :ref:`int`\ ) |virtual| |const| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`String` | :ref:`_get_name`\ (\ ) |virtual| |const| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`PackedByteArray` | :ref:`_get_support_data`\ (\ ) |virtual| |const| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`String` | :ref:`_get_support_data_filename`\ (\ ) |virtual| |const| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`String` | :ref:`_get_support_data_info`\ (\ ) |virtual| |const| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`_has`\ (\ rid\: :ref:`RID`\ ) |virtual| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`_has_feature`\ (\ feature\: :ref:`Feature`\ ) |virtual| |const| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`_is_confusable`\ (\ string\: :ref:`String`, dict\: :ref:`PackedStringArray`\ ) |virtual| |const| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`_is_locale_right_to_left`\ (\ locale\: :ref:`String`\ ) |virtual| |const| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`_is_valid_identifier`\ (\ string\: :ref:`String`\ ) |virtual| |const| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`_is_valid_letter`\ (\ unicode\: :ref:`int`\ ) |virtual| |const| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`_load_support_data`\ (\ filename\: :ref:`String`\ ) |virtual| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`_name_to_tag`\ (\ name\: :ref:`String`\ ) |virtual| |const| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`String` | :ref:`_parse_number`\ (\ number\: :ref:`String`, language\: :ref:`String`\ ) |virtual| |const| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Array`\[:ref:`Vector3i`\] | :ref:`_parse_structured_text`\ (\ parser_type\: :ref:`StructuredTextParser`, args\: :ref:`Array`, text\: :ref:`String`\ ) |virtual| |const| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`String` | :ref:`_percent_sign`\ (\ language\: :ref:`String`\ ) |virtual| |const| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`_save_support_data`\ (\ filename\: :ref:`String`\ ) |virtual| |const| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`_shaped_get_span_count`\ (\ shaped\: :ref:`RID`\ ) |virtual| |const| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Variant` | :ref:`_shaped_get_span_embedded_object`\ (\ shaped\: :ref:`RID`, index\: :ref:`int`\ ) |virtual| |const| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Variant` | :ref:`_shaped_get_span_meta`\ (\ shaped\: :ref:`RID`, index\: :ref:`int`\ ) |virtual| |const| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_shaped_set_span_update_font`\ (\ shaped\: :ref:`RID`, index\: :ref:`int`, fonts\: :ref:`Array`\[:ref:`RID`\], size\: :ref:`int`, opentype_features\: :ref:`Dictionary`\ ) |virtual| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`_shaped_text_add_object`\ (\ shaped\: :ref:`RID`, key\: :ref:`Variant`, size\: :ref:`Vector2`, inline_align\: :ref:`InlineAlignment`, length\: :ref:`int`, baseline\: :ref:`float`\ ) |virtual| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`_shaped_text_add_string`\ (\ shaped\: :ref:`RID`, text\: :ref:`String`, fonts\: :ref:`Array`\[:ref:`RID`\], size\: :ref:`int`, opentype_features\: :ref:`Dictionary`, language\: :ref:`String`, meta\: :ref:`Variant`\ ) |virtual| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_shaped_text_clear`\ (\ shaped\: :ref:`RID`\ ) |virtual| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`_shaped_text_closest_character_pos`\ (\ shaped\: :ref:`RID`, pos\: :ref:`int`\ ) |virtual| |const| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_shaped_text_draw`\ (\ shaped\: :ref:`RID`, canvas\: :ref:`RID`, pos\: :ref:`Vector2`, clip_l\: :ref:`float`, clip_r\: :ref:`float`, color\: :ref:`Color`\ ) |virtual| |const| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_shaped_text_draw_outline`\ (\ shaped\: :ref:`RID`, canvas\: :ref:`RID`, pos\: :ref:`Vector2`, clip_l\: :ref:`float`, clip_r\: :ref:`float`, outline_size\: :ref:`int`, color\: :ref:`Color`\ ) |virtual| |const| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`float` | :ref:`_shaped_text_fit_to_width`\ (\ shaped\: :ref:`RID`, width\: :ref:`float`, justification_flags\: |bitfield|\[:ref:`JustificationFlag`\]\ ) |virtual| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`float` | :ref:`_shaped_text_get_ascent`\ (\ shaped\: :ref:`RID`\ ) |virtual| |const| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_shaped_text_get_carets`\ (\ shaped\: :ref:`RID`, position\: :ref:`int`, caret\: ``CaretInfo*``\ ) |virtual| |const| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`PackedInt32Array` | :ref:`_shaped_text_get_character_breaks`\ (\ shaped\: :ref:`RID`\ ) |virtual| |const| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`_shaped_text_get_custom_ellipsis`\ (\ shaped\: :ref:`RID`\ ) |virtual| |const| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`String` | :ref:`_shaped_text_get_custom_punctuation`\ (\ shaped\: :ref:`RID`\ ) |virtual| |const| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`float` | :ref:`_shaped_text_get_descent`\ (\ shaped\: :ref:`RID`\ ) |virtual| |const| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Direction` | :ref:`_shaped_text_get_direction`\ (\ shaped\: :ref:`RID`\ ) |virtual| |const| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`_shaped_text_get_dominant_direction_in_range`\ (\ shaped\: :ref:`RID`, start\: :ref:`int`, end\: :ref:`int`\ ) |virtual| |const| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`_shaped_text_get_ellipsis_glyph_count`\ (\ shaped\: :ref:`RID`\ ) |virtual| |const| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | ``const Glyph*`` | :ref:`_shaped_text_get_ellipsis_glyphs`\ (\ shaped\: :ref:`RID`\ ) |virtual| |const| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`_shaped_text_get_ellipsis_pos`\ (\ shaped\: :ref:`RID`\ ) |virtual| |const| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`_shaped_text_get_glyph_count`\ (\ shaped\: :ref:`RID`\ ) |virtual| |const| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | ``const Glyph*`` | :ref:`_shaped_text_get_glyphs`\ (\ shaped\: :ref:`RID`\ ) |virtual| |const| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Vector2` | :ref:`_shaped_text_get_grapheme_bounds`\ (\ shaped\: :ref:`RID`, pos\: :ref:`int`\ ) |virtual| |const| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Direction` | :ref:`_shaped_text_get_inferred_direction`\ (\ shaped\: :ref:`RID`\ ) |virtual| |const| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`PackedInt32Array` | :ref:`_shaped_text_get_line_breaks`\ (\ shaped\: :ref:`RID`, width\: :ref:`float`, start\: :ref:`int`, break_flags\: |bitfield|\[:ref:`LineBreakFlag`\]\ ) |virtual| |const| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`PackedInt32Array` | :ref:`_shaped_text_get_line_breaks_adv`\ (\ shaped\: :ref:`RID`, width\: :ref:`PackedFloat32Array`, start\: :ref:`int`, once\: :ref:`bool`, break_flags\: |bitfield|\[:ref:`LineBreakFlag`\]\ ) |virtual| |const| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`_shaped_text_get_object_glyph`\ (\ shaped\: :ref:`RID`, key\: :ref:`Variant`\ ) |virtual| |const| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Vector2i` | :ref:`_shaped_text_get_object_range`\ (\ shaped\: :ref:`RID`, key\: :ref:`Variant`\ ) |virtual| |const| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Rect2` | :ref:`_shaped_text_get_object_rect`\ (\ shaped\: :ref:`RID`, key\: :ref:`Variant`\ ) |virtual| |const| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Array` | :ref:`_shaped_text_get_objects`\ (\ shaped\: :ref:`RID`\ ) |virtual| |const| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Orientation` | :ref:`_shaped_text_get_orientation`\ (\ shaped\: :ref:`RID`\ ) |virtual| |const| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`RID` | :ref:`_shaped_text_get_parent`\ (\ shaped\: :ref:`RID`\ ) |virtual| |const| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`_shaped_text_get_preserve_control`\ (\ shaped\: :ref:`RID`\ ) |virtual| |const| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`_shaped_text_get_preserve_invalid`\ (\ shaped\: :ref:`RID`\ ) |virtual| |const| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Vector2i` | :ref:`_shaped_text_get_range`\ (\ shaped\: :ref:`RID`\ ) |virtual| |const| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`PackedVector2Array` | :ref:`_shaped_text_get_selection`\ (\ shaped\: :ref:`RID`, start\: :ref:`int`, end\: :ref:`int`\ ) |virtual| |const| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Vector2` | :ref:`_shaped_text_get_size`\ (\ shaped\: :ref:`RID`\ ) |virtual| |const| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`_shaped_text_get_spacing`\ (\ shaped\: :ref:`RID`, spacing\: :ref:`SpacingType`\ ) |virtual| |const| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`_shaped_text_get_trim_pos`\ (\ shaped\: :ref:`RID`\ ) |virtual| |const| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`float` | :ref:`_shaped_text_get_underline_position`\ (\ shaped\: :ref:`RID`\ ) |virtual| |const| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`float` | :ref:`_shaped_text_get_underline_thickness`\ (\ shaped\: :ref:`RID`\ ) |virtual| |const| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`float` | :ref:`_shaped_text_get_width`\ (\ shaped\: :ref:`RID`\ ) |virtual| |const| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`PackedInt32Array` | :ref:`_shaped_text_get_word_breaks`\ (\ shaped\: :ref:`RID`, grapheme_flags\: |bitfield|\[:ref:`GraphemeFlag`\], skip_grapheme_flags\: |bitfield|\[:ref:`GraphemeFlag`\]\ ) |virtual| |const| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`_shaped_text_hit_test_grapheme`\ (\ shaped\: :ref:`RID`, coord\: :ref:`float`\ ) |virtual| |const| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`_shaped_text_hit_test_position`\ (\ shaped\: :ref:`RID`, coord\: :ref:`float`\ ) |virtual| |const| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`_shaped_text_is_ready`\ (\ shaped\: :ref:`RID`\ ) |virtual| |const| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`_shaped_text_next_character_pos`\ (\ shaped\: :ref:`RID`, pos\: :ref:`int`\ ) |virtual| |const| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`_shaped_text_next_grapheme_pos`\ (\ shaped\: :ref:`RID`, pos\: :ref:`int`\ ) |virtual| |const| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_shaped_text_overrun_trim_to_width`\ (\ shaped\: :ref:`RID`, width\: :ref:`float`, trim_flags\: |bitfield|\[:ref:`TextOverrunFlag`\]\ ) |virtual| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`_shaped_text_prev_character_pos`\ (\ shaped\: :ref:`RID`, pos\: :ref:`int`\ ) |virtual| |const| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`_shaped_text_prev_grapheme_pos`\ (\ shaped\: :ref:`RID`, pos\: :ref:`int`\ ) |virtual| |const| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`_shaped_text_resize_object`\ (\ shaped\: :ref:`RID`, key\: :ref:`Variant`, size\: :ref:`Vector2`, inline_align\: :ref:`InlineAlignment`, baseline\: :ref:`float`\ ) |virtual| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_shaped_text_set_bidi_override`\ (\ shaped\: :ref:`RID`, override\: :ref:`Array`\ ) |virtual| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_shaped_text_set_custom_ellipsis`\ (\ shaped\: :ref:`RID`, char\: :ref:`int`\ ) |virtual| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_shaped_text_set_custom_punctuation`\ (\ shaped\: :ref:`RID`, punct\: :ref:`String`\ ) |virtual| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_shaped_text_set_direction`\ (\ shaped\: :ref:`RID`, direction\: :ref:`Direction`\ ) |virtual| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_shaped_text_set_orientation`\ (\ shaped\: :ref:`RID`, orientation\: :ref:`Orientation`\ ) |virtual| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_shaped_text_set_preserve_control`\ (\ shaped\: :ref:`RID`, enabled\: :ref:`bool`\ ) |virtual| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_shaped_text_set_preserve_invalid`\ (\ shaped\: :ref:`RID`, enabled\: :ref:`bool`\ ) |virtual| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_shaped_text_set_spacing`\ (\ shaped\: :ref:`RID`, spacing\: :ref:`SpacingType`, value\: :ref:`int`\ ) |virtual| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`_shaped_text_shape`\ (\ shaped\: :ref:`RID`\ ) |virtual| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | ``const Glyph*`` | :ref:`_shaped_text_sort_logical`\ (\ shaped\: :ref:`RID`\ ) |virtual| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`RID` | :ref:`_shaped_text_substr`\ (\ shaped\: :ref:`RID`, start\: :ref:`int`, length\: :ref:`int`\ ) |virtual| |const| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`float` | :ref:`_shaped_text_tab_align`\ (\ shaped\: :ref:`RID`, tab_stops\: :ref:`PackedFloat32Array`\ ) |virtual| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`_shaped_text_update_breaks`\ (\ shaped\: :ref:`RID`\ ) |virtual| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`_shaped_text_update_justification_ops`\ (\ shaped\: :ref:`RID`\ ) |virtual| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`_spoof_check`\ (\ string\: :ref:`String`\ ) |virtual| |const| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`PackedInt32Array` | :ref:`_string_get_character_breaks`\ (\ string\: :ref:`String`, language\: :ref:`String`\ ) |virtual| |const| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`PackedInt32Array` | :ref:`_string_get_word_breaks`\ (\ string\: :ref:`String`, language\: :ref:`String`, chars_per_line\: :ref:`int`\ ) |virtual| |const| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`String` | :ref:`_string_to_lower`\ (\ string\: :ref:`String`, language\: :ref:`String`\ ) |virtual| |const| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`String` | :ref:`_string_to_title`\ (\ string\: :ref:`String`, language\: :ref:`String`\ ) |virtual| |const| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`String` | :ref:`_string_to_upper`\ (\ string\: :ref:`String`, language\: :ref:`String`\ ) |virtual| |const| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`String` | :ref:`_strip_diacritics`\ (\ string\: :ref:`String`\ ) |virtual| |const| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`String` | :ref:`_tag_to_name`\ (\ tag\: :ref:`int`\ ) |virtual| |const| | - +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_cleanup`\ (\ ) |virtual| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`RID` | :ref:`_create_font`\ (\ ) |virtual| |required| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`RID` | :ref:`_create_font_linked_variation`\ (\ font_rid\: :ref:`RID`\ ) |virtual| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`RID` | :ref:`_create_shaped_text`\ (\ direction\: :ref:`Direction`, orientation\: :ref:`Orientation`\ ) |virtual| |required| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_draw_hex_code_box`\ (\ canvas\: :ref:`RID`, size\: :ref:`int`, pos\: :ref:`Vector2`, index\: :ref:`int`, color\: :ref:`Color`\ ) |virtual| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_font_clear_glyphs`\ (\ font_rid\: :ref:`RID`, size\: :ref:`Vector2i`\ ) |virtual| |required| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_font_clear_kerning_map`\ (\ font_rid\: :ref:`RID`, size\: :ref:`int`\ ) |virtual| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_font_clear_size_cache`\ (\ font_rid\: :ref:`RID`\ ) |virtual| |required| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_font_clear_system_fallback_cache`\ (\ ) |virtual| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_font_clear_textures`\ (\ font_rid\: :ref:`RID`, size\: :ref:`Vector2i`\ ) |virtual| |required| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_font_draw_glyph`\ (\ font_rid\: :ref:`RID`, canvas\: :ref:`RID`, size\: :ref:`int`, pos\: :ref:`Vector2`, index\: :ref:`int`, color\: :ref:`Color`, oversampling\: :ref:`float`\ ) |virtual| |required| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_font_draw_glyph_outline`\ (\ font_rid\: :ref:`RID`, canvas\: :ref:`RID`, size\: :ref:`int`, outline_size\: :ref:`int`, pos\: :ref:`Vector2`, index\: :ref:`int`, color\: :ref:`Color`, oversampling\: :ref:`float`\ ) |virtual| |required| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`FontAntialiasing` | :ref:`_font_get_antialiasing`\ (\ font_rid\: :ref:`RID`\ ) |virtual| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`_font_get_ascent`\ (\ font_rid\: :ref:`RID`, size\: :ref:`int`\ ) |virtual| |required| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`_font_get_baseline_offset`\ (\ font_rid\: :ref:`RID`\ ) |virtual| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`_font_get_char_from_glyph_index`\ (\ font_rid\: :ref:`RID`, size\: :ref:`int`, glyph_index\: :ref:`int`\ ) |virtual| |required| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`_font_get_descent`\ (\ font_rid\: :ref:`RID`, size\: :ref:`int`\ ) |virtual| |required| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`_font_get_disable_embedded_bitmaps`\ (\ font_rid\: :ref:`RID`\ ) |virtual| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`_font_get_embolden`\ (\ font_rid\: :ref:`RID`\ ) |virtual| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`_font_get_face_count`\ (\ font_rid\: :ref:`RID`\ ) |virtual| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`_font_get_face_index`\ (\ font_rid\: :ref:`RID`\ ) |virtual| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`_font_get_fixed_size`\ (\ font_rid\: :ref:`RID`\ ) |virtual| |required| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`FixedSizeScaleMode` | :ref:`_font_get_fixed_size_scale_mode`\ (\ font_rid\: :ref:`RID`\ ) |virtual| |required| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`_font_get_generate_mipmaps`\ (\ font_rid\: :ref:`RID`\ ) |virtual| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`_font_get_global_oversampling`\ (\ ) |virtual| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Vector2` | :ref:`_font_get_glyph_advance`\ (\ font_rid\: :ref:`RID`, size\: :ref:`int`, glyph\: :ref:`int`\ ) |virtual| |required| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Dictionary` | :ref:`_font_get_glyph_contours`\ (\ font_rid\: :ref:`RID`, size\: :ref:`int`, index\: :ref:`int`\ ) |virtual| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`_font_get_glyph_index`\ (\ font_rid\: :ref:`RID`, size\: :ref:`int`, char\: :ref:`int`, variation_selector\: :ref:`int`\ ) |virtual| |required| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`PackedInt32Array` | :ref:`_font_get_glyph_list`\ (\ font_rid\: :ref:`RID`, size\: :ref:`Vector2i`\ ) |virtual| |required| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Vector2` | :ref:`_font_get_glyph_offset`\ (\ font_rid\: :ref:`RID`, size\: :ref:`Vector2i`, glyph\: :ref:`int`\ ) |virtual| |required| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Vector2` | :ref:`_font_get_glyph_size`\ (\ font_rid\: :ref:`RID`, size\: :ref:`Vector2i`, glyph\: :ref:`int`\ ) |virtual| |required| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`_font_get_glyph_texture_idx`\ (\ font_rid\: :ref:`RID`, size\: :ref:`Vector2i`, glyph\: :ref:`int`\ ) |virtual| |required| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`RID` | :ref:`_font_get_glyph_texture_rid`\ (\ font_rid\: :ref:`RID`, size\: :ref:`Vector2i`, glyph\: :ref:`int`\ ) |virtual| |required| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Vector2` | :ref:`_font_get_glyph_texture_size`\ (\ font_rid\: :ref:`RID`, size\: :ref:`Vector2i`, glyph\: :ref:`int`\ ) |virtual| |required| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Rect2` | :ref:`_font_get_glyph_uv_rect`\ (\ font_rid\: :ref:`RID`, size\: :ref:`Vector2i`, glyph\: :ref:`int`\ ) |virtual| |required| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Hinting` | :ref:`_font_get_hinting`\ (\ font_rid\: :ref:`RID`\ ) |virtual| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`_font_get_keep_rounding_remainders`\ (\ font_rid\: :ref:`RID`\ ) |virtual| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Vector2` | :ref:`_font_get_kerning`\ (\ font_rid\: :ref:`RID`, size\: :ref:`int`, glyph_pair\: :ref:`Vector2i`\ ) |virtual| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Array`\[:ref:`Vector2i`\] | :ref:`_font_get_kerning_list`\ (\ font_rid\: :ref:`RID`, size\: :ref:`int`\ ) |virtual| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`_font_get_language_support_override`\ (\ font_rid\: :ref:`RID`, language\: :ref:`String`\ ) |virtual| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`PackedStringArray` | :ref:`_font_get_language_support_overrides`\ (\ font_rid\: :ref:`RID`\ ) |virtual| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`_font_get_msdf_pixel_range`\ (\ font_rid\: :ref:`RID`\ ) |virtual| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`_font_get_msdf_size`\ (\ font_rid\: :ref:`RID`\ ) |virtual| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`_font_get_name`\ (\ font_rid\: :ref:`RID`\ ) |virtual| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Dictionary` | :ref:`_font_get_opentype_feature_overrides`\ (\ font_rid\: :ref:`RID`\ ) |virtual| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Dictionary` | :ref:`_font_get_ot_name_strings`\ (\ font_rid\: :ref:`RID`\ ) |virtual| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`_font_get_oversampling`\ (\ font_rid\: :ref:`RID`\ ) |virtual| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`_font_get_scale`\ (\ font_rid\: :ref:`RID`, size\: :ref:`int`\ ) |virtual| |required| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`_font_get_script_support_override`\ (\ font_rid\: :ref:`RID`, script\: :ref:`String`\ ) |virtual| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`PackedStringArray` | :ref:`_font_get_script_support_overrides`\ (\ font_rid\: :ref:`RID`\ ) |virtual| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Array`\[:ref:`Dictionary`\] | :ref:`_font_get_size_cache_info`\ (\ font_rid\: :ref:`RID`\ ) |virtual| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Array`\[:ref:`Vector2i`\] | :ref:`_font_get_size_cache_list`\ (\ font_rid\: :ref:`RID`\ ) |virtual| |required| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`_font_get_spacing`\ (\ font_rid\: :ref:`RID`, spacing\: :ref:`SpacingType`\ ) |virtual| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`_font_get_stretch`\ (\ font_rid\: :ref:`RID`\ ) |virtual| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |bitfield|\[:ref:`FontStyle`\] | :ref:`_font_get_style`\ (\ font_rid\: :ref:`RID`\ ) |virtual| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`_font_get_style_name`\ (\ font_rid\: :ref:`RID`\ ) |virtual| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`SubpixelPositioning` | :ref:`_font_get_subpixel_positioning`\ (\ font_rid\: :ref:`RID`\ ) |virtual| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`_font_get_supported_chars`\ (\ font_rid\: :ref:`RID`\ ) |virtual| |required| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`PackedInt32Array` | :ref:`_font_get_supported_glyphs`\ (\ font_rid\: :ref:`RID`\ ) |virtual| |required| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`_font_get_texture_count`\ (\ font_rid\: :ref:`RID`, size\: :ref:`Vector2i`\ ) |virtual| |required| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Image` | :ref:`_font_get_texture_image`\ (\ font_rid\: :ref:`RID`, size\: :ref:`Vector2i`, texture_index\: :ref:`int`\ ) |virtual| |required| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`PackedInt32Array` | :ref:`_font_get_texture_offsets`\ (\ font_rid\: :ref:`RID`, size\: :ref:`Vector2i`, texture_index\: :ref:`int`\ ) |virtual| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Transform2D` | :ref:`_font_get_transform`\ (\ font_rid\: :ref:`RID`\ ) |virtual| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`_font_get_underline_position`\ (\ font_rid\: :ref:`RID`, size\: :ref:`int`\ ) |virtual| |required| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`_font_get_underline_thickness`\ (\ font_rid\: :ref:`RID`, size\: :ref:`int`\ ) |virtual| |required| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Dictionary` | :ref:`_font_get_variation_coordinates`\ (\ font_rid\: :ref:`RID`\ ) |virtual| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`_font_get_weight`\ (\ font_rid\: :ref:`RID`\ ) |virtual| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`_font_has_char`\ (\ font_rid\: :ref:`RID`, char\: :ref:`int`\ ) |virtual| |required| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`_font_is_allow_system_fallback`\ (\ font_rid\: :ref:`RID`\ ) |virtual| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`_font_is_force_autohinter`\ (\ font_rid\: :ref:`RID`\ ) |virtual| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`_font_is_language_supported`\ (\ font_rid\: :ref:`RID`, language\: :ref:`String`\ ) |virtual| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`_font_is_modulate_color_glyphs`\ (\ font_rid\: :ref:`RID`\ ) |virtual| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`_font_is_multichannel_signed_distance_field`\ (\ font_rid\: :ref:`RID`\ ) |virtual| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`_font_is_script_supported`\ (\ font_rid\: :ref:`RID`, script\: :ref:`String`\ ) |virtual| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_font_remove_glyph`\ (\ font_rid\: :ref:`RID`, size\: :ref:`Vector2i`, glyph\: :ref:`int`\ ) |virtual| |required| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_font_remove_kerning`\ (\ font_rid\: :ref:`RID`, size\: :ref:`int`, glyph_pair\: :ref:`Vector2i`\ ) |virtual| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_font_remove_language_support_override`\ (\ font_rid\: :ref:`RID`, language\: :ref:`String`\ ) |virtual| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_font_remove_script_support_override`\ (\ font_rid\: :ref:`RID`, script\: :ref:`String`\ ) |virtual| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_font_remove_size_cache`\ (\ font_rid\: :ref:`RID`, size\: :ref:`Vector2i`\ ) |virtual| |required| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_font_remove_texture`\ (\ font_rid\: :ref:`RID`, size\: :ref:`Vector2i`, texture_index\: :ref:`int`\ ) |virtual| |required| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_font_render_glyph`\ (\ font_rid\: :ref:`RID`, size\: :ref:`Vector2i`, index\: :ref:`int`\ ) |virtual| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_font_render_range`\ (\ font_rid\: :ref:`RID`, size\: :ref:`Vector2i`, start\: :ref:`int`, end\: :ref:`int`\ ) |virtual| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_font_set_allow_system_fallback`\ (\ font_rid\: :ref:`RID`, allow_system_fallback\: :ref:`bool`\ ) |virtual| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_font_set_antialiasing`\ (\ font_rid\: :ref:`RID`, antialiasing\: :ref:`FontAntialiasing`\ ) |virtual| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_font_set_ascent`\ (\ font_rid\: :ref:`RID`, size\: :ref:`int`, ascent\: :ref:`float`\ ) |virtual| |required| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_font_set_baseline_offset`\ (\ font_rid\: :ref:`RID`, baseline_offset\: :ref:`float`\ ) |virtual| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_font_set_data`\ (\ font_rid\: :ref:`RID`, data\: :ref:`PackedByteArray`\ ) |virtual| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_font_set_data_ptr`\ (\ font_rid\: :ref:`RID`, data_ptr\: ``const uint8_t*``, data_size\: :ref:`int`\ ) |virtual| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_font_set_descent`\ (\ font_rid\: :ref:`RID`, size\: :ref:`int`, descent\: :ref:`float`\ ) |virtual| |required| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_font_set_disable_embedded_bitmaps`\ (\ font_rid\: :ref:`RID`, disable_embedded_bitmaps\: :ref:`bool`\ ) |virtual| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_font_set_embolden`\ (\ font_rid\: :ref:`RID`, strength\: :ref:`float`\ ) |virtual| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_font_set_face_index`\ (\ font_rid\: :ref:`RID`, face_index\: :ref:`int`\ ) |virtual| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_font_set_fixed_size`\ (\ font_rid\: :ref:`RID`, fixed_size\: :ref:`int`\ ) |virtual| |required| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_font_set_fixed_size_scale_mode`\ (\ font_rid\: :ref:`RID`, fixed_size_scale_mode\: :ref:`FixedSizeScaleMode`\ ) |virtual| |required| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_font_set_force_autohinter`\ (\ font_rid\: :ref:`RID`, force_autohinter\: :ref:`bool`\ ) |virtual| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_font_set_generate_mipmaps`\ (\ font_rid\: :ref:`RID`, generate_mipmaps\: :ref:`bool`\ ) |virtual| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_font_set_global_oversampling`\ (\ oversampling\: :ref:`float`\ ) |virtual| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_font_set_glyph_advance`\ (\ font_rid\: :ref:`RID`, size\: :ref:`int`, glyph\: :ref:`int`, advance\: :ref:`Vector2`\ ) |virtual| |required| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_font_set_glyph_offset`\ (\ font_rid\: :ref:`RID`, size\: :ref:`Vector2i`, glyph\: :ref:`int`, offset\: :ref:`Vector2`\ ) |virtual| |required| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_font_set_glyph_size`\ (\ font_rid\: :ref:`RID`, size\: :ref:`Vector2i`, glyph\: :ref:`int`, gl_size\: :ref:`Vector2`\ ) |virtual| |required| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_font_set_glyph_texture_idx`\ (\ font_rid\: :ref:`RID`, size\: :ref:`Vector2i`, glyph\: :ref:`int`, texture_idx\: :ref:`int`\ ) |virtual| |required| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_font_set_glyph_uv_rect`\ (\ font_rid\: :ref:`RID`, size\: :ref:`Vector2i`, glyph\: :ref:`int`, uv_rect\: :ref:`Rect2`\ ) |virtual| |required| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_font_set_hinting`\ (\ font_rid\: :ref:`RID`, hinting\: :ref:`Hinting`\ ) |virtual| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_font_set_keep_rounding_remainders`\ (\ font_rid\: :ref:`RID`, keep_rounding_remainders\: :ref:`bool`\ ) |virtual| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_font_set_kerning`\ (\ font_rid\: :ref:`RID`, size\: :ref:`int`, glyph_pair\: :ref:`Vector2i`, kerning\: :ref:`Vector2`\ ) |virtual| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_font_set_language_support_override`\ (\ font_rid\: :ref:`RID`, language\: :ref:`String`, supported\: :ref:`bool`\ ) |virtual| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_font_set_modulate_color_glyphs`\ (\ font_rid\: :ref:`RID`, modulate\: :ref:`bool`\ ) |virtual| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_font_set_msdf_pixel_range`\ (\ font_rid\: :ref:`RID`, msdf_pixel_range\: :ref:`int`\ ) |virtual| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_font_set_msdf_size`\ (\ font_rid\: :ref:`RID`, msdf_size\: :ref:`int`\ ) |virtual| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_font_set_multichannel_signed_distance_field`\ (\ font_rid\: :ref:`RID`, msdf\: :ref:`bool`\ ) |virtual| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_font_set_name`\ (\ font_rid\: :ref:`RID`, name\: :ref:`String`\ ) |virtual| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_font_set_opentype_feature_overrides`\ (\ font_rid\: :ref:`RID`, overrides\: :ref:`Dictionary`\ ) |virtual| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_font_set_oversampling`\ (\ font_rid\: :ref:`RID`, oversampling\: :ref:`float`\ ) |virtual| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_font_set_scale`\ (\ font_rid\: :ref:`RID`, size\: :ref:`int`, scale\: :ref:`float`\ ) |virtual| |required| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_font_set_script_support_override`\ (\ font_rid\: :ref:`RID`, script\: :ref:`String`, supported\: :ref:`bool`\ ) |virtual| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_font_set_spacing`\ (\ font_rid\: :ref:`RID`, spacing\: :ref:`SpacingType`, value\: :ref:`int`\ ) |virtual| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_font_set_stretch`\ (\ font_rid\: :ref:`RID`, stretch\: :ref:`int`\ ) |virtual| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_font_set_style`\ (\ font_rid\: :ref:`RID`, style\: |bitfield|\[:ref:`FontStyle`\]\ ) |virtual| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_font_set_style_name`\ (\ font_rid\: :ref:`RID`, name_style\: :ref:`String`\ ) |virtual| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_font_set_subpixel_positioning`\ (\ font_rid\: :ref:`RID`, subpixel_positioning\: :ref:`SubpixelPositioning`\ ) |virtual| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_font_set_texture_image`\ (\ font_rid\: :ref:`RID`, size\: :ref:`Vector2i`, texture_index\: :ref:`int`, image\: :ref:`Image`\ ) |virtual| |required| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_font_set_texture_offsets`\ (\ font_rid\: :ref:`RID`, size\: :ref:`Vector2i`, texture_index\: :ref:`int`, offset\: :ref:`PackedInt32Array`\ ) |virtual| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_font_set_transform`\ (\ font_rid\: :ref:`RID`, transform\: :ref:`Transform2D`\ ) |virtual| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_font_set_underline_position`\ (\ font_rid\: :ref:`RID`, size\: :ref:`int`, underline_position\: :ref:`float`\ ) |virtual| |required| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_font_set_underline_thickness`\ (\ font_rid\: :ref:`RID`, size\: :ref:`int`, underline_thickness\: :ref:`float`\ ) |virtual| |required| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_font_set_variation_coordinates`\ (\ font_rid\: :ref:`RID`, variation_coordinates\: :ref:`Dictionary`\ ) |virtual| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_font_set_weight`\ (\ font_rid\: :ref:`RID`, weight\: :ref:`int`\ ) |virtual| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Dictionary` | :ref:`_font_supported_feature_list`\ (\ font_rid\: :ref:`RID`\ ) |virtual| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Dictionary` | :ref:`_font_supported_variation_list`\ (\ font_rid\: :ref:`RID`\ ) |virtual| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`_format_number`\ (\ number\: :ref:`String`, language\: :ref:`String`\ ) |virtual| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_free_rid`\ (\ rid\: :ref:`RID`\ ) |virtual| |required| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`_get_features`\ (\ ) |virtual| |required| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Vector2` | :ref:`_get_hex_code_box_size`\ (\ size\: :ref:`int`, index\: :ref:`int`\ ) |virtual| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`_get_name`\ (\ ) |virtual| |required| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`PackedByteArray` | :ref:`_get_support_data`\ (\ ) |virtual| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`_get_support_data_filename`\ (\ ) |virtual| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`_get_support_data_info`\ (\ ) |virtual| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`_has`\ (\ rid\: :ref:`RID`\ ) |virtual| |required| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`_has_feature`\ (\ feature\: :ref:`Feature`\ ) |virtual| |required| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`_is_confusable`\ (\ string\: :ref:`String`, dict\: :ref:`PackedStringArray`\ ) |virtual| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`_is_locale_right_to_left`\ (\ locale\: :ref:`String`\ ) |virtual| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`_is_valid_identifier`\ (\ string\: :ref:`String`\ ) |virtual| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`_is_valid_letter`\ (\ unicode\: :ref:`int`\ ) |virtual| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`_load_support_data`\ (\ filename\: :ref:`String`\ ) |virtual| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`_name_to_tag`\ (\ name\: :ref:`String`\ ) |virtual| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`_parse_number`\ (\ number\: :ref:`String`, language\: :ref:`String`\ ) |virtual| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Array`\[:ref:`Vector3i`\] | :ref:`_parse_structured_text`\ (\ parser_type\: :ref:`StructuredTextParser`, args\: :ref:`Array`, text\: :ref:`String`\ ) |virtual| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`_percent_sign`\ (\ language\: :ref:`String`\ ) |virtual| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_reference_oversampling_level`\ (\ oversampling\: :ref:`float`\ ) |virtual| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`_save_support_data`\ (\ filename\: :ref:`String`\ ) |virtual| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`_shaped_get_run_count`\ (\ shaped\: :ref:`RID`\ ) |virtual| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Direction` | :ref:`_shaped_get_run_direction`\ (\ shaped\: :ref:`RID`, index\: :ref:`int`\ ) |virtual| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`RID` | :ref:`_shaped_get_run_font_rid`\ (\ shaped\: :ref:`RID`, index\: :ref:`int`\ ) |virtual| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`_shaped_get_run_font_size`\ (\ shaped\: :ref:`RID`, index\: :ref:`int`\ ) |virtual| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`_shaped_get_run_language`\ (\ shaped\: :ref:`RID`, index\: :ref:`int`\ ) |virtual| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Variant` | :ref:`_shaped_get_run_object`\ (\ shaped\: :ref:`RID`, index\: :ref:`int`\ ) |virtual| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Vector2i` | :ref:`_shaped_get_run_range`\ (\ shaped\: :ref:`RID`, index\: :ref:`int`\ ) |virtual| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`_shaped_get_run_text`\ (\ shaped\: :ref:`RID`, index\: :ref:`int`\ ) |virtual| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`_shaped_get_span_count`\ (\ shaped\: :ref:`RID`\ ) |virtual| |required| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Variant` | :ref:`_shaped_get_span_embedded_object`\ (\ shaped\: :ref:`RID`, index\: :ref:`int`\ ) |virtual| |required| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Variant` | :ref:`_shaped_get_span_meta`\ (\ shaped\: :ref:`RID`, index\: :ref:`int`\ ) |virtual| |required| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Variant` | :ref:`_shaped_get_span_object`\ (\ shaped\: :ref:`RID`, index\: :ref:`int`\ ) |virtual| |required| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`_shaped_get_span_text`\ (\ shaped\: :ref:`RID`, index\: :ref:`int`\ ) |virtual| |required| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`_shaped_get_text`\ (\ shaped\: :ref:`RID`\ ) |virtual| |required| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_shaped_set_span_update_font`\ (\ shaped\: :ref:`RID`, index\: :ref:`int`, fonts\: :ref:`Array`\[:ref:`RID`\], size\: :ref:`int`, opentype_features\: :ref:`Dictionary`\ ) |virtual| |required| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`_shaped_text_add_object`\ (\ shaped\: :ref:`RID`, key\: :ref:`Variant`, size\: :ref:`Vector2`, inline_align\: :ref:`InlineAlignment`, length\: :ref:`int`, baseline\: :ref:`float`\ ) |virtual| |required| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`_shaped_text_add_string`\ (\ shaped\: :ref:`RID`, text\: :ref:`String`, fonts\: :ref:`Array`\[:ref:`RID`\], size\: :ref:`int`, opentype_features\: :ref:`Dictionary`, language\: :ref:`String`, meta\: :ref:`Variant`\ ) |virtual| |required| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_shaped_text_clear`\ (\ shaped\: :ref:`RID`\ ) |virtual| |required| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`_shaped_text_closest_character_pos`\ (\ shaped\: :ref:`RID`, pos\: :ref:`int`\ ) |virtual| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_shaped_text_draw`\ (\ shaped\: :ref:`RID`, canvas\: :ref:`RID`, pos\: :ref:`Vector2`, clip_l\: :ref:`float`, clip_r\: :ref:`float`, color\: :ref:`Color`, oversampling\: :ref:`float`\ ) |virtual| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_shaped_text_draw_outline`\ (\ shaped\: :ref:`RID`, canvas\: :ref:`RID`, pos\: :ref:`Vector2`, clip_l\: :ref:`float`, clip_r\: :ref:`float`, outline_size\: :ref:`int`, color\: :ref:`Color`, oversampling\: :ref:`float`\ ) |virtual| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`_shaped_text_fit_to_width`\ (\ shaped\: :ref:`RID`, width\: :ref:`float`, justification_flags\: |bitfield|\[:ref:`JustificationFlag`\]\ ) |virtual| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`_shaped_text_get_ascent`\ (\ shaped\: :ref:`RID`\ ) |virtual| |required| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_shaped_text_get_carets`\ (\ shaped\: :ref:`RID`, position\: :ref:`int`, caret\: ``CaretInfo*``\ ) |virtual| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`PackedInt32Array` | :ref:`_shaped_text_get_character_breaks`\ (\ shaped\: :ref:`RID`\ ) |virtual| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`_shaped_text_get_custom_ellipsis`\ (\ shaped\: :ref:`RID`\ ) |virtual| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`_shaped_text_get_custom_punctuation`\ (\ shaped\: :ref:`RID`\ ) |virtual| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`_shaped_text_get_descent`\ (\ shaped\: :ref:`RID`\ ) |virtual| |required| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Direction` | :ref:`_shaped_text_get_direction`\ (\ shaped\: :ref:`RID`\ ) |virtual| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`_shaped_text_get_dominant_direction_in_range`\ (\ shaped\: :ref:`RID`, start\: :ref:`int`, end\: :ref:`int`\ ) |virtual| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`_shaped_text_get_ellipsis_glyph_count`\ (\ shaped\: :ref:`RID`\ ) |virtual| |required| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | ``const Glyph*`` | :ref:`_shaped_text_get_ellipsis_glyphs`\ (\ shaped\: :ref:`RID`\ ) |virtual| |required| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`_shaped_text_get_ellipsis_pos`\ (\ shaped\: :ref:`RID`\ ) |virtual| |required| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`_shaped_text_get_glyph_count`\ (\ shaped\: :ref:`RID`\ ) |virtual| |required| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | ``const Glyph*`` | :ref:`_shaped_text_get_glyphs`\ (\ shaped\: :ref:`RID`\ ) |virtual| |required| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Vector2` | :ref:`_shaped_text_get_grapheme_bounds`\ (\ shaped\: :ref:`RID`, pos\: :ref:`int`\ ) |virtual| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Direction` | :ref:`_shaped_text_get_inferred_direction`\ (\ shaped\: :ref:`RID`\ ) |virtual| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`PackedInt32Array` | :ref:`_shaped_text_get_line_breaks`\ (\ shaped\: :ref:`RID`, width\: :ref:`float`, start\: :ref:`int`, break_flags\: |bitfield|\[:ref:`LineBreakFlag`\]\ ) |virtual| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`PackedInt32Array` | :ref:`_shaped_text_get_line_breaks_adv`\ (\ shaped\: :ref:`RID`, width\: :ref:`PackedFloat32Array`, start\: :ref:`int`, once\: :ref:`bool`, break_flags\: |bitfield|\[:ref:`LineBreakFlag`\]\ ) |virtual| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`_shaped_text_get_object_glyph`\ (\ shaped\: :ref:`RID`, key\: :ref:`Variant`\ ) |virtual| |required| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Vector2i` | :ref:`_shaped_text_get_object_range`\ (\ shaped\: :ref:`RID`, key\: :ref:`Variant`\ ) |virtual| |required| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Rect2` | :ref:`_shaped_text_get_object_rect`\ (\ shaped\: :ref:`RID`, key\: :ref:`Variant`\ ) |virtual| |required| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Array` | :ref:`_shaped_text_get_objects`\ (\ shaped\: :ref:`RID`\ ) |virtual| |required| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Orientation` | :ref:`_shaped_text_get_orientation`\ (\ shaped\: :ref:`RID`\ ) |virtual| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`RID` | :ref:`_shaped_text_get_parent`\ (\ shaped\: :ref:`RID`\ ) |virtual| |required| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`_shaped_text_get_preserve_control`\ (\ shaped\: :ref:`RID`\ ) |virtual| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`_shaped_text_get_preserve_invalid`\ (\ shaped\: :ref:`RID`\ ) |virtual| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Vector2i` | :ref:`_shaped_text_get_range`\ (\ shaped\: :ref:`RID`\ ) |virtual| |required| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`PackedVector2Array` | :ref:`_shaped_text_get_selection`\ (\ shaped\: :ref:`RID`, start\: :ref:`int`, end\: :ref:`int`\ ) |virtual| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Vector2` | :ref:`_shaped_text_get_size`\ (\ shaped\: :ref:`RID`\ ) |virtual| |required| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`_shaped_text_get_spacing`\ (\ shaped\: :ref:`RID`, spacing\: :ref:`SpacingType`\ ) |virtual| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`_shaped_text_get_trim_pos`\ (\ shaped\: :ref:`RID`\ ) |virtual| |required| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`_shaped_text_get_underline_position`\ (\ shaped\: :ref:`RID`\ ) |virtual| |required| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`_shaped_text_get_underline_thickness`\ (\ shaped\: :ref:`RID`\ ) |virtual| |required| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`_shaped_text_get_width`\ (\ shaped\: :ref:`RID`\ ) |virtual| |required| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`PackedInt32Array` | :ref:`_shaped_text_get_word_breaks`\ (\ shaped\: :ref:`RID`, grapheme_flags\: |bitfield|\[:ref:`GraphemeFlag`\], skip_grapheme_flags\: |bitfield|\[:ref:`GraphemeFlag`\]\ ) |virtual| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`_shaped_text_hit_test_grapheme`\ (\ shaped\: :ref:`RID`, coord\: :ref:`float`\ ) |virtual| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`_shaped_text_hit_test_position`\ (\ shaped\: :ref:`RID`, coord\: :ref:`float`\ ) |virtual| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`_shaped_text_is_ready`\ (\ shaped\: :ref:`RID`\ ) |virtual| |required| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`_shaped_text_next_character_pos`\ (\ shaped\: :ref:`RID`, pos\: :ref:`int`\ ) |virtual| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`_shaped_text_next_grapheme_pos`\ (\ shaped\: :ref:`RID`, pos\: :ref:`int`\ ) |virtual| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_shaped_text_overrun_trim_to_width`\ (\ shaped\: :ref:`RID`, width\: :ref:`float`, trim_flags\: |bitfield|\[:ref:`TextOverrunFlag`\]\ ) |virtual| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`_shaped_text_prev_character_pos`\ (\ shaped\: :ref:`RID`, pos\: :ref:`int`\ ) |virtual| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`_shaped_text_prev_grapheme_pos`\ (\ shaped\: :ref:`RID`, pos\: :ref:`int`\ ) |virtual| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`_shaped_text_resize_object`\ (\ shaped\: :ref:`RID`, key\: :ref:`Variant`, size\: :ref:`Vector2`, inline_align\: :ref:`InlineAlignment`, baseline\: :ref:`float`\ ) |virtual| |required| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_shaped_text_set_bidi_override`\ (\ shaped\: :ref:`RID`, override\: :ref:`Array`\ ) |virtual| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_shaped_text_set_custom_ellipsis`\ (\ shaped\: :ref:`RID`, char\: :ref:`int`\ ) |virtual| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_shaped_text_set_custom_punctuation`\ (\ shaped\: :ref:`RID`, punct\: :ref:`String`\ ) |virtual| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_shaped_text_set_direction`\ (\ shaped\: :ref:`RID`, direction\: :ref:`Direction`\ ) |virtual| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_shaped_text_set_orientation`\ (\ shaped\: :ref:`RID`, orientation\: :ref:`Orientation`\ ) |virtual| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_shaped_text_set_preserve_control`\ (\ shaped\: :ref:`RID`, enabled\: :ref:`bool`\ ) |virtual| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_shaped_text_set_preserve_invalid`\ (\ shaped\: :ref:`RID`, enabled\: :ref:`bool`\ ) |virtual| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_shaped_text_set_spacing`\ (\ shaped\: :ref:`RID`, spacing\: :ref:`SpacingType`, value\: :ref:`int`\ ) |virtual| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`_shaped_text_shape`\ (\ shaped\: :ref:`RID`\ ) |virtual| |required| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | ``const Glyph*`` | :ref:`_shaped_text_sort_logical`\ (\ shaped\: :ref:`RID`\ ) |virtual| |required| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`RID` | :ref:`_shaped_text_substr`\ (\ shaped\: :ref:`RID`, start\: :ref:`int`, length\: :ref:`int`\ ) |virtual| |required| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`_shaped_text_tab_align`\ (\ shaped\: :ref:`RID`, tab_stops\: :ref:`PackedFloat32Array`\ ) |virtual| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`_shaped_text_update_breaks`\ (\ shaped\: :ref:`RID`\ ) |virtual| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`_shaped_text_update_justification_ops`\ (\ shaped\: :ref:`RID`\ ) |virtual| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`_spoof_check`\ (\ string\: :ref:`String`\ ) |virtual| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`PackedInt32Array` | :ref:`_string_get_character_breaks`\ (\ string\: :ref:`String`, language\: :ref:`String`\ ) |virtual| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`PackedInt32Array` | :ref:`_string_get_word_breaks`\ (\ string\: :ref:`String`, language\: :ref:`String`, chars_per_line\: :ref:`int`\ ) |virtual| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`_string_to_lower`\ (\ string\: :ref:`String`, language\: :ref:`String`\ ) |virtual| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`_string_to_title`\ (\ string\: :ref:`String`, language\: :ref:`String`\ ) |virtual| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`_string_to_upper`\ (\ string\: :ref:`String`, language\: :ref:`String`\ ) |virtual| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`_strip_diacritics`\ (\ string\: :ref:`String`\ ) |virtual| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`_tag_to_name`\ (\ tag\: :ref:`int`\ ) |virtual| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_unreference_oversampling_level`\ (\ oversampling\: :ref:`float`\ ) |virtual| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ .. rst-class:: classref-section-separator @@ -490,8 +524,6 @@ Method Descriptions |void| **_cleanup**\ (\ ) |virtual| :ref:`🔗` -**Optional.**\ - This method is called before text server is unregistered. .. rst-class:: classref-item-separator @@ -502,9 +534,7 @@ This method is called before text server is unregistered. .. rst-class:: classref-method -:ref:`RID` **_create_font**\ (\ ) |virtual| :ref:`🔗` - -**Required.**\ +:ref:`RID` **_create_font**\ (\ ) |virtual| |required| :ref:`🔗` Creates a new, empty font cache entry resource. @@ -530,9 +560,7 @@ Creates a new variation existing font which is reusing the same glyph cache and .. rst-class:: classref-method -:ref:`RID` **_create_shaped_text**\ (\ direction\: :ref:`Direction`, orientation\: :ref:`Orientation`\ ) |virtual| :ref:`🔗` - -**Required.**\ +:ref:`RID` **_create_shaped_text**\ (\ direction\: :ref:`Direction`, orientation\: :ref:`Orientation`\ ) |virtual| |required| :ref:`🔗` Creates a new buffer for complex text layout, with the given ``direction`` and ``orientation``. @@ -546,8 +574,6 @@ Creates a new buffer for complex text layout, with the given ``direction`` and ` |void| **_draw_hex_code_box**\ (\ canvas\: :ref:`RID`, size\: :ref:`int`, pos\: :ref:`Vector2`, index\: :ref:`int`, color\: :ref:`Color`\ ) |virtual| |const| :ref:`🔗` -**Optional.**\ - Draws box displaying character hexadecimal code. .. rst-class:: classref-item-separator @@ -558,9 +584,7 @@ Draws box displaying character hexadecimal code. .. rst-class:: classref-method -|void| **_font_clear_glyphs**\ (\ font_rid\: :ref:`RID`, size\: :ref:`Vector2i`\ ) |virtual| :ref:`🔗` - -**Required.**\ +|void| **_font_clear_glyphs**\ (\ font_rid\: :ref:`RID`, size\: :ref:`Vector2i`\ ) |virtual| |required| :ref:`🔗` Removes all rendered glyph information from the cache entry. @@ -574,8 +598,6 @@ Removes all rendered glyph information from the cache entry. |void| **_font_clear_kerning_map**\ (\ font_rid\: :ref:`RID`, size\: :ref:`int`\ ) |virtual| :ref:`🔗` -**Optional.**\ - Removes all kerning overrides. .. rst-class:: classref-item-separator @@ -586,9 +608,7 @@ Removes all kerning overrides. .. rst-class:: classref-method -|void| **_font_clear_size_cache**\ (\ font_rid\: :ref:`RID`\ ) |virtual| :ref:`🔗` - -**Required.**\ +|void| **_font_clear_size_cache**\ (\ font_rid\: :ref:`RID`\ ) |virtual| |required| :ref:`🔗` Removes all font sizes from the cache entry. @@ -596,13 +616,23 @@ Removes all font sizes from the cache entry. ---- +.. _class_TextServerExtension_private_method__font_clear_system_fallback_cache: + +.. rst-class:: classref-method + +|void| **_font_clear_system_fallback_cache**\ (\ ) |virtual| :ref:`🔗` + +Frees all automatically loaded system fonts. + +.. rst-class:: classref-item-separator + +---- + .. _class_TextServerExtension_private_method__font_clear_textures: .. rst-class:: classref-method -|void| **_font_clear_textures**\ (\ font_rid\: :ref:`RID`, size\: :ref:`Vector2i`\ ) |virtual| :ref:`🔗` - -**Required.**\ +|void| **_font_clear_textures**\ (\ font_rid\: :ref:`RID`, size\: :ref:`Vector2i`\ ) |virtual| |required| :ref:`🔗` Removes all textures from font cache entry. @@ -614,11 +644,9 @@ Removes all textures from font cache entry. .. rst-class:: classref-method -|void| **_font_draw_glyph**\ (\ font_rid\: :ref:`RID`, canvas\: :ref:`RID`, size\: :ref:`int`, pos\: :ref:`Vector2`, index\: :ref:`int`, color\: :ref:`Color`\ ) |virtual| |const| :ref:`🔗` +|void| **_font_draw_glyph**\ (\ font_rid\: :ref:`RID`, canvas\: :ref:`RID`, size\: :ref:`int`, pos\: :ref:`Vector2`, index\: :ref:`int`, color\: :ref:`Color`, oversampling\: :ref:`float`\ ) |virtual| |required| |const| :ref:`🔗` -**Required.**\ - -Draws single glyph into a canvas item at the position, using ``font_rid`` at the size ``size``. +Draws single glyph into a canvas item at the position, using ``font_rid`` at the size ``size``. If ``oversampling`` is greater than zero, it is used as font oversampling factor, otherwise viewport oversampling settings are used. .. rst-class:: classref-item-separator @@ -628,11 +656,9 @@ Draws single glyph into a canvas item at the position, using ``font_rid`` at the .. rst-class:: classref-method -|void| **_font_draw_glyph_outline**\ (\ font_rid\: :ref:`RID`, canvas\: :ref:`RID`, size\: :ref:`int`, outline_size\: :ref:`int`, pos\: :ref:`Vector2`, index\: :ref:`int`, color\: :ref:`Color`\ ) |virtual| |const| :ref:`🔗` +|void| **_font_draw_glyph_outline**\ (\ font_rid\: :ref:`RID`, canvas\: :ref:`RID`, size\: :ref:`int`, outline_size\: :ref:`int`, pos\: :ref:`Vector2`, index\: :ref:`int`, color\: :ref:`Color`, oversampling\: :ref:`float`\ ) |virtual| |required| |const| :ref:`🔗` -**Required.**\ - -Draws single glyph outline of size ``outline_size`` into a canvas item at the position, using ``font_rid`` at the size ``size``. +Draws single glyph outline of size ``outline_size`` into a canvas item at the position, using ``font_rid`` at the size ``size``. If ``oversampling`` is greater than zero, it is used as font oversampling factor, otherwise viewport oversampling settings are used. .. rst-class:: classref-item-separator @@ -644,8 +670,6 @@ Draws single glyph outline of size ``outline_size`` into a canvas item at the po :ref:`FontAntialiasing` **_font_get_antialiasing**\ (\ font_rid\: :ref:`RID`\ ) |virtual| |const| :ref:`🔗` -**Optional.**\ - Returns font anti-aliasing mode. .. rst-class:: classref-item-separator @@ -656,9 +680,7 @@ Returns font anti-aliasing mode. .. rst-class:: classref-method -:ref:`float` **_font_get_ascent**\ (\ font_rid\: :ref:`RID`, size\: :ref:`int`\ ) |virtual| |const| :ref:`🔗` - -**Required.**\ +:ref:`float` **_font_get_ascent**\ (\ font_rid\: :ref:`RID`, size\: :ref:`int`\ ) |virtual| |required| |const| :ref:`🔗` Returns the font ascent (number of pixels above the baseline). @@ -672,8 +694,6 @@ Returns the font ascent (number of pixels above the baseline). :ref:`float` **_font_get_baseline_offset**\ (\ font_rid\: :ref:`RID`\ ) |virtual| |const| :ref:`🔗` -**Optional.**\ - Returns extra baseline offset (as a fraction of font height). .. rst-class:: classref-item-separator @@ -684,9 +704,7 @@ Returns extra baseline offset (as a fraction of font height). .. rst-class:: classref-method -:ref:`int` **_font_get_char_from_glyph_index**\ (\ font_rid\: :ref:`RID`, size\: :ref:`int`, glyph_index\: :ref:`int`\ ) |virtual| |const| :ref:`🔗` - -**Required.**\ +:ref:`int` **_font_get_char_from_glyph_index**\ (\ font_rid\: :ref:`RID`, size\: :ref:`int`, glyph_index\: :ref:`int`\ ) |virtual| |required| |const| :ref:`🔗` Returns character code associated with ``glyph_index``, or ``0`` if ``glyph_index`` is invalid. @@ -698,9 +716,7 @@ Returns character code associated with ``glyph_index``, or ``0`` if ``glyph_inde .. rst-class:: classref-method -:ref:`float` **_font_get_descent**\ (\ font_rid\: :ref:`RID`, size\: :ref:`int`\ ) |virtual| |const| :ref:`🔗` - -**Required.**\ +:ref:`float` **_font_get_descent**\ (\ font_rid\: :ref:`RID`, size\: :ref:`int`\ ) |virtual| |required| |const| :ref:`🔗` Returns the font descent (number of pixels below the baseline). @@ -714,8 +730,6 @@ Returns the font descent (number of pixels below the baseline). :ref:`bool` **_font_get_disable_embedded_bitmaps**\ (\ font_rid\: :ref:`RID`\ ) |virtual| |const| :ref:`🔗` -**Optional.**\ - Returns whether the font's embedded bitmap loading is disabled. .. rst-class:: classref-item-separator @@ -728,8 +742,6 @@ Returns whether the font's embedded bitmap loading is disabled. :ref:`float` **_font_get_embolden**\ (\ font_rid\: :ref:`RID`\ ) |virtual| |const| :ref:`🔗` -**Optional.**\ - Returns font embolden strength. .. rst-class:: classref-item-separator @@ -742,8 +754,6 @@ Returns font embolden strength. :ref:`int` **_font_get_face_count**\ (\ font_rid\: :ref:`RID`\ ) |virtual| |const| :ref:`🔗` -**Optional.**\ - Returns number of faces in the TrueType / OpenType collection. .. rst-class:: classref-item-separator @@ -756,8 +766,6 @@ Returns number of faces in the TrueType / OpenType collection. :ref:`int` **_font_get_face_index**\ (\ font_rid\: :ref:`RID`\ ) |virtual| |const| :ref:`🔗` -**Optional.**\ - Returns an active face index in the TrueType / OpenType collection. .. rst-class:: classref-item-separator @@ -768,9 +776,7 @@ Returns an active face index in the TrueType / OpenType collection. .. rst-class:: classref-method -:ref:`int` **_font_get_fixed_size**\ (\ font_rid\: :ref:`RID`\ ) |virtual| |const| :ref:`🔗` - -**Required.**\ +:ref:`int` **_font_get_fixed_size**\ (\ font_rid\: :ref:`RID`\ ) |virtual| |required| |const| :ref:`🔗` Returns bitmap font fixed size. @@ -782,9 +788,7 @@ Returns bitmap font fixed size. .. rst-class:: classref-method -:ref:`FixedSizeScaleMode` **_font_get_fixed_size_scale_mode**\ (\ font_rid\: :ref:`RID`\ ) |virtual| |const| :ref:`🔗` - -**Required.**\ +:ref:`FixedSizeScaleMode` **_font_get_fixed_size_scale_mode**\ (\ font_rid\: :ref:`RID`\ ) |virtual| |required| |const| :ref:`🔗` Returns bitmap font scaling mode. @@ -798,8 +802,6 @@ Returns bitmap font scaling mode. :ref:`bool` **_font_get_generate_mipmaps**\ (\ font_rid\: :ref:`RID`\ ) |virtual| |const| :ref:`🔗` -**Optional.**\ - Returns ``true`` if font texture mipmap generation is enabled. .. rst-class:: classref-item-separator @@ -812,8 +814,6 @@ Returns ``true`` if font texture mipmap generation is enabled. :ref:`float` **_font_get_global_oversampling**\ (\ ) |virtual| |const| :ref:`🔗` -**Optional.**\ - Returns the font oversampling factor, shared by all fonts in the TextServer. .. rst-class:: classref-item-separator @@ -824,9 +824,7 @@ Returns the font oversampling factor, shared by all fonts in the TextServer. .. rst-class:: classref-method -:ref:`Vector2` **_font_get_glyph_advance**\ (\ font_rid\: :ref:`RID`, size\: :ref:`int`, glyph\: :ref:`int`\ ) |virtual| |const| :ref:`🔗` - -**Required.**\ +:ref:`Vector2` **_font_get_glyph_advance**\ (\ font_rid\: :ref:`RID`, size\: :ref:`int`, glyph\: :ref:`int`\ ) |virtual| |required| |const| :ref:`🔗` Returns glyph advance (offset of the next glyph). @@ -840,8 +838,6 @@ Returns glyph advance (offset of the next glyph). :ref:`Dictionary` **_font_get_glyph_contours**\ (\ font_rid\: :ref:`RID`, size\: :ref:`int`, index\: :ref:`int`\ ) |virtual| |const| :ref:`🔗` -**Optional.**\ - Returns outline contours of the glyph. .. rst-class:: classref-item-separator @@ -852,9 +848,7 @@ Returns outline contours of the glyph. .. rst-class:: classref-method -:ref:`int` **_font_get_glyph_index**\ (\ font_rid\: :ref:`RID`, size\: :ref:`int`, char\: :ref:`int`, variation_selector\: :ref:`int`\ ) |virtual| |const| :ref:`🔗` - -**Required.**\ +:ref:`int` **_font_get_glyph_index**\ (\ font_rid\: :ref:`RID`, size\: :ref:`int`, char\: :ref:`int`, variation_selector\: :ref:`int`\ ) |virtual| |required| |const| :ref:`🔗` Returns the glyph index of a ``char``, optionally modified by the ``variation_selector``. @@ -866,9 +860,7 @@ Returns the glyph index of a ``char``, optionally modified by the ``variation_se .. rst-class:: classref-method -:ref:`PackedInt32Array` **_font_get_glyph_list**\ (\ font_rid\: :ref:`RID`, size\: :ref:`Vector2i`\ ) |virtual| |const| :ref:`🔗` - -**Required.**\ +:ref:`PackedInt32Array` **_font_get_glyph_list**\ (\ font_rid\: :ref:`RID`, size\: :ref:`Vector2i`\ ) |virtual| |required| |const| :ref:`🔗` Returns list of rendered glyphs in the cache entry. @@ -880,9 +872,7 @@ Returns list of rendered glyphs in the cache entry. .. rst-class:: classref-method -:ref:`Vector2` **_font_get_glyph_offset**\ (\ font_rid\: :ref:`RID`, size\: :ref:`Vector2i`, glyph\: :ref:`int`\ ) |virtual| |const| :ref:`🔗` - -**Required.**\ +:ref:`Vector2` **_font_get_glyph_offset**\ (\ font_rid\: :ref:`RID`, size\: :ref:`Vector2i`, glyph\: :ref:`int`\ ) |virtual| |required| |const| :ref:`🔗` Returns glyph offset from the baseline. @@ -894,9 +884,7 @@ Returns glyph offset from the baseline. .. rst-class:: classref-method -:ref:`Vector2` **_font_get_glyph_size**\ (\ font_rid\: :ref:`RID`, size\: :ref:`Vector2i`, glyph\: :ref:`int`\ ) |virtual| |const| :ref:`🔗` - -**Required.**\ +:ref:`Vector2` **_font_get_glyph_size**\ (\ font_rid\: :ref:`RID`, size\: :ref:`Vector2i`, glyph\: :ref:`int`\ ) |virtual| |required| |const| :ref:`🔗` Returns size of the glyph. @@ -908,9 +896,7 @@ Returns size of the glyph. .. rst-class:: classref-method -:ref:`int` **_font_get_glyph_texture_idx**\ (\ font_rid\: :ref:`RID`, size\: :ref:`Vector2i`, glyph\: :ref:`int`\ ) |virtual| |const| :ref:`🔗` - -**Required.**\ +:ref:`int` **_font_get_glyph_texture_idx**\ (\ font_rid\: :ref:`RID`, size\: :ref:`Vector2i`, glyph\: :ref:`int`\ ) |virtual| |required| |const| :ref:`🔗` Returns index of the cache texture containing the glyph. @@ -922,9 +908,7 @@ Returns index of the cache texture containing the glyph. .. rst-class:: classref-method -:ref:`RID` **_font_get_glyph_texture_rid**\ (\ font_rid\: :ref:`RID`, size\: :ref:`Vector2i`, glyph\: :ref:`int`\ ) |virtual| |const| :ref:`🔗` - -**Required.**\ +:ref:`RID` **_font_get_glyph_texture_rid**\ (\ font_rid\: :ref:`RID`, size\: :ref:`Vector2i`, glyph\: :ref:`int`\ ) |virtual| |required| |const| :ref:`🔗` Returns resource ID of the cache texture containing the glyph. @@ -936,9 +920,7 @@ Returns resource ID of the cache texture containing the glyph. .. rst-class:: classref-method -:ref:`Vector2` **_font_get_glyph_texture_size**\ (\ font_rid\: :ref:`RID`, size\: :ref:`Vector2i`, glyph\: :ref:`int`\ ) |virtual| |const| :ref:`🔗` - -**Required.**\ +:ref:`Vector2` **_font_get_glyph_texture_size**\ (\ font_rid\: :ref:`RID`, size\: :ref:`Vector2i`, glyph\: :ref:`int`\ ) |virtual| |required| |const| :ref:`🔗` Returns size of the cache texture containing the glyph. @@ -950,9 +932,7 @@ Returns size of the cache texture containing the glyph. .. rst-class:: classref-method -:ref:`Rect2` **_font_get_glyph_uv_rect**\ (\ font_rid\: :ref:`RID`, size\: :ref:`Vector2i`, glyph\: :ref:`int`\ ) |virtual| |const| :ref:`🔗` - -**Required.**\ +:ref:`Rect2` **_font_get_glyph_uv_rect**\ (\ font_rid\: :ref:`RID`, size\: :ref:`Vector2i`, glyph\: :ref:`int`\ ) |virtual| |required| |const| :ref:`🔗` Returns rectangle in the cache texture containing the glyph. @@ -966,8 +946,6 @@ Returns rectangle in the cache texture containing the glyph. :ref:`Hinting` **_font_get_hinting**\ (\ font_rid\: :ref:`RID`\ ) |virtual| |const| :ref:`🔗` -**Optional.**\ - Returns the font hinting mode. Used by dynamic fonts only. .. rst-class:: classref-item-separator @@ -980,8 +958,6 @@ Returns the font hinting mode. Used by dynamic fonts only. :ref:`bool` **_font_get_keep_rounding_remainders**\ (\ font_rid\: :ref:`RID`\ ) |virtual| |const| :ref:`🔗` -**Optional.**\ - Returns glyph position rounding behavior. If set to ``true``, when aligning glyphs to the pixel boundaries rounding remainders are accumulated to ensure more uniform glyph distribution. This setting has no effect if subpixel positioning is enabled. .. rst-class:: classref-item-separator @@ -994,8 +970,6 @@ Returns glyph position rounding behavior. If set to ``true``, when aligning glyp :ref:`Vector2` **_font_get_kerning**\ (\ font_rid\: :ref:`RID`, size\: :ref:`int`, glyph_pair\: :ref:`Vector2i`\ ) |virtual| |const| :ref:`🔗` -**Optional.**\ - Returns kerning for the pair of glyphs. .. rst-class:: classref-item-separator @@ -1008,8 +982,6 @@ Returns kerning for the pair of glyphs. :ref:`Array`\[:ref:`Vector2i`\] **_font_get_kerning_list**\ (\ font_rid\: :ref:`RID`, size\: :ref:`int`\ ) |virtual| |const| :ref:`🔗` -**Optional.**\ - Returns list of the kerning overrides. .. rst-class:: classref-item-separator @@ -1022,8 +994,6 @@ Returns list of the kerning overrides. :ref:`bool` **_font_get_language_support_override**\ (\ font_rid\: :ref:`RID`, language\: :ref:`String`\ ) |virtual| :ref:`🔗` -**Optional.**\ - Returns ``true`` if support override is enabled for the ``language``. .. rst-class:: classref-item-separator @@ -1036,8 +1006,6 @@ Returns ``true`` if support override is enabled for the ``language``. :ref:`PackedStringArray` **_font_get_language_support_overrides**\ (\ font_rid\: :ref:`RID`\ ) |virtual| :ref:`🔗` -**Optional.**\ - Returns list of language support overrides. .. rst-class:: classref-item-separator @@ -1050,8 +1018,6 @@ Returns list of language support overrides. :ref:`int` **_font_get_msdf_pixel_range**\ (\ font_rid\: :ref:`RID`\ ) |virtual| |const| :ref:`🔗` -**Optional.**\ - Returns the width of the range around the shape between the minimum and maximum representable signed distance. .. rst-class:: classref-item-separator @@ -1064,8 +1030,6 @@ Returns the width of the range around the shape between the minimum and maximum :ref:`int` **_font_get_msdf_size**\ (\ font_rid\: :ref:`RID`\ ) |virtual| |const| :ref:`🔗` -**Optional.**\ - Returns source font size used to generate MSDF textures. .. rst-class:: classref-item-separator @@ -1078,8 +1042,6 @@ Returns source font size used to generate MSDF textures. :ref:`String` **_font_get_name**\ (\ font_rid\: :ref:`RID`\ ) |virtual| |const| :ref:`🔗` -**Optional.**\ - Returns font family name. .. rst-class:: classref-item-separator @@ -1092,8 +1054,6 @@ Returns font family name. :ref:`Dictionary` **_font_get_opentype_feature_overrides**\ (\ font_rid\: :ref:`RID`\ ) |virtual| |const| :ref:`🔗` -**Optional.**\ - Returns font OpenType feature set override. .. rst-class:: classref-item-separator @@ -1106,8 +1066,6 @@ Returns font OpenType feature set override. :ref:`Dictionary` **_font_get_ot_name_strings**\ (\ font_rid\: :ref:`RID`\ ) |virtual| |const| :ref:`🔗` -**Optional.**\ - Returns :ref:`Dictionary` with OpenType font name strings (localized font names, version, description, license information, sample text, etc.). .. rst-class:: classref-item-separator @@ -1120,9 +1078,7 @@ Returns :ref:`Dictionary` with OpenType font name strings (loc :ref:`float` **_font_get_oversampling**\ (\ font_rid\: :ref:`RID`\ ) |virtual| |const| :ref:`🔗` -**Optional.**\ - -Returns font oversampling factor, if set to ``0.0`` global oversampling factor is used instead. Used by dynamic fonts only. +Returns oversampling factor override. If set to a positive value, overrides the oversampling factor of the viewport this font is used in. See :ref:`Viewport.oversampling`. This value doesn't override the ``oversampling`` parameter of ``draw_*`` methods. Used by dynamic fonts only. .. rst-class:: classref-item-separator @@ -1132,9 +1088,7 @@ Returns font oversampling factor, if set to ``0.0`` global oversampling factor i .. rst-class:: classref-method -:ref:`float` **_font_get_scale**\ (\ font_rid\: :ref:`RID`, size\: :ref:`int`\ ) |virtual| |const| :ref:`🔗` - -**Required.**\ +:ref:`float` **_font_get_scale**\ (\ font_rid\: :ref:`RID`, size\: :ref:`int`\ ) |virtual| |required| |const| :ref:`🔗` Returns scaling factor of the color bitmap font. @@ -1148,8 +1102,6 @@ Returns scaling factor of the color bitmap font. :ref:`bool` **_font_get_script_support_override**\ (\ font_rid\: :ref:`RID`, script\: :ref:`String`\ ) |virtual| :ref:`🔗` -**Optional.**\ - Returns ``true`` if support override is enabled for the ``script``. .. rst-class:: classref-item-separator @@ -1162,21 +1114,29 @@ Returns ``true`` if support override is enabled for the ``script``. :ref:`PackedStringArray` **_font_get_script_support_overrides**\ (\ font_rid\: :ref:`RID`\ ) |virtual| :ref:`🔗` -**Optional.**\ - Returns list of script support overrides. .. rst-class:: classref-item-separator ---- +.. _class_TextServerExtension_private_method__font_get_size_cache_info: + +.. rst-class:: classref-method + +:ref:`Array`\[:ref:`Dictionary`\] **_font_get_size_cache_info**\ (\ font_rid\: :ref:`RID`\ ) |virtual| |const| :ref:`🔗` + +Returns font cache information, each entry contains the following fields: ``Vector2i size_px`` - font size in pixels, ``float viewport_oversampling`` - viewport oversampling factor, ``int glyphs`` - number of rendered glyphs, ``int textures`` - number of used textures, ``int textures_size`` - size of texture data in bytes. + +.. rst-class:: classref-item-separator + +---- + .. _class_TextServerExtension_private_method__font_get_size_cache_list: .. rst-class:: classref-method -:ref:`Array`\[:ref:`Vector2i`\] **_font_get_size_cache_list**\ (\ font_rid\: :ref:`RID`\ ) |virtual| |const| :ref:`🔗` - -**Required.**\ +:ref:`Array`\[:ref:`Vector2i`\] **_font_get_size_cache_list**\ (\ font_rid\: :ref:`RID`\ ) |virtual| |required| |const| :ref:`🔗` Returns list of the font sizes in the cache. Each size is :ref:`Vector2i` with font size and outline size. @@ -1190,9 +1150,7 @@ Returns list of the font sizes in the cache. Each size is :ref:`Vector2i` **_font_get_spacing**\ (\ font_rid\: :ref:`RID`, spacing\: :ref:`SpacingType`\ ) |virtual| |const| :ref:`🔗` -**Optional.**\ - -Returns the spacing for ``spacing`` (see :ref:`SpacingType`) in pixels (not relative to the font size). +Returns the spacing for ``spacing`` in pixels (not relative to the font size). .. rst-class:: classref-item-separator @@ -1204,8 +1162,6 @@ Returns the spacing for ``spacing`` (see :ref:`SpacingType` **_font_get_stretch**\ (\ font_rid\: :ref:`RID`\ ) |virtual| |const| :ref:`🔗` -**Optional.**\ - Returns font stretch amount, compared to a normal width. A percentage value between ``50%`` and ``200%``. .. rst-class:: classref-item-separator @@ -1218,9 +1174,7 @@ Returns font stretch amount, compared to a normal width. A percentage value betw |bitfield|\[:ref:`FontStyle`\] **_font_get_style**\ (\ font_rid\: :ref:`RID`\ ) |virtual| |const| :ref:`🔗` -**Optional.**\ - -Returns font style flags, see :ref:`FontStyle`. +Returns font style flags. .. rst-class:: classref-item-separator @@ -1232,8 +1186,6 @@ Returns font style flags, see :ref:`FontStyle`. :ref:`String` **_font_get_style_name**\ (\ font_rid\: :ref:`RID`\ ) |virtual| |const| :ref:`🔗` -**Optional.**\ - Returns font style name. .. rst-class:: classref-item-separator @@ -1246,8 +1198,6 @@ Returns font style name. :ref:`SubpixelPositioning` **_font_get_subpixel_positioning**\ (\ font_rid\: :ref:`RID`\ ) |virtual| |const| :ref:`🔗` -**Optional.**\ - Returns font subpixel glyph positioning mode. .. rst-class:: classref-item-separator @@ -1258,9 +1208,7 @@ Returns font subpixel glyph positioning mode. .. rst-class:: classref-method -:ref:`String` **_font_get_supported_chars**\ (\ font_rid\: :ref:`RID`\ ) |virtual| |const| :ref:`🔗` - -**Required.**\ +:ref:`String` **_font_get_supported_chars**\ (\ font_rid\: :ref:`RID`\ ) |virtual| |required| |const| :ref:`🔗` Returns a string containing all the characters available in the font. @@ -1272,9 +1220,7 @@ Returns a string containing all the characters available in the font. .. rst-class:: classref-method -:ref:`PackedInt32Array` **_font_get_supported_glyphs**\ (\ font_rid\: :ref:`RID`\ ) |virtual| |const| :ref:`🔗` - -**Required.**\ +:ref:`PackedInt32Array` **_font_get_supported_glyphs**\ (\ font_rid\: :ref:`RID`\ ) |virtual| |required| |const| :ref:`🔗` Returns an array containing all glyph indices in the font. @@ -1286,9 +1232,7 @@ Returns an array containing all glyph indices in the font. .. rst-class:: classref-method -:ref:`int` **_font_get_texture_count**\ (\ font_rid\: :ref:`RID`, size\: :ref:`Vector2i`\ ) |virtual| |const| :ref:`🔗` - -**Required.**\ +:ref:`int` **_font_get_texture_count**\ (\ font_rid\: :ref:`RID`, size\: :ref:`Vector2i`\ ) |virtual| |required| |const| :ref:`🔗` Returns number of textures used by font cache entry. @@ -1300,9 +1244,7 @@ Returns number of textures used by font cache entry. .. rst-class:: classref-method -:ref:`Image` **_font_get_texture_image**\ (\ font_rid\: :ref:`RID`, size\: :ref:`Vector2i`, texture_index\: :ref:`int`\ ) |virtual| |const| :ref:`🔗` - -**Required.**\ +:ref:`Image` **_font_get_texture_image**\ (\ font_rid\: :ref:`RID`, size\: :ref:`Vector2i`, texture_index\: :ref:`int`\ ) |virtual| |required| |const| :ref:`🔗` Returns font cache texture image data. @@ -1316,8 +1258,6 @@ Returns font cache texture image data. :ref:`PackedInt32Array` **_font_get_texture_offsets**\ (\ font_rid\: :ref:`RID`, size\: :ref:`Vector2i`, texture_index\: :ref:`int`\ ) |virtual| |const| :ref:`🔗` -**Optional.**\ - Returns array containing glyph packing data. .. rst-class:: classref-item-separator @@ -1330,8 +1270,6 @@ Returns array containing glyph packing data. :ref:`Transform2D` **_font_get_transform**\ (\ font_rid\: :ref:`RID`\ ) |virtual| |const| :ref:`🔗` -**Optional.**\ - Returns 2D transform applied to the font outlines. .. rst-class:: classref-item-separator @@ -1342,9 +1280,7 @@ Returns 2D transform applied to the font outlines. .. rst-class:: classref-method -:ref:`float` **_font_get_underline_position**\ (\ font_rid\: :ref:`RID`, size\: :ref:`int`\ ) |virtual| |const| :ref:`🔗` - -**Required.**\ +:ref:`float` **_font_get_underline_position**\ (\ font_rid\: :ref:`RID`, size\: :ref:`int`\ ) |virtual| |required| |const| :ref:`🔗` Returns pixel offset of the underline below the baseline. @@ -1356,9 +1292,7 @@ Returns pixel offset of the underline below the baseline. .. rst-class:: classref-method -:ref:`float` **_font_get_underline_thickness**\ (\ font_rid\: :ref:`RID`, size\: :ref:`int`\ ) |virtual| |const| :ref:`🔗` - -**Required.**\ +:ref:`float` **_font_get_underline_thickness**\ (\ font_rid\: :ref:`RID`, size\: :ref:`int`\ ) |virtual| |required| |const| :ref:`🔗` Returns thickness of the underline in pixels. @@ -1372,8 +1306,6 @@ Returns thickness of the underline in pixels. :ref:`Dictionary` **_font_get_variation_coordinates**\ (\ font_rid\: :ref:`RID`\ ) |virtual| |const| :ref:`🔗` -**Optional.**\ - Returns variation coordinates for the specified font cache entry. .. rst-class:: classref-item-separator @@ -1386,8 +1318,6 @@ Returns variation coordinates for the specified font cache entry. :ref:`int` **_font_get_weight**\ (\ font_rid\: :ref:`RID`\ ) |virtual| |const| :ref:`🔗` -**Optional.**\ - Returns weight (boldness) of the font. A value in the ``100...999`` range, normal font weight is ``400``, bold font weight is ``700``. .. rst-class:: classref-item-separator @@ -1398,9 +1328,7 @@ Returns weight (boldness) of the font. A value in the ``100...999`` range, norma .. rst-class:: classref-method -:ref:`bool` **_font_has_char**\ (\ font_rid\: :ref:`RID`, char\: :ref:`int`\ ) |virtual| |const| :ref:`🔗` - -**Required.**\ +:ref:`bool` **_font_has_char**\ (\ font_rid\: :ref:`RID`, char\: :ref:`int`\ ) |virtual| |required| |const| :ref:`🔗` Returns ``true`` if a Unicode ``char`` is available in the font. @@ -1414,8 +1342,6 @@ Returns ``true`` if a Unicode ``char`` is available in the font. :ref:`bool` **_font_is_allow_system_fallback**\ (\ font_rid\: :ref:`RID`\ ) |virtual| |const| :ref:`🔗` -**Optional.**\ - Returns ``true`` if system fonts can be automatically used as fallbacks. .. rst-class:: classref-item-separator @@ -1428,8 +1354,6 @@ Returns ``true`` if system fonts can be automatically used as fallbacks. :ref:`bool` **_font_is_force_autohinter**\ (\ font_rid\: :ref:`RID`\ ) |virtual| |const| :ref:`🔗` -**Optional.**\ - Returns ``true`` if auto-hinting is supported and preferred over font built-in hinting. .. rst-class:: classref-item-separator @@ -1442,22 +1366,30 @@ Returns ``true`` if auto-hinting is supported and preferred over font built-in h :ref:`bool` **_font_is_language_supported**\ (\ font_rid\: :ref:`RID`, language\: :ref:`String`\ ) |virtual| |const| :ref:`🔗` -**Optional.**\ - Returns ``true``, if font supports given language (`ISO 639 `__ code). .. rst-class:: classref-item-separator ---- +.. _class_TextServerExtension_private_method__font_is_modulate_color_glyphs: + +.. rst-class:: classref-method + +:ref:`bool` **_font_is_modulate_color_glyphs**\ (\ font_rid\: :ref:`RID`\ ) |virtual| |const| :ref:`🔗` + +Returns ``true``, if color modulation is applied when drawing colored glyphs. + +.. rst-class:: classref-item-separator + +---- + .. _class_TextServerExtension_private_method__font_is_multichannel_signed_distance_field: .. rst-class:: classref-method :ref:`bool` **_font_is_multichannel_signed_distance_field**\ (\ font_rid\: :ref:`RID`\ ) |virtual| |const| :ref:`🔗` -**Optional.**\ - Returns ``true`` if glyphs of all sizes are rendered using single multichannel signed distance field generated from the dynamic font vector data. .. rst-class:: classref-item-separator @@ -1470,8 +1402,6 @@ Returns ``true`` if glyphs of all sizes are rendered using single multichannel s :ref:`bool` **_font_is_script_supported**\ (\ font_rid\: :ref:`RID`, script\: :ref:`String`\ ) |virtual| |const| :ref:`🔗` -**Optional.**\ - Returns ``true``, if font supports given script (ISO 15924 code). .. rst-class:: classref-item-separator @@ -1482,9 +1412,7 @@ Returns ``true``, if font supports given script (ISO 15924 code). .. rst-class:: classref-method -|void| **_font_remove_glyph**\ (\ font_rid\: :ref:`RID`, size\: :ref:`Vector2i`, glyph\: :ref:`int`\ ) |virtual| :ref:`🔗` - -**Required.**\ +|void| **_font_remove_glyph**\ (\ font_rid\: :ref:`RID`, size\: :ref:`Vector2i`, glyph\: :ref:`int`\ ) |virtual| |required| :ref:`🔗` Removes specified rendered glyph information from the cache entry. @@ -1498,8 +1426,6 @@ Removes specified rendered glyph information from the cache entry. |void| **_font_remove_kerning**\ (\ font_rid\: :ref:`RID`, size\: :ref:`int`, glyph_pair\: :ref:`Vector2i`\ ) |virtual| :ref:`🔗` -**Optional.**\ - Removes kerning override for the pair of glyphs. .. rst-class:: classref-item-separator @@ -1512,8 +1438,6 @@ Removes kerning override for the pair of glyphs. |void| **_font_remove_language_support_override**\ (\ font_rid\: :ref:`RID`, language\: :ref:`String`\ ) |virtual| :ref:`🔗` -**Optional.**\ - Remove language support override. .. rst-class:: classref-item-separator @@ -1526,8 +1450,6 @@ Remove language support override. |void| **_font_remove_script_support_override**\ (\ font_rid\: :ref:`RID`, script\: :ref:`String`\ ) |virtual| :ref:`🔗` -**Optional.**\ - Removes script support override. .. rst-class:: classref-item-separator @@ -1538,9 +1460,7 @@ Removes script support override. .. rst-class:: classref-method -|void| **_font_remove_size_cache**\ (\ font_rid\: :ref:`RID`, size\: :ref:`Vector2i`\ ) |virtual| :ref:`🔗` - -**Required.**\ +|void| **_font_remove_size_cache**\ (\ font_rid\: :ref:`RID`, size\: :ref:`Vector2i`\ ) |virtual| |required| :ref:`🔗` Removes specified font size from the cache entry. @@ -1552,9 +1472,7 @@ Removes specified font size from the cache entry. .. rst-class:: classref-method -|void| **_font_remove_texture**\ (\ font_rid\: :ref:`RID`, size\: :ref:`Vector2i`, texture_index\: :ref:`int`\ ) |virtual| :ref:`🔗` - -**Required.**\ +|void| **_font_remove_texture**\ (\ font_rid\: :ref:`RID`, size\: :ref:`Vector2i`, texture_index\: :ref:`int`\ ) |virtual| |required| :ref:`🔗` Removes specified texture from the cache entry. @@ -1568,8 +1486,6 @@ Removes specified texture from the cache entry. |void| **_font_render_glyph**\ (\ font_rid\: :ref:`RID`, size\: :ref:`Vector2i`, index\: :ref:`int`\ ) |virtual| :ref:`🔗` -**Optional.**\ - Renders specified glyph to the font cache texture. .. rst-class:: classref-item-separator @@ -1582,8 +1498,6 @@ Renders specified glyph to the font cache texture. |void| **_font_render_range**\ (\ font_rid\: :ref:`RID`, size\: :ref:`Vector2i`, start\: :ref:`int`, end\: :ref:`int`\ ) |virtual| :ref:`🔗` -**Optional.**\ - Renders the range of characters to the font cache texture. .. rst-class:: classref-item-separator @@ -1596,8 +1510,6 @@ Renders the range of characters to the font cache texture. |void| **_font_set_allow_system_fallback**\ (\ font_rid\: :ref:`RID`, allow_system_fallback\: :ref:`bool`\ ) |virtual| :ref:`🔗` -**Optional.**\ - If set to ``true``, system fonts can be automatically used as fallbacks. .. rst-class:: classref-item-separator @@ -1610,8 +1522,6 @@ If set to ``true``, system fonts can be automatically used as fallbacks. |void| **_font_set_antialiasing**\ (\ font_rid\: :ref:`RID`, antialiasing\: :ref:`FontAntialiasing`\ ) |virtual| :ref:`🔗` -**Optional.**\ - Sets font anti-aliasing mode. .. rst-class:: classref-item-separator @@ -1622,9 +1532,7 @@ Sets font anti-aliasing mode. .. rst-class:: classref-method -|void| **_font_set_ascent**\ (\ font_rid\: :ref:`RID`, size\: :ref:`int`, ascent\: :ref:`float`\ ) |virtual| :ref:`🔗` - -**Required.**\ +|void| **_font_set_ascent**\ (\ font_rid\: :ref:`RID`, size\: :ref:`int`, ascent\: :ref:`float`\ ) |virtual| |required| :ref:`🔗` Sets the font ascent (number of pixels above the baseline). @@ -1638,8 +1546,6 @@ Sets the font ascent (number of pixels above the baseline). |void| **_font_set_baseline_offset**\ (\ font_rid\: :ref:`RID`, baseline_offset\: :ref:`float`\ ) |virtual| :ref:`🔗` -**Optional.**\ - Sets extra baseline offset (as a fraction of font height). .. rst-class:: classref-item-separator @@ -1652,8 +1558,6 @@ Sets extra baseline offset (as a fraction of font height). |void| **_font_set_data**\ (\ font_rid\: :ref:`RID`, data\: :ref:`PackedByteArray`\ ) |virtual| :ref:`🔗` -**Optional.**\ - Sets font source data, e.g contents of the dynamic font source file. .. rst-class:: classref-item-separator @@ -1666,8 +1570,6 @@ Sets font source data, e.g contents of the dynamic font source file. |void| **_font_set_data_ptr**\ (\ font_rid\: :ref:`RID`, data_ptr\: ``const uint8_t*``, data_size\: :ref:`int`\ ) |virtual| :ref:`🔗` -**Optional.**\ - Sets pointer to the font source data, e.g contents of the dynamic font source file. .. rst-class:: classref-item-separator @@ -1678,9 +1580,7 @@ Sets pointer to the font source data, e.g contents of the dynamic font source fi .. rst-class:: classref-method -|void| **_font_set_descent**\ (\ font_rid\: :ref:`RID`, size\: :ref:`int`, descent\: :ref:`float`\ ) |virtual| :ref:`🔗` - -**Required.**\ +|void| **_font_set_descent**\ (\ font_rid\: :ref:`RID`, size\: :ref:`int`, descent\: :ref:`float`\ ) |virtual| |required| :ref:`🔗` Sets the font descent (number of pixels below the baseline). @@ -1694,8 +1594,6 @@ Sets the font descent (number of pixels below the baseline). |void| **_font_set_disable_embedded_bitmaps**\ (\ font_rid\: :ref:`RID`, disable_embedded_bitmaps\: :ref:`bool`\ ) |virtual| :ref:`🔗` -**Optional.**\ - If set to ``true``, embedded font bitmap loading is disabled. .. rst-class:: classref-item-separator @@ -1720,8 +1618,6 @@ Sets font embolden strength. If ``strength`` is not equal to zero, emboldens the |void| **_font_set_face_index**\ (\ font_rid\: :ref:`RID`, face_index\: :ref:`int`\ ) |virtual| :ref:`🔗` -**Optional.**\ - Sets an active face index in the TrueType / OpenType collection. .. rst-class:: classref-item-separator @@ -1732,9 +1628,7 @@ Sets an active face index in the TrueType / OpenType collection. .. rst-class:: classref-method -|void| **_font_set_fixed_size**\ (\ font_rid\: :ref:`RID`, fixed_size\: :ref:`int`\ ) |virtual| :ref:`🔗` - -**Required.**\ +|void| **_font_set_fixed_size**\ (\ font_rid\: :ref:`RID`, fixed_size\: :ref:`int`\ ) |virtual| |required| :ref:`🔗` Sets bitmap font fixed size. If set to value greater than zero, same cache entry will be used for all font sizes. @@ -1746,9 +1640,7 @@ Sets bitmap font fixed size. If set to value greater than zero, same cache entry .. rst-class:: classref-method -|void| **_font_set_fixed_size_scale_mode**\ (\ font_rid\: :ref:`RID`, fixed_size_scale_mode\: :ref:`FixedSizeScaleMode`\ ) |virtual| :ref:`🔗` - -**Required.**\ +|void| **_font_set_fixed_size_scale_mode**\ (\ font_rid\: :ref:`RID`, fixed_size_scale_mode\: :ref:`FixedSizeScaleMode`\ ) |virtual| |required| :ref:`🔗` Sets bitmap font scaling mode. This property is used only if ``fixed_size`` is greater than zero. @@ -1762,8 +1654,6 @@ Sets bitmap font scaling mode. This property is used only if ``fixed_size`` is g |void| **_font_set_force_autohinter**\ (\ font_rid\: :ref:`RID`, force_autohinter\: :ref:`bool`\ ) |virtual| :ref:`🔗` -**Optional.**\ - If set to ``true`` auto-hinting is preferred over font built-in hinting. .. rst-class:: classref-item-separator @@ -1776,8 +1666,6 @@ If set to ``true`` auto-hinting is preferred over font built-in hinting. |void| **_font_set_generate_mipmaps**\ (\ font_rid\: :ref:`RID`, generate_mipmaps\: :ref:`bool`\ ) |virtual| :ref:`🔗` -**Optional.**\ - If set to ``true`` font texture mipmap generation is enabled. .. rst-class:: classref-item-separator @@ -1790,8 +1678,6 @@ If set to ``true`` font texture mipmap generation is enabled. |void| **_font_set_global_oversampling**\ (\ oversampling\: :ref:`float`\ ) |virtual| :ref:`🔗` -**Optional.**\ - Sets oversampling factor, shared by all font in the TextServer. .. rst-class:: classref-item-separator @@ -1802,9 +1688,7 @@ Sets oversampling factor, shared by all font in the TextServer. .. rst-class:: classref-method -|void| **_font_set_glyph_advance**\ (\ font_rid\: :ref:`RID`, size\: :ref:`int`, glyph\: :ref:`int`, advance\: :ref:`Vector2`\ ) |virtual| :ref:`🔗` - -**Required.**\ +|void| **_font_set_glyph_advance**\ (\ font_rid\: :ref:`RID`, size\: :ref:`int`, glyph\: :ref:`int`, advance\: :ref:`Vector2`\ ) |virtual| |required| :ref:`🔗` Sets glyph advance (offset of the next glyph). @@ -1816,9 +1700,7 @@ Sets glyph advance (offset of the next glyph). .. rst-class:: classref-method -|void| **_font_set_glyph_offset**\ (\ font_rid\: :ref:`RID`, size\: :ref:`Vector2i`, glyph\: :ref:`int`, offset\: :ref:`Vector2`\ ) |virtual| :ref:`🔗` - -**Required.**\ +|void| **_font_set_glyph_offset**\ (\ font_rid\: :ref:`RID`, size\: :ref:`Vector2i`, glyph\: :ref:`int`, offset\: :ref:`Vector2`\ ) |virtual| |required| :ref:`🔗` Sets glyph offset from the baseline. @@ -1830,9 +1712,7 @@ Sets glyph offset from the baseline. .. rst-class:: classref-method -|void| **_font_set_glyph_size**\ (\ font_rid\: :ref:`RID`, size\: :ref:`Vector2i`, glyph\: :ref:`int`, gl_size\: :ref:`Vector2`\ ) |virtual| :ref:`🔗` - -**Required.**\ +|void| **_font_set_glyph_size**\ (\ font_rid\: :ref:`RID`, size\: :ref:`Vector2i`, glyph\: :ref:`int`, gl_size\: :ref:`Vector2`\ ) |virtual| |required| :ref:`🔗` Sets size of the glyph. @@ -1844,9 +1724,7 @@ Sets size of the glyph. .. rst-class:: classref-method -|void| **_font_set_glyph_texture_idx**\ (\ font_rid\: :ref:`RID`, size\: :ref:`Vector2i`, glyph\: :ref:`int`, texture_idx\: :ref:`int`\ ) |virtual| :ref:`🔗` - -**Required.**\ +|void| **_font_set_glyph_texture_idx**\ (\ font_rid\: :ref:`RID`, size\: :ref:`Vector2i`, glyph\: :ref:`int`, texture_idx\: :ref:`int`\ ) |virtual| |required| :ref:`🔗` Sets index of the cache texture containing the glyph. @@ -1858,9 +1736,7 @@ Sets index of the cache texture containing the glyph. .. rst-class:: classref-method -|void| **_font_set_glyph_uv_rect**\ (\ font_rid\: :ref:`RID`, size\: :ref:`Vector2i`, glyph\: :ref:`int`, uv_rect\: :ref:`Rect2`\ ) |virtual| :ref:`🔗` - -**Required.**\ +|void| **_font_set_glyph_uv_rect**\ (\ font_rid\: :ref:`RID`, size\: :ref:`Vector2i`, glyph\: :ref:`int`, uv_rect\: :ref:`Rect2`\ ) |virtual| |required| :ref:`🔗` Sets rectangle in the cache texture containing the glyph. @@ -1874,8 +1750,6 @@ Sets rectangle in the cache texture containing the glyph. |void| **_font_set_hinting**\ (\ font_rid\: :ref:`RID`, hinting\: :ref:`Hinting`\ ) |virtual| :ref:`🔗` -**Optional.**\ - Sets font hinting mode. Used by dynamic fonts only. .. rst-class:: classref-item-separator @@ -1888,8 +1762,6 @@ Sets font hinting mode. Used by dynamic fonts only. |void| **_font_set_keep_rounding_remainders**\ (\ font_rid\: :ref:`RID`, keep_rounding_remainders\: :ref:`bool`\ ) |virtual| :ref:`🔗` -**Optional.**\ - Sets glyph position rounding behavior. If set to ``true``, when aligning glyphs to the pixel boundaries rounding remainders are accumulated to ensure more uniform glyph distribution. This setting has no effect if subpixel positioning is enabled. .. rst-class:: classref-item-separator @@ -1902,8 +1774,6 @@ Sets glyph position rounding behavior. If set to ``true``, when aligning glyphs |void| **_font_set_kerning**\ (\ font_rid\: :ref:`RID`, size\: :ref:`int`, glyph_pair\: :ref:`Vector2i`, kerning\: :ref:`Vector2`\ ) |virtual| :ref:`🔗` -**Optional.**\ - Sets kerning for the pair of glyphs. .. rst-class:: classref-item-separator @@ -1916,22 +1786,30 @@ Sets kerning for the pair of glyphs. |void| **_font_set_language_support_override**\ (\ font_rid\: :ref:`RID`, language\: :ref:`String`, supported\: :ref:`bool`\ ) |virtual| :ref:`🔗` -**Optional.**\ - Adds override for :ref:`_font_is_language_supported()`. .. rst-class:: classref-item-separator ---- +.. _class_TextServerExtension_private_method__font_set_modulate_color_glyphs: + +.. rst-class:: classref-method + +|void| **_font_set_modulate_color_glyphs**\ (\ font_rid\: :ref:`RID`, modulate\: :ref:`bool`\ ) |virtual| :ref:`🔗` + +If set to ``true``, color modulation is applied when drawing colored glyphs, otherwise it's applied to the monochrome glyphs only. + +.. rst-class:: classref-item-separator + +---- + .. _class_TextServerExtension_private_method__font_set_msdf_pixel_range: .. rst-class:: classref-method |void| **_font_set_msdf_pixel_range**\ (\ font_rid\: :ref:`RID`, msdf_pixel_range\: :ref:`int`\ ) |virtual| :ref:`🔗` -**Optional.**\ - Sets the width of the range around the shape between the minimum and maximum representable signed distance. .. rst-class:: classref-item-separator @@ -1944,8 +1822,6 @@ Sets the width of the range around the shape between the minimum and maximum rep |void| **_font_set_msdf_size**\ (\ font_rid\: :ref:`RID`, msdf_size\: :ref:`int`\ ) |virtual| :ref:`🔗` -**Optional.**\ - Sets source font size used to generate MSDF textures. .. rst-class:: classref-item-separator @@ -1958,8 +1834,6 @@ Sets source font size used to generate MSDF textures. |void| **_font_set_multichannel_signed_distance_field**\ (\ font_rid\: :ref:`RID`, msdf\: :ref:`bool`\ ) |virtual| :ref:`🔗` -**Optional.**\ - If set to ``true``, glyphs of all sizes are rendered using single multichannel signed distance field generated from the dynamic font vector data. MSDF rendering allows displaying the font at any scaling factor without blurriness, and without incurring a CPU cost when the font size changes (since the font no longer needs to be rasterized on the CPU). As a downside, font hinting is not available with MSDF. The lack of font hinting may result in less crisp and less readable fonts at small sizes. .. rst-class:: classref-item-separator @@ -1972,8 +1846,6 @@ If set to ``true``, glyphs of all sizes are rendered using single multichannel s |void| **_font_set_name**\ (\ font_rid\: :ref:`RID`, name\: :ref:`String`\ ) |virtual| :ref:`🔗` -**Optional.**\ - Sets the font family name. .. rst-class:: classref-item-separator @@ -1986,8 +1858,6 @@ Sets the font family name. |void| **_font_set_opentype_feature_overrides**\ (\ font_rid\: :ref:`RID`, overrides\: :ref:`Dictionary`\ ) |virtual| :ref:`🔗` -**Optional.**\ - Sets font OpenType feature set override. .. rst-class:: classref-item-separator @@ -2000,9 +1870,7 @@ Sets font OpenType feature set override. |void| **_font_set_oversampling**\ (\ font_rid\: :ref:`RID`, oversampling\: :ref:`float`\ ) |virtual| :ref:`🔗` -**Optional.**\ - -Sets font oversampling factor, if set to ``0.0`` global oversampling factor is used instead. Used by dynamic fonts only. +If set to a positive value, overrides the oversampling factor of the viewport this font is used in. See :ref:`Viewport.oversampling`. This value doesn't override the ``oversampling`` parameter of ``draw_*`` methods. Used by dynamic fonts only. .. rst-class:: classref-item-separator @@ -2012,9 +1880,7 @@ Sets font oversampling factor, if set to ``0.0`` global oversampling factor is u .. rst-class:: classref-method -|void| **_font_set_scale**\ (\ font_rid\: :ref:`RID`, size\: :ref:`int`, scale\: :ref:`float`\ ) |virtual| :ref:`🔗` - -**Required.**\ +|void| **_font_set_scale**\ (\ font_rid\: :ref:`RID`, size\: :ref:`int`, scale\: :ref:`float`\ ) |virtual| |required| :ref:`🔗` Sets scaling factor of the color bitmap font. @@ -2028,8 +1894,6 @@ Sets scaling factor of the color bitmap font. |void| **_font_set_script_support_override**\ (\ font_rid\: :ref:`RID`, script\: :ref:`String`, supported\: :ref:`bool`\ ) |virtual| :ref:`🔗` -**Optional.**\ - Adds override for :ref:`_font_is_script_supported()`. .. rst-class:: classref-item-separator @@ -2042,9 +1906,7 @@ Adds override for :ref:`_font_is_script_supported()`, spacing\: :ref:`SpacingType`, value\: :ref:`int`\ ) |virtual| :ref:`🔗` -**Optional.**\ - -Sets the spacing for ``spacing`` (see :ref:`SpacingType`) to ``value`` in pixels (not relative to the font size). +Sets the spacing for ``spacing`` to ``value`` in pixels (not relative to the font size). .. rst-class:: classref-item-separator @@ -2056,8 +1918,6 @@ Sets the spacing for ``spacing`` (see :ref:`SpacingType`, stretch\: :ref:`int`\ ) |virtual| :ref:`🔗` -**Optional.**\ - Sets font stretch amount, compared to a normal width. A percentage value between ``50%`` and ``200%``. .. rst-class:: classref-item-separator @@ -2070,9 +1930,7 @@ Sets font stretch amount, compared to a normal width. A percentage value between |void| **_font_set_style**\ (\ font_rid\: :ref:`RID`, style\: |bitfield|\[:ref:`FontStyle`\]\ ) |virtual| :ref:`🔗` -**Optional.**\ - -Sets the font style flags, see :ref:`FontStyle`. +Sets the font style flags. .. rst-class:: classref-item-separator @@ -2084,8 +1942,6 @@ Sets the font style flags, see :ref:`FontStyle`. |void| **_font_set_style_name**\ (\ font_rid\: :ref:`RID`, name_style\: :ref:`String`\ ) |virtual| :ref:`🔗` -**Optional.**\ - Sets the font style name. .. rst-class:: classref-item-separator @@ -2098,8 +1954,6 @@ Sets the font style name. |void| **_font_set_subpixel_positioning**\ (\ font_rid\: :ref:`RID`, subpixel_positioning\: :ref:`SubpixelPositioning`\ ) |virtual| :ref:`🔗` -**Optional.**\ - Sets font subpixel glyph positioning mode. .. rst-class:: classref-item-separator @@ -2110,9 +1964,7 @@ Sets font subpixel glyph positioning mode. .. rst-class:: classref-method -|void| **_font_set_texture_image**\ (\ font_rid\: :ref:`RID`, size\: :ref:`Vector2i`, texture_index\: :ref:`int`, image\: :ref:`Image`\ ) |virtual| :ref:`🔗` - -**Required.**\ +|void| **_font_set_texture_image**\ (\ font_rid\: :ref:`RID`, size\: :ref:`Vector2i`, texture_index\: :ref:`int`, image\: :ref:`Image`\ ) |virtual| |required| :ref:`🔗` Sets font cache texture image data. @@ -2126,8 +1978,6 @@ Sets font cache texture image data. |void| **_font_set_texture_offsets**\ (\ font_rid\: :ref:`RID`, size\: :ref:`Vector2i`, texture_index\: :ref:`int`, offset\: :ref:`PackedInt32Array`\ ) |virtual| :ref:`🔗` -**Optional.**\ - Sets array containing glyph packing data. .. rst-class:: classref-item-separator @@ -2140,8 +1990,6 @@ Sets array containing glyph packing data. |void| **_font_set_transform**\ (\ font_rid\: :ref:`RID`, transform\: :ref:`Transform2D`\ ) |virtual| :ref:`🔗` -**Optional.**\ - Sets 2D transform, applied to the font outlines, can be used for slanting, flipping, and rotating glyphs. .. rst-class:: classref-item-separator @@ -2152,9 +2000,7 @@ Sets 2D transform, applied to the font outlines, can be used for slanting, flipp .. rst-class:: classref-method -|void| **_font_set_underline_position**\ (\ font_rid\: :ref:`RID`, size\: :ref:`int`, underline_position\: :ref:`float`\ ) |virtual| :ref:`🔗` - -**Required.**\ +|void| **_font_set_underline_position**\ (\ font_rid\: :ref:`RID`, size\: :ref:`int`, underline_position\: :ref:`float`\ ) |virtual| |required| :ref:`🔗` Sets pixel offset of the underline below the baseline. @@ -2166,9 +2012,7 @@ Sets pixel offset of the underline below the baseline. .. rst-class:: classref-method -|void| **_font_set_underline_thickness**\ (\ font_rid\: :ref:`RID`, size\: :ref:`int`, underline_thickness\: :ref:`float`\ ) |virtual| :ref:`🔗` - -**Required.**\ +|void| **_font_set_underline_thickness**\ (\ font_rid\: :ref:`RID`, size\: :ref:`int`, underline_thickness\: :ref:`float`\ ) |virtual| |required| :ref:`🔗` Sets thickness of the underline in pixels. @@ -2182,8 +2026,6 @@ Sets thickness of the underline in pixels. |void| **_font_set_variation_coordinates**\ (\ font_rid\: :ref:`RID`, variation_coordinates\: :ref:`Dictionary`\ ) |virtual| :ref:`🔗` -**Optional.**\ - Sets variation coordinates for the specified font cache entry. .. rst-class:: classref-item-separator @@ -2196,8 +2038,6 @@ Sets variation coordinates for the specified font cache entry. |void| **_font_set_weight**\ (\ font_rid\: :ref:`RID`, weight\: :ref:`int`\ ) |virtual| :ref:`🔗` -**Optional.**\ - Sets weight (boldness) of the font. A value in the ``100...999`` range, normal font weight is ``400``, bold font weight is ``700``. .. rst-class:: classref-item-separator @@ -2210,8 +2050,6 @@ Sets weight (boldness) of the font. A value in the ``100...999`` range, normal f :ref:`Dictionary` **_font_supported_feature_list**\ (\ font_rid\: :ref:`RID`\ ) |virtual| |const| :ref:`🔗` -**Optional.**\ - Returns the dictionary of the supported OpenType features. .. rst-class:: classref-item-separator @@ -2224,8 +2062,6 @@ Returns the dictionary of the supported OpenType features. :ref:`Dictionary` **_font_supported_variation_list**\ (\ font_rid\: :ref:`RID`\ ) |virtual| |const| :ref:`🔗` -**Optional.**\ - Returns the dictionary of the supported OpenType variation coordinates. .. rst-class:: classref-item-separator @@ -2238,8 +2074,6 @@ Returns the dictionary of the supported OpenType variation coordinates. :ref:`String` **_format_number**\ (\ number\: :ref:`String`, language\: :ref:`String`\ ) |virtual| |const| :ref:`🔗` -**Optional.**\ - Converts a number from the Western Arabic (0..9) to the numeral systems used in ``language``. .. rst-class:: classref-item-separator @@ -2250,9 +2084,7 @@ Converts a number from the Western Arabic (0..9) to the numeral systems used in .. rst-class:: classref-method -|void| **_free_rid**\ (\ rid\: :ref:`RID`\ ) |virtual| :ref:`🔗` - -**Required.**\ +|void| **_free_rid**\ (\ rid\: :ref:`RID`\ ) |virtual| |required| :ref:`🔗` Frees an object created by this :ref:`TextServer`. @@ -2264,9 +2096,7 @@ Frees an object created by this :ref:`TextServer`. .. rst-class:: classref-method -:ref:`int` **_get_features**\ (\ ) |virtual| |const| :ref:`🔗` - -**Required.**\ +:ref:`int` **_get_features**\ (\ ) |virtual| |required| |const| :ref:`🔗` Returns text server features, see :ref:`Feature`. @@ -2280,8 +2110,6 @@ Returns text server features, see :ref:`Feature`. :ref:`Vector2` **_get_hex_code_box_size**\ (\ size\: :ref:`int`, index\: :ref:`int`\ ) |virtual| |const| :ref:`🔗` -**Optional.**\ - Returns size of the replacement character (box with character hexadecimal code that is drawn in place of invalid characters). .. rst-class:: classref-item-separator @@ -2292,9 +2120,7 @@ Returns size of the replacement character (box with character hexadecimal code t .. rst-class:: classref-method -:ref:`String` **_get_name**\ (\ ) |virtual| |const| :ref:`🔗` - -**Required.**\ +:ref:`String` **_get_name**\ (\ ) |virtual| |required| |const| :ref:`🔗` Returns the name of the server interface. @@ -2308,8 +2134,6 @@ Returns the name of the server interface. :ref:`PackedByteArray` **_get_support_data**\ (\ ) |virtual| |const| :ref:`🔗` -**Optional.**\ - Returns default TextServer database (e.g. ICU break iterators and dictionaries). .. rst-class:: classref-item-separator @@ -2322,8 +2146,6 @@ Returns default TextServer database (e.g. ICU break iterators and dictionaries). :ref:`String` **_get_support_data_filename**\ (\ ) |virtual| |const| :ref:`🔗` -**Optional.**\ - Returns default TextServer database (e.g. ICU break iterators and dictionaries) filename. .. rst-class:: classref-item-separator @@ -2336,8 +2158,6 @@ Returns default TextServer database (e.g. ICU break iterators and dictionaries) :ref:`String` **_get_support_data_info**\ (\ ) |virtual| |const| :ref:`🔗` -**Optional.**\ - Returns TextServer database (e.g. ICU break iterators and dictionaries) description. .. rst-class:: classref-item-separator @@ -2348,9 +2168,7 @@ Returns TextServer database (e.g. ICU break iterators and dictionaries) descript .. rst-class:: classref-method -:ref:`bool` **_has**\ (\ rid\: :ref:`RID`\ ) |virtual| :ref:`🔗` - -**Required.**\ +:ref:`bool` **_has**\ (\ rid\: :ref:`RID`\ ) |virtual| |required| :ref:`🔗` Returns ``true`` if ``rid`` is valid resource owned by this text server. @@ -2362,9 +2180,7 @@ Returns ``true`` if ``rid`` is valid resource owned by this text server. .. rst-class:: classref-method -:ref:`bool` **_has_feature**\ (\ feature\: :ref:`Feature`\ ) |virtual| |const| :ref:`🔗` - -**Required.**\ +:ref:`bool` **_has_feature**\ (\ feature\: :ref:`Feature`\ ) |virtual| |required| |const| :ref:`🔗` Returns ``true`` if the server supports a feature. @@ -2378,8 +2194,6 @@ Returns ``true`` if the server supports a feature. :ref:`int` **_is_confusable**\ (\ string\: :ref:`String`, dict\: :ref:`PackedStringArray`\ ) |virtual| |const| :ref:`🔗` -**Optional.**\ - Returns index of the first string in ``dict`` which is visually confusable with the ``string``, or ``-1`` if none is found. .. rst-class:: classref-item-separator @@ -2392,8 +2206,6 @@ Returns index of the first string in ``dict`` which is visually confusable with :ref:`bool` **_is_locale_right_to_left**\ (\ locale\: :ref:`String`\ ) |virtual| |const| :ref:`🔗` -**Required.**\ - Returns ``true`` if locale is right-to-left. .. rst-class:: classref-item-separator @@ -2406,8 +2218,6 @@ Returns ``true`` if locale is right-to-left. :ref:`bool` **_is_valid_identifier**\ (\ string\: :ref:`String`\ ) |virtual| |const| :ref:`🔗` -**Optional.**\ - Returns ``true`` if ``string`` is a valid identifier. .. rst-class:: classref-item-separator @@ -2422,7 +2232,7 @@ Returns ``true`` if ``string`` is a valid identifier. .. container:: contribute - There is currently no description for this method. Please help us by :ref:`contributing one `! + There is currently no description for this method. Please help us by `contributing one `__! .. rst-class:: classref-item-separator @@ -2434,8 +2244,6 @@ Returns ``true`` if ``string`` is a valid identifier. :ref:`bool` **_load_support_data**\ (\ filename\: :ref:`String`\ ) |virtual| :ref:`🔗` -**Optional.**\ - Loads optional TextServer database (e.g. ICU break iterators and dictionaries). .. rst-class:: classref-item-separator @@ -2448,8 +2256,6 @@ Loads optional TextServer database (e.g. ICU break iterators and dictionaries). :ref:`int` **_name_to_tag**\ (\ name\: :ref:`String`\ ) |virtual| |const| :ref:`🔗` -**Optional.**\ - Converts readable feature, variation, script, or language name to OpenType tag. .. rst-class:: classref-item-separator @@ -2462,8 +2268,6 @@ Converts readable feature, variation, script, or language name to OpenType tag. :ref:`String` **_parse_number**\ (\ number\: :ref:`String`, language\: :ref:`String`\ ) |virtual| |const| :ref:`🔗` -**Optional.**\ - Converts ``number`` from the numeral systems used in ``language`` to Western Arabic (0..9). .. rst-class:: classref-item-separator @@ -2476,9 +2280,7 @@ Converts ``number`` from the numeral systems used in ``language`` to Western Ara :ref:`Array`\[:ref:`Vector3i`\] **_parse_structured_text**\ (\ parser_type\: :ref:`StructuredTextParser`, args\: :ref:`Array`, text\: :ref:`String`\ ) |virtual| |const| :ref:`🔗` -**Optional.**\ - -Default implementation of the BiDi algorithm override function. See :ref:`StructuredTextParser` for more info. +Default implementation of the BiDi algorithm override function. .. rst-class:: classref-item-separator @@ -2490,35 +2292,137 @@ Default implementation of the BiDi algorithm override function. See :ref:`Struct :ref:`String` **_percent_sign**\ (\ language\: :ref:`String`\ ) |virtual| |const| :ref:`🔗` -**Optional.**\ - Returns percent sign used in the ``language``. .. rst-class:: classref-item-separator ---- +.. _class_TextServerExtension_private_method__reference_oversampling_level: + +.. rst-class:: classref-method + +|void| **_reference_oversampling_level**\ (\ oversampling\: :ref:`float`\ ) |virtual| :ref:`🔗` + +Increases the reference count of the specified oversampling level. This method is called by :ref:`Viewport`, and should not be used directly. + +.. rst-class:: classref-item-separator + +---- + .. _class_TextServerExtension_private_method__save_support_data: .. rst-class:: classref-method :ref:`bool` **_save_support_data**\ (\ filename\: :ref:`String`\ ) |virtual| |const| :ref:`🔗` -**Optional.**\ - Saves optional TextServer database (e.g. ICU break iterators and dictionaries) to the file. .. rst-class:: classref-item-separator ---- +.. _class_TextServerExtension_private_method__shaped_get_run_count: + +.. rst-class:: classref-method + +:ref:`int` **_shaped_get_run_count**\ (\ shaped\: :ref:`RID`\ ) |virtual| |const| :ref:`🔗` + +Returns the number of uniform text runs in the buffer. + +.. rst-class:: classref-item-separator + +---- + +.. _class_TextServerExtension_private_method__shaped_get_run_direction: + +.. rst-class:: classref-method + +:ref:`Direction` **_shaped_get_run_direction**\ (\ shaped\: :ref:`RID`, index\: :ref:`int`\ ) |virtual| |const| :ref:`🔗` + +Returns the direction of the ``index`` text run (in visual order). + +.. rst-class:: classref-item-separator + +---- + +.. _class_TextServerExtension_private_method__shaped_get_run_font_rid: + +.. rst-class:: classref-method + +:ref:`RID` **_shaped_get_run_font_rid**\ (\ shaped\: :ref:`RID`, index\: :ref:`int`\ ) |virtual| |const| :ref:`🔗` + +Returns the font RID of the ``index`` text run (in visual order). + +.. rst-class:: classref-item-separator + +---- + +.. _class_TextServerExtension_private_method__shaped_get_run_font_size: + +.. rst-class:: classref-method + +:ref:`int` **_shaped_get_run_font_size**\ (\ shaped\: :ref:`RID`, index\: :ref:`int`\ ) |virtual| |const| :ref:`🔗` + +Returns the font size of the ``index`` text run (in visual order). + +.. rst-class:: classref-item-separator + +---- + +.. _class_TextServerExtension_private_method__shaped_get_run_language: + +.. rst-class:: classref-method + +:ref:`String` **_shaped_get_run_language**\ (\ shaped\: :ref:`RID`, index\: :ref:`int`\ ) |virtual| |const| :ref:`🔗` + +Returns the language of the ``index`` text run (in visual order). + +.. rst-class:: classref-item-separator + +---- + +.. _class_TextServerExtension_private_method__shaped_get_run_object: + +.. rst-class:: classref-method + +:ref:`Variant` **_shaped_get_run_object**\ (\ shaped\: :ref:`RID`, index\: :ref:`int`\ ) |virtual| |const| :ref:`🔗` + +Returns the embedded object of the ``index`` text run (in visual order). + +.. rst-class:: classref-item-separator + +---- + +.. _class_TextServerExtension_private_method__shaped_get_run_range: + +.. rst-class:: classref-method + +:ref:`Vector2i` **_shaped_get_run_range**\ (\ shaped\: :ref:`RID`, index\: :ref:`int`\ ) |virtual| |const| :ref:`🔗` + +Returns the source text range of the ``index`` text run (in visual order). + +.. rst-class:: classref-item-separator + +---- + +.. _class_TextServerExtension_private_method__shaped_get_run_text: + +.. rst-class:: classref-method + +:ref:`String` **_shaped_get_run_text**\ (\ shaped\: :ref:`RID`, index\: :ref:`int`\ ) |virtual| |const| :ref:`🔗` + +Returns the source text of the ``index`` text run (in visual order). + +.. rst-class:: classref-item-separator + +---- + .. _class_TextServerExtension_private_method__shaped_get_span_count: .. rst-class:: classref-method -:ref:`int` **_shaped_get_span_count**\ (\ shaped\: :ref:`RID`\ ) |virtual| |const| :ref:`🔗` - -**Required.**\ +:ref:`int` **_shaped_get_span_count**\ (\ shaped\: :ref:`RID`\ ) |virtual| |required| |const| :ref:`🔗` Returns number of text spans added using :ref:`_shaped_text_add_string()` or :ref:`_shaped_text_add_object()`. @@ -2530,9 +2434,7 @@ Returns number of text spans added using :ref:`_shaped_text_add_string()` **_shaped_get_span_embedded_object**\ (\ shaped\: :ref:`RID`, index\: :ref:`int`\ ) |virtual| |const| :ref:`🔗` - -**Required.**\ +:ref:`Variant` **_shaped_get_span_embedded_object**\ (\ shaped\: :ref:`RID`, index\: :ref:`int`\ ) |virtual| |required| |const| :ref:`🔗` Returns text embedded object key. @@ -2544,9 +2446,7 @@ Returns text embedded object key. .. rst-class:: classref-method -:ref:`Variant` **_shaped_get_span_meta**\ (\ shaped\: :ref:`RID`, index\: :ref:`int`\ ) |virtual| |const| :ref:`🔗` - -**Required.**\ +:ref:`Variant` **_shaped_get_span_meta**\ (\ shaped\: :ref:`RID`, index\: :ref:`int`\ ) |virtual| |required| |const| :ref:`🔗` Returns text span metadata. @@ -2554,13 +2454,47 @@ Returns text span metadata. ---- +.. _class_TextServerExtension_private_method__shaped_get_span_object: + +.. rst-class:: classref-method + +:ref:`Variant` **_shaped_get_span_object**\ (\ shaped\: :ref:`RID`, index\: :ref:`int`\ ) |virtual| |required| |const| :ref:`🔗` + +Returns the text span embedded object key. + +.. rst-class:: classref-item-separator + +---- + +.. _class_TextServerExtension_private_method__shaped_get_span_text: + +.. rst-class:: classref-method + +:ref:`String` **_shaped_get_span_text**\ (\ shaped\: :ref:`RID`, index\: :ref:`int`\ ) |virtual| |required| |const| :ref:`🔗` + +Returns the text span source text. + +.. rst-class:: classref-item-separator + +---- + +.. _class_TextServerExtension_private_method__shaped_get_text: + +.. rst-class:: classref-method + +:ref:`String` **_shaped_get_text**\ (\ shaped\: :ref:`RID`\ ) |virtual| |required| |const| :ref:`🔗` + +Returns the text buffer source text, including object replacement characters. + +.. rst-class:: classref-item-separator + +---- + .. _class_TextServerExtension_private_method__shaped_set_span_update_font: .. rst-class:: classref-method -|void| **_shaped_set_span_update_font**\ (\ shaped\: :ref:`RID`, index\: :ref:`int`, fonts\: :ref:`Array`\[:ref:`RID`\], size\: :ref:`int`, opentype_features\: :ref:`Dictionary`\ ) |virtual| :ref:`🔗` - -**Required.**\ +|void| **_shaped_set_span_update_font**\ (\ shaped\: :ref:`RID`, index\: :ref:`int`, fonts\: :ref:`Array`\[:ref:`RID`\], size\: :ref:`int`, opentype_features\: :ref:`Dictionary`\ ) |virtual| |required| :ref:`🔗` Changes text span font, font size, and OpenType features, without changing the text. @@ -2572,9 +2506,7 @@ Changes text span font, font size, and OpenType features, without changing the t .. rst-class:: classref-method -:ref:`bool` **_shaped_text_add_object**\ (\ shaped\: :ref:`RID`, key\: :ref:`Variant`, size\: :ref:`Vector2`, inline_align\: :ref:`InlineAlignment`, length\: :ref:`int`, baseline\: :ref:`float`\ ) |virtual| :ref:`🔗` - -**Required.**\ +:ref:`bool` **_shaped_text_add_object**\ (\ shaped\: :ref:`RID`, key\: :ref:`Variant`, size\: :ref:`Vector2`, inline_align\: :ref:`InlineAlignment`, length\: :ref:`int`, baseline\: :ref:`float`\ ) |virtual| |required| :ref:`🔗` Adds inline object to the text buffer, ``key`` must be unique. In the text, object is represented as ``length`` object replacement characters. @@ -2586,9 +2518,7 @@ Adds inline object to the text buffer, ``key`` must be unique. In the text, obje .. rst-class:: classref-method -:ref:`bool` **_shaped_text_add_string**\ (\ shaped\: :ref:`RID`, text\: :ref:`String`, fonts\: :ref:`Array`\[:ref:`RID`\], size\: :ref:`int`, opentype_features\: :ref:`Dictionary`, language\: :ref:`String`, meta\: :ref:`Variant`\ ) |virtual| :ref:`🔗` - -**Required.**\ +:ref:`bool` **_shaped_text_add_string**\ (\ shaped\: :ref:`RID`, text\: :ref:`String`, fonts\: :ref:`Array`\[:ref:`RID`\], size\: :ref:`int`, opentype_features\: :ref:`Dictionary`, language\: :ref:`String`, meta\: :ref:`Variant`\ ) |virtual| |required| :ref:`🔗` Adds text span and font to draw it to the text buffer. @@ -2600,9 +2530,7 @@ Adds text span and font to draw it to the text buffer. .. rst-class:: classref-method -|void| **_shaped_text_clear**\ (\ shaped\: :ref:`RID`\ ) |virtual| :ref:`🔗` - -**Required.**\ +|void| **_shaped_text_clear**\ (\ shaped\: :ref:`RID`\ ) |virtual| |required| :ref:`🔗` Clears text buffer (removes text and inline objects). @@ -2616,8 +2544,6 @@ Clears text buffer (removes text and inline objects). :ref:`int` **_shaped_text_closest_character_pos**\ (\ shaped\: :ref:`RID`, pos\: :ref:`int`\ ) |virtual| |const| :ref:`🔗` -**Optional.**\ - Returns composite character position closest to the ``pos``. .. rst-class:: classref-item-separator @@ -2628,11 +2554,9 @@ Returns composite character position closest to the ``pos``. .. rst-class:: classref-method -|void| **_shaped_text_draw**\ (\ shaped\: :ref:`RID`, canvas\: :ref:`RID`, pos\: :ref:`Vector2`, clip_l\: :ref:`float`, clip_r\: :ref:`float`, color\: :ref:`Color`\ ) |virtual| |const| :ref:`🔗` +|void| **_shaped_text_draw**\ (\ shaped\: :ref:`RID`, canvas\: :ref:`RID`, pos\: :ref:`Vector2`, clip_l\: :ref:`float`, clip_r\: :ref:`float`, color\: :ref:`Color`, oversampling\: :ref:`float`\ ) |virtual| |const| :ref:`🔗` -**Optional.**\ - -Draw shaped text into a canvas item at a given position, with ``color``. ``pos`` specifies the leftmost point of the baseline (for horizontal layout) or topmost point of the baseline (for vertical layout). +Draw shaped text into a canvas item at a given position, with ``color``. ``pos`` specifies the leftmost point of the baseline (for horizontal layout) or topmost point of the baseline (for vertical layout). If ``oversampling`` is greater than zero, it is used as font oversampling factor, otherwise viewport oversampling settings are used. .. rst-class:: classref-item-separator @@ -2642,11 +2566,9 @@ Draw shaped text into a canvas item at a given position, with ``color``. ``pos`` .. rst-class:: classref-method -|void| **_shaped_text_draw_outline**\ (\ shaped\: :ref:`RID`, canvas\: :ref:`RID`, pos\: :ref:`Vector2`, clip_l\: :ref:`float`, clip_r\: :ref:`float`, outline_size\: :ref:`int`, color\: :ref:`Color`\ ) |virtual| |const| :ref:`🔗` +|void| **_shaped_text_draw_outline**\ (\ shaped\: :ref:`RID`, canvas\: :ref:`RID`, pos\: :ref:`Vector2`, clip_l\: :ref:`float`, clip_r\: :ref:`float`, outline_size\: :ref:`int`, color\: :ref:`Color`, oversampling\: :ref:`float`\ ) |virtual| |const| :ref:`🔗` -**Optional.**\ - -Draw the outline of the shaped text into a canvas item at a given position, with ``color``. ``pos`` specifies the leftmost point of the baseline (for horizontal layout) or topmost point of the baseline (for vertical layout). +Draw the outline of the shaped text into a canvas item at a given position, with ``color``. ``pos`` specifies the leftmost point of the baseline (for horizontal layout) or topmost point of the baseline (for vertical layout). If ``oversampling`` is greater than zero, it is used as font oversampling factor, otherwise viewport oversampling settings are used. .. rst-class:: classref-item-separator @@ -2658,8 +2580,6 @@ Draw the outline of the shaped text into a canvas item at a given position, with :ref:`float` **_shaped_text_fit_to_width**\ (\ shaped\: :ref:`RID`, width\: :ref:`float`, justification_flags\: |bitfield|\[:ref:`JustificationFlag`\]\ ) |virtual| :ref:`🔗` -**Optional.**\ - Adjusts text width to fit to specified width, returns new text width. .. rst-class:: classref-item-separator @@ -2670,9 +2590,7 @@ Adjusts text width to fit to specified width, returns new text width. .. rst-class:: classref-method -:ref:`float` **_shaped_text_get_ascent**\ (\ shaped\: :ref:`RID`\ ) |virtual| |const| :ref:`🔗` - -**Required.**\ +:ref:`float` **_shaped_text_get_ascent**\ (\ shaped\: :ref:`RID`\ ) |virtual| |required| |const| :ref:`🔗` Returns the text ascent (number of pixels above the baseline for horizontal layout or to the left of baseline for vertical). @@ -2686,8 +2604,6 @@ Returns the text ascent (number of pixels above the baseline for horizontal layo |void| **_shaped_text_get_carets**\ (\ shaped\: :ref:`RID`, position\: :ref:`int`, caret\: ``CaretInfo*``\ ) |virtual| |const| :ref:`🔗` -**Optional.**\ - Returns shapes of the carets corresponding to the character offset ``position`` in the text. Returned caret shape is 1 pixel wide rectangle. .. rst-class:: classref-item-separator @@ -2700,8 +2616,6 @@ Returns shapes of the carets corresponding to the character offset ``position`` :ref:`PackedInt32Array` **_shaped_text_get_character_breaks**\ (\ shaped\: :ref:`RID`\ ) |virtual| |const| :ref:`🔗` -**Optional.**\ - Returns array of the composite character boundaries. .. rst-class:: classref-item-separator @@ -2714,8 +2628,6 @@ Returns array of the composite character boundaries. :ref:`int` **_shaped_text_get_custom_ellipsis**\ (\ shaped\: :ref:`RID`\ ) |virtual| |const| :ref:`🔗` -**Optional.**\ - Returns ellipsis character used for text clipping. .. rst-class:: classref-item-separator @@ -2728,8 +2640,6 @@ Returns ellipsis character used for text clipping. :ref:`String` **_shaped_text_get_custom_punctuation**\ (\ shaped\: :ref:`RID`\ ) |virtual| |const| :ref:`🔗` -**Optional.**\ - Returns custom punctuation character list, used for word breaking. If set to empty string, server defaults are used. .. rst-class:: classref-item-separator @@ -2740,9 +2650,7 @@ Returns custom punctuation character list, used for word breaking. If set to emp .. rst-class:: classref-method -:ref:`float` **_shaped_text_get_descent**\ (\ shaped\: :ref:`RID`\ ) |virtual| |const| :ref:`🔗` - -**Required.**\ +:ref:`float` **_shaped_text_get_descent**\ (\ shaped\: :ref:`RID`\ ) |virtual| |required| |const| :ref:`🔗` Returns the text descent (number of pixels below the baseline for horizontal layout or to the right of baseline for vertical). @@ -2756,8 +2664,6 @@ Returns the text descent (number of pixels below the baseline for horizontal lay :ref:`Direction` **_shaped_text_get_direction**\ (\ shaped\: :ref:`RID`\ ) |virtual| |const| :ref:`🔗` -**Optional.**\ - Returns direction of the text. .. rst-class:: classref-item-separator @@ -2770,8 +2676,6 @@ Returns direction of the text. :ref:`int` **_shaped_text_get_dominant_direction_in_range**\ (\ shaped\: :ref:`RID`, start\: :ref:`int`, end\: :ref:`int`\ ) |virtual| |const| :ref:`🔗` -**Optional.**\ - Returns dominant direction of in the range of text. .. rst-class:: classref-item-separator @@ -2782,9 +2686,7 @@ Returns dominant direction of in the range of text. .. rst-class:: classref-method -:ref:`int` **_shaped_text_get_ellipsis_glyph_count**\ (\ shaped\: :ref:`RID`\ ) |virtual| |const| :ref:`🔗` - -**Required.**\ +:ref:`int` **_shaped_text_get_ellipsis_glyph_count**\ (\ shaped\: :ref:`RID`\ ) |virtual| |required| |const| :ref:`🔗` Returns number of glyphs in the ellipsis. @@ -2796,9 +2698,7 @@ Returns number of glyphs in the ellipsis. .. rst-class:: classref-method -``const Glyph*`` **_shaped_text_get_ellipsis_glyphs**\ (\ shaped\: :ref:`RID`\ ) |virtual| |const| :ref:`🔗` - -**Required.**\ +``const Glyph*`` **_shaped_text_get_ellipsis_glyphs**\ (\ shaped\: :ref:`RID`\ ) |virtual| |required| |const| :ref:`🔗` Returns array of the glyphs in the ellipsis. @@ -2810,9 +2710,7 @@ Returns array of the glyphs in the ellipsis. .. rst-class:: classref-method -:ref:`int` **_shaped_text_get_ellipsis_pos**\ (\ shaped\: :ref:`RID`\ ) |virtual| |const| :ref:`🔗` - -**Required.**\ +:ref:`int` **_shaped_text_get_ellipsis_pos**\ (\ shaped\: :ref:`RID`\ ) |virtual| |required| |const| :ref:`🔗` Returns position of the ellipsis. @@ -2824,9 +2722,7 @@ Returns position of the ellipsis. .. rst-class:: classref-method -:ref:`int` **_shaped_text_get_glyph_count**\ (\ shaped\: :ref:`RID`\ ) |virtual| |const| :ref:`🔗` - -**Required.**\ +:ref:`int` **_shaped_text_get_glyph_count**\ (\ shaped\: :ref:`RID`\ ) |virtual| |required| |const| :ref:`🔗` Returns number of glyphs in the buffer. @@ -2838,9 +2734,7 @@ Returns number of glyphs in the buffer. .. rst-class:: classref-method -``const Glyph*`` **_shaped_text_get_glyphs**\ (\ shaped\: :ref:`RID`\ ) |virtual| |const| :ref:`🔗` - -**Required.**\ +``const Glyph*`` **_shaped_text_get_glyphs**\ (\ shaped\: :ref:`RID`\ ) |virtual| |required| |const| :ref:`🔗` Returns an array of glyphs in the visual order. @@ -2854,8 +2748,6 @@ Returns an array of glyphs in the visual order. :ref:`Vector2` **_shaped_text_get_grapheme_bounds**\ (\ shaped\: :ref:`RID`, pos\: :ref:`int`\ ) |virtual| |const| :ref:`🔗` -**Optional.**\ - Returns composite character's bounds as offsets from the start of the line. .. rst-class:: classref-item-separator @@ -2868,8 +2760,6 @@ Returns composite character's bounds as offsets from the start of the line. :ref:`Direction` **_shaped_text_get_inferred_direction**\ (\ shaped\: :ref:`RID`\ ) |virtual| |const| :ref:`🔗` -**Optional.**\ - Returns direction of the text, inferred by the BiDi algorithm. .. rst-class:: classref-item-separator @@ -2882,8 +2772,6 @@ Returns direction of the text, inferred by the BiDi algorithm. :ref:`PackedInt32Array` **_shaped_text_get_line_breaks**\ (\ shaped\: :ref:`RID`, width\: :ref:`float`, start\: :ref:`int`, break_flags\: |bitfield|\[:ref:`LineBreakFlag`\]\ ) |virtual| |const| :ref:`🔗` -**Optional.**\ - Breaks text to the lines and returns character ranges for each line. .. rst-class:: classref-item-separator @@ -2896,8 +2784,6 @@ Breaks text to the lines and returns character ranges for each line. :ref:`PackedInt32Array` **_shaped_text_get_line_breaks_adv**\ (\ shaped\: :ref:`RID`, width\: :ref:`PackedFloat32Array`, start\: :ref:`int`, once\: :ref:`bool`, break_flags\: |bitfield|\[:ref:`LineBreakFlag`\]\ ) |virtual| |const| :ref:`🔗` -**Optional.**\ - Breaks text to the lines and columns. Returns character ranges for each segment. .. rst-class:: classref-item-separator @@ -2908,9 +2794,7 @@ Breaks text to the lines and columns. Returns character ranges for each segment. .. rst-class:: classref-method -:ref:`int` **_shaped_text_get_object_glyph**\ (\ shaped\: :ref:`RID`, key\: :ref:`Variant`\ ) |virtual| |const| :ref:`🔗` - -**Required.**\ +:ref:`int` **_shaped_text_get_object_glyph**\ (\ shaped\: :ref:`RID`, key\: :ref:`Variant`\ ) |virtual| |required| |const| :ref:`🔗` Returns the glyph index of the inline object. @@ -2922,9 +2806,7 @@ Returns the glyph index of the inline object. .. rst-class:: classref-method -:ref:`Vector2i` **_shaped_text_get_object_range**\ (\ shaped\: :ref:`RID`, key\: :ref:`Variant`\ ) |virtual| |const| :ref:`🔗` - -**Required.**\ +:ref:`Vector2i` **_shaped_text_get_object_range**\ (\ shaped\: :ref:`RID`, key\: :ref:`Variant`\ ) |virtual| |required| |const| :ref:`🔗` Returns the character range of the inline object. @@ -2936,9 +2818,7 @@ Returns the character range of the inline object. .. rst-class:: classref-method -:ref:`Rect2` **_shaped_text_get_object_rect**\ (\ shaped\: :ref:`RID`, key\: :ref:`Variant`\ ) |virtual| |const| :ref:`🔗` - -**Required.**\ +:ref:`Rect2` **_shaped_text_get_object_rect**\ (\ shaped\: :ref:`RID`, key\: :ref:`Variant`\ ) |virtual| |required| |const| :ref:`🔗` Returns bounding rectangle of the inline object. @@ -2950,9 +2830,7 @@ Returns bounding rectangle of the inline object. .. rst-class:: classref-method -:ref:`Array` **_shaped_text_get_objects**\ (\ shaped\: :ref:`RID`\ ) |virtual| |const| :ref:`🔗` - -**Required.**\ +:ref:`Array` **_shaped_text_get_objects**\ (\ shaped\: :ref:`RID`\ ) |virtual| |required| |const| :ref:`🔗` Returns array of inline objects. @@ -2966,8 +2844,6 @@ Returns array of inline objects. :ref:`Orientation` **_shaped_text_get_orientation**\ (\ shaped\: :ref:`RID`\ ) |virtual| |const| :ref:`🔗` -**Optional.**\ - Returns text orientation. .. rst-class:: classref-item-separator @@ -2978,9 +2854,7 @@ Returns text orientation. .. rst-class:: classref-method -:ref:`RID` **_shaped_text_get_parent**\ (\ shaped\: :ref:`RID`\ ) |virtual| |const| :ref:`🔗` - -**Required.**\ +:ref:`RID` **_shaped_text_get_parent**\ (\ shaped\: :ref:`RID`\ ) |virtual| |required| |const| :ref:`🔗` Returns the parent buffer from which the substring originates. @@ -2994,8 +2868,6 @@ Returns the parent buffer from which the substring originates. :ref:`bool` **_shaped_text_get_preserve_control**\ (\ shaped\: :ref:`RID`\ ) |virtual| |const| :ref:`🔗` -**Optional.**\ - Returns ``true`` if text buffer is configured to display control characters. .. rst-class:: classref-item-separator @@ -3008,8 +2880,6 @@ Returns ``true`` if text buffer is configured to display control characters. :ref:`bool` **_shaped_text_get_preserve_invalid**\ (\ shaped\: :ref:`RID`\ ) |virtual| |const| :ref:`🔗` -**Optional.**\ - Returns ``true`` if text buffer is configured to display hexadecimal codes in place of invalid characters. .. rst-class:: classref-item-separator @@ -3020,9 +2890,7 @@ Returns ``true`` if text buffer is configured to display hexadecimal codes in pl .. rst-class:: classref-method -:ref:`Vector2i` **_shaped_text_get_range**\ (\ shaped\: :ref:`RID`\ ) |virtual| |const| :ref:`🔗` - -**Required.**\ +:ref:`Vector2i` **_shaped_text_get_range**\ (\ shaped\: :ref:`RID`\ ) |virtual| |required| |const| :ref:`🔗` Returns substring buffer character range in the parent buffer. @@ -3036,8 +2904,6 @@ Returns substring buffer character range in the parent buffer. :ref:`PackedVector2Array` **_shaped_text_get_selection**\ (\ shaped\: :ref:`RID`, start\: :ref:`int`, end\: :ref:`int`\ ) |virtual| |const| :ref:`🔗` -**Optional.**\ - Returns selection rectangles for the specified character range. .. rst-class:: classref-item-separator @@ -3048,9 +2914,7 @@ Returns selection rectangles for the specified character range. .. rst-class:: classref-method -:ref:`Vector2` **_shaped_text_get_size**\ (\ shaped\: :ref:`RID`\ ) |virtual| |const| :ref:`🔗` - -**Required.**\ +:ref:`Vector2` **_shaped_text_get_size**\ (\ shaped\: :ref:`RID`\ ) |virtual| |required| |const| :ref:`🔗` Returns size of the text. @@ -3064,8 +2928,6 @@ Returns size of the text. :ref:`int` **_shaped_text_get_spacing**\ (\ shaped\: :ref:`RID`, spacing\: :ref:`SpacingType`\ ) |virtual| |const| :ref:`🔗` -**Optional.**\ - Returns extra spacing added between glyphs or lines in pixels. .. rst-class:: classref-item-separator @@ -3076,9 +2938,7 @@ Returns extra spacing added between glyphs or lines in pixels. .. rst-class:: classref-method -:ref:`int` **_shaped_text_get_trim_pos**\ (\ shaped\: :ref:`RID`\ ) |virtual| |const| :ref:`🔗` - -**Required.**\ +:ref:`int` **_shaped_text_get_trim_pos**\ (\ shaped\: :ref:`RID`\ ) |virtual| |required| |const| :ref:`🔗` Returns the position of the overrun trim. @@ -3090,9 +2950,7 @@ Returns the position of the overrun trim. .. rst-class:: classref-method -:ref:`float` **_shaped_text_get_underline_position**\ (\ shaped\: :ref:`RID`\ ) |virtual| |const| :ref:`🔗` - -**Required.**\ +:ref:`float` **_shaped_text_get_underline_position**\ (\ shaped\: :ref:`RID`\ ) |virtual| |required| |const| :ref:`🔗` Returns pixel offset of the underline below the baseline. @@ -3104,9 +2962,7 @@ Returns pixel offset of the underline below the baseline. .. rst-class:: classref-method -:ref:`float` **_shaped_text_get_underline_thickness**\ (\ shaped\: :ref:`RID`\ ) |virtual| |const| :ref:`🔗` - -**Required.**\ +:ref:`float` **_shaped_text_get_underline_thickness**\ (\ shaped\: :ref:`RID`\ ) |virtual| |required| |const| :ref:`🔗` Returns thickness of the underline. @@ -3118,9 +2974,7 @@ Returns thickness of the underline. .. rst-class:: classref-method -:ref:`float` **_shaped_text_get_width**\ (\ shaped\: :ref:`RID`\ ) |virtual| |const| :ref:`🔗` - -**Required.**\ +:ref:`float` **_shaped_text_get_width**\ (\ shaped\: :ref:`RID`\ ) |virtual| |required| |const| :ref:`🔗` Returns width (for horizontal layout) or height (for vertical) of the text. @@ -3134,9 +2988,7 @@ Returns width (for horizontal layout) or height (for vertical) of the text. :ref:`PackedInt32Array` **_shaped_text_get_word_breaks**\ (\ shaped\: :ref:`RID`, grapheme_flags\: |bitfield|\[:ref:`GraphemeFlag`\], skip_grapheme_flags\: |bitfield|\[:ref:`GraphemeFlag`\]\ ) |virtual| |const| :ref:`🔗` -**Optional.**\ - -Breaks text into words and returns array of character ranges. Use ``grapheme_flags`` to set what characters are used for breaking (see :ref:`GraphemeFlag`). +Breaks text into words and returns array of character ranges. Use ``grapheme_flags`` to set what characters are used for breaking. .. rst-class:: classref-item-separator @@ -3148,8 +3000,6 @@ Breaks text into words and returns array of character ranges. Use ``grapheme_fla :ref:`int` **_shaped_text_hit_test_grapheme**\ (\ shaped\: :ref:`RID`, coord\: :ref:`float`\ ) |virtual| |const| :ref:`🔗` -**Optional.**\ - Returns grapheme index at the specified pixel offset at the baseline, or ``-1`` if none is found. .. rst-class:: classref-item-separator @@ -3162,8 +3012,6 @@ Returns grapheme index at the specified pixel offset at the baseline, or ``-1`` :ref:`int` **_shaped_text_hit_test_position**\ (\ shaped\: :ref:`RID`, coord\: :ref:`float`\ ) |virtual| |const| :ref:`🔗` -**Optional.**\ - Returns caret character offset at the specified pixel offset at the baseline. This function always returns a valid position. .. rst-class:: classref-item-separator @@ -3174,9 +3022,7 @@ Returns caret character offset at the specified pixel offset at the baseline. Th .. rst-class:: classref-method -:ref:`bool` **_shaped_text_is_ready**\ (\ shaped\: :ref:`RID`\ ) |virtual| |const| :ref:`🔗` - -**Required.**\ +:ref:`bool` **_shaped_text_is_ready**\ (\ shaped\: :ref:`RID`\ ) |virtual| |required| |const| :ref:`🔗` Returns ``true`` if buffer is successfully shaped. @@ -3190,8 +3036,6 @@ Returns ``true`` if buffer is successfully shaped. :ref:`int` **_shaped_text_next_character_pos**\ (\ shaped\: :ref:`RID`, pos\: :ref:`int`\ ) |virtual| |const| :ref:`🔗` -**Optional.**\ - Returns composite character end position closest to the ``pos``. .. rst-class:: classref-item-separator @@ -3204,8 +3048,6 @@ Returns composite character end position closest to the ``pos``. :ref:`int` **_shaped_text_next_grapheme_pos**\ (\ shaped\: :ref:`RID`, pos\: :ref:`int`\ ) |virtual| |const| :ref:`🔗` -**Optional.**\ - Returns grapheme end position closest to the ``pos``. .. rst-class:: classref-item-separator @@ -3218,8 +3060,6 @@ Returns grapheme end position closest to the ``pos``. |void| **_shaped_text_overrun_trim_to_width**\ (\ shaped\: :ref:`RID`, width\: :ref:`float`, trim_flags\: |bitfield|\[:ref:`TextOverrunFlag`\]\ ) |virtual| :ref:`🔗` -**Optional.**\ - Trims text if it exceeds the given width. .. rst-class:: classref-item-separator @@ -3232,8 +3072,6 @@ Trims text if it exceeds the given width. :ref:`int` **_shaped_text_prev_character_pos**\ (\ shaped\: :ref:`RID`, pos\: :ref:`int`\ ) |virtual| |const| :ref:`🔗` -**Optional.**\ - Returns composite character start position closest to the ``pos``. .. rst-class:: classref-item-separator @@ -3246,8 +3084,6 @@ Returns composite character start position closest to the ``pos``. :ref:`int` **_shaped_text_prev_grapheme_pos**\ (\ shaped\: :ref:`RID`, pos\: :ref:`int`\ ) |virtual| |const| :ref:`🔗` -**Optional.**\ - Returns grapheme start position closest to the ``pos``. .. rst-class:: classref-item-separator @@ -3258,9 +3094,7 @@ Returns grapheme start position closest to the ``pos``. .. rst-class:: classref-method -:ref:`bool` **_shaped_text_resize_object**\ (\ shaped\: :ref:`RID`, key\: :ref:`Variant`, size\: :ref:`Vector2`, inline_align\: :ref:`InlineAlignment`, baseline\: :ref:`float`\ ) |virtual| :ref:`🔗` - -**Required.**\ +:ref:`bool` **_shaped_text_resize_object**\ (\ shaped\: :ref:`RID`, key\: :ref:`Variant`, size\: :ref:`Vector2`, inline_align\: :ref:`InlineAlignment`, baseline\: :ref:`float`\ ) |virtual| |required| :ref:`🔗` Sets new size and alignment of embedded object. @@ -3274,8 +3108,6 @@ Sets new size and alignment of embedded object. |void| **_shaped_text_set_bidi_override**\ (\ shaped\: :ref:`RID`, override\: :ref:`Array`\ ) |virtual| :ref:`🔗` -**Optional.**\ - Overrides BiDi for the structured text. .. rst-class:: classref-item-separator @@ -3288,8 +3120,6 @@ Overrides BiDi for the structured text. |void| **_shaped_text_set_custom_ellipsis**\ (\ shaped\: :ref:`RID`, char\: :ref:`int`\ ) |virtual| :ref:`🔗` -**Optional.**\ - Sets ellipsis character used for text clipping. .. rst-class:: classref-item-separator @@ -3302,8 +3132,6 @@ Sets ellipsis character used for text clipping. |void| **_shaped_text_set_custom_punctuation**\ (\ shaped\: :ref:`RID`, punct\: :ref:`String`\ ) |virtual| :ref:`🔗` -**Optional.**\ - Sets custom punctuation character list, used for word breaking. If set to empty string, server defaults are used. .. rst-class:: classref-item-separator @@ -3316,8 +3144,6 @@ Sets custom punctuation character list, used for word breaking. If set to empty |void| **_shaped_text_set_direction**\ (\ shaped\: :ref:`RID`, direction\: :ref:`Direction`\ ) |virtual| :ref:`🔗` -**Optional.**\ - Sets desired text direction. If set to :ref:`TextServer.DIRECTION_AUTO`, direction will be detected based on the buffer contents and current locale. .. rst-class:: classref-item-separator @@ -3330,8 +3156,6 @@ Sets desired text direction. If set to :ref:`TextServer.DIRECTION_AUTO`, orientation\: :ref:`Orientation`\ ) |virtual| :ref:`🔗` -**Optional.**\ - Sets desired text orientation. .. rst-class:: classref-item-separator @@ -3344,8 +3168,6 @@ Sets desired text orientation. |void| **_shaped_text_set_preserve_control**\ (\ shaped\: :ref:`RID`, enabled\: :ref:`bool`\ ) |virtual| :ref:`🔗` -**Optional.**\ - If set to ``true`` text buffer will display control characters. .. rst-class:: classref-item-separator @@ -3358,8 +3180,6 @@ If set to ``true`` text buffer will display control characters. |void| **_shaped_text_set_preserve_invalid**\ (\ shaped\: :ref:`RID`, enabled\: :ref:`bool`\ ) |virtual| :ref:`🔗` -**Optional.**\ - If set to ``true`` text buffer will display invalid characters as hexadecimal codes, otherwise nothing is displayed. .. rst-class:: classref-item-separator @@ -3372,8 +3192,6 @@ If set to ``true`` text buffer will display invalid characters as hexadecimal co |void| **_shaped_text_set_spacing**\ (\ shaped\: :ref:`RID`, spacing\: :ref:`SpacingType`, value\: :ref:`int`\ ) |virtual| :ref:`🔗` -**Optional.**\ - Sets extra spacing added between glyphs or lines in pixels. .. rst-class:: classref-item-separator @@ -3384,9 +3202,7 @@ Sets extra spacing added between glyphs or lines in pixels. .. rst-class:: classref-method -:ref:`bool` **_shaped_text_shape**\ (\ shaped\: :ref:`RID`\ ) |virtual| :ref:`🔗` - -**Required.**\ +:ref:`bool` **_shaped_text_shape**\ (\ shaped\: :ref:`RID`\ ) |virtual| |required| :ref:`🔗` Shapes buffer if it's not shaped. Returns ``true`` if the string is shaped successfully. @@ -3398,9 +3214,7 @@ Shapes buffer if it's not shaped. Returns ``true`` if the string is shaped succe .. rst-class:: classref-method -``const Glyph*`` **_shaped_text_sort_logical**\ (\ shaped\: :ref:`RID`\ ) |virtual| :ref:`🔗` - -**Required.**\ +``const Glyph*`` **_shaped_text_sort_logical**\ (\ shaped\: :ref:`RID`\ ) |virtual| |required| :ref:`🔗` Returns text glyphs in the logical order. @@ -3412,9 +3226,7 @@ Returns text glyphs in the logical order. .. rst-class:: classref-method -:ref:`RID` **_shaped_text_substr**\ (\ shaped\: :ref:`RID`, start\: :ref:`int`, length\: :ref:`int`\ ) |virtual| |const| :ref:`🔗` - -**Required.**\ +:ref:`RID` **_shaped_text_substr**\ (\ shaped\: :ref:`RID`, start\: :ref:`int`, length\: :ref:`int`\ ) |virtual| |required| |const| :ref:`🔗` Returns text buffer for the substring of the text in the ``shaped`` text buffer (including inline objects). @@ -3428,8 +3240,6 @@ Returns text buffer for the substring of the text in the ``shaped`` text buffer :ref:`float` **_shaped_text_tab_align**\ (\ shaped\: :ref:`RID`, tab_stops\: :ref:`PackedFloat32Array`\ ) |virtual| :ref:`🔗` -**Optional.**\ - Aligns shaped text to the given tab-stops. .. rst-class:: classref-item-separator @@ -3442,8 +3252,6 @@ Aligns shaped text to the given tab-stops. :ref:`bool` **_shaped_text_update_breaks**\ (\ shaped\: :ref:`RID`\ ) |virtual| :ref:`🔗` -**Optional.**\ - Updates break points in the shaped text. This method is called by default implementation of text breaking functions. .. rst-class:: classref-item-separator @@ -3456,8 +3264,6 @@ Updates break points in the shaped text. This method is called by default implem :ref:`bool` **_shaped_text_update_justification_ops**\ (\ shaped\: :ref:`RID`\ ) |virtual| :ref:`🔗` -**Optional.**\ - Updates justification points in the shaped text. This method is called by default implementation of text justification functions. .. rst-class:: classref-item-separator @@ -3470,8 +3276,6 @@ Updates justification points in the shaped text. This method is called by defaul :ref:`bool` **_spoof_check**\ (\ string\: :ref:`String`\ ) |virtual| |const| :ref:`🔗` -**Optional.**\ - Returns ``true`` if ``string`` is likely to be an attempt at confusing the reader. .. rst-class:: classref-item-separator @@ -3484,8 +3288,6 @@ Returns ``true`` if ``string`` is likely to be an attempt at confusing the reade :ref:`PackedInt32Array` **_string_get_character_breaks**\ (\ string\: :ref:`String`, language\: :ref:`String`\ ) |virtual| |const| :ref:`🔗` -**Optional.**\ - Returns array of the composite character boundaries. .. rst-class:: classref-item-separator @@ -3498,8 +3300,6 @@ Returns array of the composite character boundaries. :ref:`PackedInt32Array` **_string_get_word_breaks**\ (\ string\: :ref:`String`, language\: :ref:`String`, chars_per_line\: :ref:`int`\ ) |virtual| |const| :ref:`🔗` -**Optional.**\ - Returns an array of the word break boundaries. Elements in the returned array are the offsets of the start and end of words. Therefore the length of the array is always even. .. rst-class:: classref-item-separator @@ -3512,8 +3312,6 @@ Returns an array of the word break boundaries. Elements in the returned array ar :ref:`String` **_string_to_lower**\ (\ string\: :ref:`String`, language\: :ref:`String`\ ) |virtual| |const| :ref:`🔗` -**Optional.**\ - Returns the string converted to lowercase. .. rst-class:: classref-item-separator @@ -3526,8 +3324,6 @@ Returns the string converted to lowercase. :ref:`String` **_string_to_title**\ (\ string\: :ref:`String`, language\: :ref:`String`\ ) |virtual| |const| :ref:`🔗` -**Optional.**\ - Returns the string converted to title case. .. rst-class:: classref-item-separator @@ -3540,8 +3336,6 @@ Returns the string converted to title case. :ref:`String` **_string_to_upper**\ (\ string\: :ref:`String`, language\: :ref:`String`\ ) |virtual| |const| :ref:`🔗` -**Optional.**\ - Returns the string converted to uppercase. .. rst-class:: classref-item-separator @@ -3554,8 +3348,6 @@ Returns the string converted to uppercase. :ref:`String` **_strip_diacritics**\ (\ string\: :ref:`String`\ ) |virtual| |const| :ref:`🔗` -**Optional.**\ - Strips diacritics from the string. .. rst-class:: classref-item-separator @@ -3568,11 +3360,22 @@ Strips diacritics from the string. :ref:`String` **_tag_to_name**\ (\ tag\: :ref:`int`\ ) |virtual| |const| :ref:`🔗` -**Optional.**\ - Converts OpenType tag to readable feature, variation, script, or language name. +.. rst-class:: classref-item-separator + +---- + +.. _class_TextServerExtension_private_method__unreference_oversampling_level: + +.. rst-class:: classref-method + +|void| **_unreference_oversampling_level**\ (\ oversampling\: :ref:`float`\ ) |virtual| :ref:`🔗` + +Decreases the reference count of the specified oversampling level, and frees the font cache for oversampling level when the reference count reaches zero. This method is called by :ref:`Viewport`, and should not be used directly. + .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |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.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_textserverfallback.rst b/classes/class_textserverfallback.rst index 92b6cdf00..74ad496c6 100644 --- a/classes/class_textserverfallback.rst +++ b/classes/class_textserverfallback.rst @@ -24,6 +24,7 @@ A fallback implementation of Godot's text server. This fallback is faster than : \ **Note:** This text server is not part of official Godot binaries. If you want to use it, compile the engine with the option ``module_text_server_fb_enabled=yes``. When building with **TextServerFallback**, consider also disabling :ref:`TextServerAdvanced` with ``module_text_server_adv_enabled=no`` to reduce binary size. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_textservermanager.rst b/classes/class_textservermanager.rst index 95a3557ee..4d905ddbf 100644 --- a/classes/class_textservermanager.rst +++ b/classes/class_textservermanager.rst @@ -180,6 +180,7 @@ Removes an interface. All fonts and shaped text caches should be freed before re Sets the primary :ref:`TextServer` interface. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_texture.rst b/classes/class_texture.rst index afd74fd2f..510896064 100644 --- a/classes/class_texture.rst +++ b/classes/class_texture.rst @@ -24,6 +24,7 @@ Description **Texture** is the base class for all texture types. Common texture types are :ref:`Texture2D` and :ref:`ImageTexture`. See also :ref:`Image`. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_texture2d.rst b/classes/class_texture2d.rst index b89347854..aab9244ba 100644 --- a/classes/class_texture2d.rst +++ b/classes/class_texture2d.rst @@ -12,7 +12,7 @@ Texture2D **Inherits:** :ref:`Texture` **<** :ref:`Resource` **<** :ref:`RefCounted` **<** :ref:`Object` -**Inherited By:** :ref:`AnimatedTexture`, :ref:`AtlasTexture`, :ref:`CameraTexture`, :ref:`CanvasTexture`, :ref:`CompressedTexture2D`, :ref:`CurveTexture`, :ref:`CurveXYZTexture`, :ref:`ExternalTexture`, :ref:`GradientTexture1D`, :ref:`GradientTexture2D`, :ref:`ImageTexture`, :ref:`MeshTexture`, :ref:`NoiseTexture2D`, :ref:`PlaceholderTexture2D`, :ref:`PortableCompressedTexture2D`, :ref:`Texture2DRD`, :ref:`ViewportTexture` +**Inherited By:** :ref:`AnimatedTexture`, :ref:`AtlasTexture`, :ref:`CameraTexture`, :ref:`CanvasTexture`, :ref:`CompressedTexture2D`, :ref:`CurveTexture`, :ref:`CurveXYZTexture`, :ref:`DPITexture`, :ref:`ExternalTexture`, :ref:`GradientTexture1D`, :ref:`GradientTexture2D`, :ref:`ImageTexture`, :ref:`MeshTexture`, :ref:`NoiseTexture2D`, :ref:`PlaceholderTexture2D`, :ref:`PortableCompressedTexture2D`, :ref:`Texture2DRD`, :ref:`ViewportTexture` Texture for 2D and 3D. @@ -44,9 +44,9 @@ Methods +---------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`_draw_rect_region`\ (\ to_canvas_item\: :ref:`RID`, rect\: :ref:`Rect2`, src_rect\: :ref:`Rect2`, modulate\: :ref:`Color`, transpose\: :ref:`bool`, clip_uv\: :ref:`bool`\ ) |virtual| |const| | +---------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`_get_height`\ (\ ) |virtual| |const| | + | :ref:`int` | :ref:`_get_height`\ (\ ) |virtual| |required| |const| | +---------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`_get_width`\ (\ ) |virtual| |const| | + | :ref:`int` | :ref:`_get_width`\ (\ ) |virtual| |required| |const| | +---------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`_has_alpha`\ (\ ) |virtual| |const| | +---------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ @@ -126,7 +126,7 @@ Called when a part of the **Texture2D** specified by ``src_rect``'s coordinates .. rst-class:: classref-method -:ref:`int` **_get_height**\ (\ ) |virtual| |const| :ref:`🔗` +:ref:`int` **_get_height**\ (\ ) |virtual| |required| |const| :ref:`🔗` Called when the **Texture2D**'s height is queried. @@ -138,7 +138,7 @@ Called when the **Texture2D**'s height is queried. .. rst-class:: classref-method -:ref:`int` **_get_width**\ (\ ) |virtual| |const| :ref:`🔗` +:ref:`int` **_get_width**\ (\ ) |virtual| |required| |const| :ref:`🔗` Called when the **Texture2D**'s width is queried. @@ -279,6 +279,7 @@ Returns the texture width in pixels. Returns ``true`` if this **Texture2D** has an alpha channel. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_texture2darray.rst b/classes/class_texture2darray.rst index 583e28d2a..ad05b7558 100644 --- a/classes/class_texture2darray.rst +++ b/classes/class_texture2darray.rst @@ -55,6 +55,7 @@ Method Descriptions Creates a placeholder version of this resource (:ref:`PlaceholderTexture2DArray`). .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_texture2darrayrd.rst b/classes/class_texture2darrayrd.rst index 496e8d8d5..1c747865b 100644 --- a/classes/class_texture2darrayrd.rst +++ b/classes/class_texture2darrayrd.rst @@ -22,6 +22,7 @@ Description This texture array class allows you to use a 2D array texture created directly on the :ref:`RenderingDevice` as a texture for materials, meshes, etc. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_texture2drd.rst b/classes/class_texture2drd.rst index a008425b4..ccaa790b5 100644 --- a/classes/class_texture2drd.rst +++ b/classes/class_texture2drd.rst @@ -58,6 +58,7 @@ Property Descriptions The RID of the texture object created on the :ref:`RenderingDevice`. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_texture3d.rst b/classes/class_texture3d.rst index 3b0e85799..c84e7179c 100644 --- a/classes/class_texture3d.rst +++ b/classes/class_texture3d.rst @@ -35,33 +35,33 @@ Methods .. table:: :widths: auto - +--------------------------------------------------------+------------------------------------------------------------------------------------------+ - | :ref:`Array`\[:ref:`Image`\] | :ref:`_get_data`\ (\ ) |virtual| |const| | - +--------------------------------------------------------+------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`_get_depth`\ (\ ) |virtual| |const| | - +--------------------------------------------------------+------------------------------------------------------------------------------------------+ - | :ref:`Format` | :ref:`_get_format`\ (\ ) |virtual| |const| | - +--------------------------------------------------------+------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`_get_height`\ (\ ) |virtual| |const| | - +--------------------------------------------------------+------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`_get_width`\ (\ ) |virtual| |const| | - +--------------------------------------------------------+------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`_has_mipmaps`\ (\ ) |virtual| |const| | - +--------------------------------------------------------+------------------------------------------------------------------------------------------+ - | :ref:`Resource` | :ref:`create_placeholder`\ (\ ) |const| | - +--------------------------------------------------------+------------------------------------------------------------------------------------------+ - | :ref:`Array`\[:ref:`Image`\] | :ref:`get_data`\ (\ ) |const| | - +--------------------------------------------------------+------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`get_depth`\ (\ ) |const| | - +--------------------------------------------------------+------------------------------------------------------------------------------------------+ - | :ref:`Format` | :ref:`get_format`\ (\ ) |const| | - +--------------------------------------------------------+------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`get_height`\ (\ ) |const| | - +--------------------------------------------------------+------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`get_width`\ (\ ) |const| | - +--------------------------------------------------------+------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`has_mipmaps`\ (\ ) |const| | - +--------------------------------------------------------+------------------------------------------------------------------------------------------+ + +--------------------------------------------------------+-----------------------------------------------------------------------------------------------------+ + | :ref:`Array`\[:ref:`Image`\] | :ref:`_get_data`\ (\ ) |virtual| |required| |const| | + +--------------------------------------------------------+-----------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`_get_depth`\ (\ ) |virtual| |required| |const| | + +--------------------------------------------------------+-----------------------------------------------------------------------------------------------------+ + | :ref:`Format` | :ref:`_get_format`\ (\ ) |virtual| |required| |const| | + +--------------------------------------------------------+-----------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`_get_height`\ (\ ) |virtual| |required| |const| | + +--------------------------------------------------------+-----------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`_get_width`\ (\ ) |virtual| |required| |const| | + +--------------------------------------------------------+-----------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`_has_mipmaps`\ (\ ) |virtual| |required| |const| | + +--------------------------------------------------------+-----------------------------------------------------------------------------------------------------+ + | :ref:`Resource` | :ref:`create_placeholder`\ (\ ) |const| | + +--------------------------------------------------------+-----------------------------------------------------------------------------------------------------+ + | :ref:`Array`\[:ref:`Image`\] | :ref:`get_data`\ (\ ) |const| | + +--------------------------------------------------------+-----------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`get_depth`\ (\ ) |const| | + +--------------------------------------------------------+-----------------------------------------------------------------------------------------------------+ + | :ref:`Format` | :ref:`get_format`\ (\ ) |const| | + +--------------------------------------------------------+-----------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`get_height`\ (\ ) |const| | + +--------------------------------------------------------+-----------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`get_width`\ (\ ) |const| | + +--------------------------------------------------------+-----------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`has_mipmaps`\ (\ ) |const| | + +--------------------------------------------------------+-----------------------------------------------------------------------------------------------------+ .. rst-class:: classref-section-separator @@ -76,7 +76,7 @@ Method Descriptions .. rst-class:: classref-method -:ref:`Array`\[:ref:`Image`\] **_get_data**\ (\ ) |virtual| |const| :ref:`🔗` +:ref:`Array`\[:ref:`Image`\] **_get_data**\ (\ ) |virtual| |required| |const| :ref:`🔗` Called when the **Texture3D**'s data is queried. @@ -88,7 +88,7 @@ Called when the **Texture3D**'s data is queried. .. rst-class:: classref-method -:ref:`int` **_get_depth**\ (\ ) |virtual| |const| :ref:`🔗` +:ref:`int` **_get_depth**\ (\ ) |virtual| |required| |const| :ref:`🔗` Called when the **Texture3D**'s depth is queried. @@ -100,7 +100,7 @@ Called when the **Texture3D**'s depth is queried. .. rst-class:: classref-method -:ref:`Format` **_get_format**\ (\ ) |virtual| |const| :ref:`🔗` +:ref:`Format` **_get_format**\ (\ ) |virtual| |required| |const| :ref:`🔗` Called when the **Texture3D**'s format is queried. @@ -112,7 +112,7 @@ Called when the **Texture3D**'s format is queried. .. rst-class:: classref-method -:ref:`int` **_get_height**\ (\ ) |virtual| |const| :ref:`🔗` +:ref:`int` **_get_height**\ (\ ) |virtual| |required| |const| :ref:`🔗` Called when the **Texture3D**'s height is queried. @@ -124,7 +124,7 @@ Called when the **Texture3D**'s height is queried. .. rst-class:: classref-method -:ref:`int` **_get_width**\ (\ ) |virtual| |const| :ref:`🔗` +:ref:`int` **_get_width**\ (\ ) |virtual| |required| |const| :ref:`🔗` Called when the **Texture3D**'s width is queried. @@ -136,7 +136,7 @@ Called when the **Texture3D**'s width is queried. .. rst-class:: classref-method -:ref:`bool` **_has_mipmaps**\ (\ ) |virtual| |const| :ref:`🔗` +:ref:`bool` **_has_mipmaps**\ (\ ) |virtual| |required| |const| :ref:`🔗` Called when the presence of mipmaps in the **Texture3D** is queried. @@ -186,7 +186,7 @@ Returns the **Texture3D**'s depth in pixels. Depth is typically represented by t :ref:`Format` **get_format**\ (\ ) |const| :ref:`🔗` -Returns the current format being used by this texture. See :ref:`Format` for details. +Returns the current format being used by this texture. .. rst-class:: classref-item-separator @@ -225,6 +225,7 @@ Returns the **Texture3D**'s width in pixels. Width is typically represented by t Returns ``true`` if the **Texture3D** has generated mipmaps. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_texture3drd.rst b/classes/class_texture3drd.rst index 9a9489d9d..fb0170be5 100644 --- a/classes/class_texture3drd.rst +++ b/classes/class_texture3drd.rst @@ -56,6 +56,7 @@ Property Descriptions The RID of the texture object created on the :ref:`RenderingDevice`. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_texturebutton.rst b/classes/class_texturebutton.rst index c53d44ba9..15b4af6ac 100644 --- a/classes/class_texturebutton.rst +++ b/classes/class_texturebutton.rst @@ -309,6 +309,7 @@ Texture to display by default, when the node is **not** in the disabled, hover o Texture to display on mouse down over the node, if the node has keyboard focus and the player presses the Enter key or if the player presses the :ref:`BaseButton.shortcut` key. If not assigned, the **TextureButton** displays :ref:`texture_hover` instead when pressed. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_texturecubemaparrayrd.rst b/classes/class_texturecubemaparrayrd.rst index 0ffa49010..f01d7a548 100644 --- a/classes/class_texturecubemaparrayrd.rst +++ b/classes/class_texturecubemaparrayrd.rst @@ -22,6 +22,7 @@ Description This texture class allows you to use a cubemap array texture created directly on the :ref:`RenderingDevice` as a texture for materials, meshes, etc. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_texturecubemaprd.rst b/classes/class_texturecubemaprd.rst index efe58952e..2db552f16 100644 --- a/classes/class_texturecubemaprd.rst +++ b/classes/class_texturecubemaprd.rst @@ -22,6 +22,7 @@ Description This texture class allows you to use a cubemap texture created directly on the :ref:`RenderingDevice` as a texture for materials, meshes, etc. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_texturelayered.rst b/classes/class_texturelayered.rst index fb9e75198..9c49e49e7 100644 --- a/classes/class_texturelayered.rst +++ b/classes/class_texturelayered.rst @@ -39,35 +39,35 @@ Methods .. table:: :widths: auto - +-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Format` | :ref:`_get_format`\ (\ ) |virtual| |const| | - +-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`_get_height`\ (\ ) |virtual| |const| | - +-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Image` | :ref:`_get_layer_data`\ (\ layer_index\: :ref:`int`\ ) |virtual| |const| | - +-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`_get_layered_type`\ (\ ) |virtual| |const| | - +-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`_get_layers`\ (\ ) |virtual| |const| | - +-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`_get_width`\ (\ ) |virtual| |const| | - +-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`_has_mipmaps`\ (\ ) |virtual| |const| | - +-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Format` | :ref:`get_format`\ (\ ) |const| | - +-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`get_height`\ (\ ) |const| | - +-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Image` | :ref:`get_layer_data`\ (\ layer\: :ref:`int`\ ) |const| | - +-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`LayeredType` | :ref:`get_layered_type`\ (\ ) |const| | - +-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`get_layers`\ (\ ) |const| | - +-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`get_width`\ (\ ) |const| | - +-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`has_mipmaps`\ (\ ) |const| | - +-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------+ + +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Format` | :ref:`_get_format`\ (\ ) |virtual| |required| |const| | + +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`_get_height`\ (\ ) |virtual| |required| |const| | + +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Image` | :ref:`_get_layer_data`\ (\ layer_index\: :ref:`int`\ ) |virtual| |required| |const| | + +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`_get_layered_type`\ (\ ) |virtual| |required| |const| | + +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`_get_layers`\ (\ ) |virtual| |required| |const| | + +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`_get_width`\ (\ ) |virtual| |required| |const| | + +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`_has_mipmaps`\ (\ ) |virtual| |required| |const| | + +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Format` | :ref:`get_format`\ (\ ) |const| | + +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`get_height`\ (\ ) |const| | + +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Image` | :ref:`get_layer_data`\ (\ layer\: :ref:`int`\ ) |const| | + +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`LayeredType` | :ref:`get_layered_type`\ (\ ) |const| | + +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`get_layers`\ (\ ) |const| | + +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`get_width`\ (\ ) |const| | + +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`has_mipmaps`\ (\ ) |const| | + +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------+ .. rst-class:: classref-section-separator @@ -121,7 +121,7 @@ Method Descriptions .. rst-class:: classref-method -:ref:`Format` **_get_format**\ (\ ) |virtual| |const| :ref:`🔗` +:ref:`Format` **_get_format**\ (\ ) |virtual| |required| |const| :ref:`🔗` Called when the **TextureLayered**'s format is queried. @@ -133,7 +133,7 @@ Called when the **TextureLayered**'s format is queried. .. rst-class:: classref-method -:ref:`int` **_get_height**\ (\ ) |virtual| |const| :ref:`🔗` +:ref:`int` **_get_height**\ (\ ) |virtual| |required| |const| :ref:`🔗` Called when the **TextureLayered**'s height is queried. @@ -145,7 +145,7 @@ Called when the **TextureLayered**'s height is queried. .. rst-class:: classref-method -:ref:`Image` **_get_layer_data**\ (\ layer_index\: :ref:`int`\ ) |virtual| |const| :ref:`🔗` +:ref:`Image` **_get_layer_data**\ (\ layer_index\: :ref:`int`\ ) |virtual| |required| |const| :ref:`🔗` Called when the data for a layer in the **TextureLayered** is queried. @@ -157,7 +157,7 @@ Called when the data for a layer in the **TextureLayered** is queried. .. rst-class:: classref-method -:ref:`int` **_get_layered_type**\ (\ ) |virtual| |const| :ref:`🔗` +:ref:`int` **_get_layered_type**\ (\ ) |virtual| |required| |const| :ref:`🔗` Called when the layers' type in the **TextureLayered** is queried. @@ -169,7 +169,7 @@ Called when the layers' type in the **TextureLayered** is queried. .. rst-class:: classref-method -:ref:`int` **_get_layers**\ (\ ) |virtual| |const| :ref:`🔗` +:ref:`int` **_get_layers**\ (\ ) |virtual| |required| |const| :ref:`🔗` Called when the number of layers in the **TextureLayered** is queried. @@ -181,7 +181,7 @@ Called when the number of layers in the **TextureLayered** is queried. .. rst-class:: classref-method -:ref:`int` **_get_width**\ (\ ) |virtual| |const| :ref:`🔗` +:ref:`int` **_get_width**\ (\ ) |virtual| |required| |const| :ref:`🔗` Called when the **TextureLayered**'s width queried. @@ -193,7 +193,7 @@ Called when the **TextureLayered**'s width queried. .. rst-class:: classref-method -:ref:`bool` **_has_mipmaps**\ (\ ) |virtual| |const| :ref:`🔗` +:ref:`bool` **_has_mipmaps**\ (\ ) |virtual| |required| |const| :ref:`🔗` Called when the presence of mipmaps in the **TextureLayered** is queried. @@ -207,7 +207,7 @@ Called when the presence of mipmaps in the **TextureLayered** is queried. :ref:`Format` **get_format**\ (\ ) |const| :ref:`🔗` -Returns the current format being used by this texture. See :ref:`Format` for details. +Returns the current format being used by this texture. .. rst-class:: classref-item-separator @@ -282,6 +282,7 @@ Returns the width of the texture in pixels. Width is typically represented by th Returns ``true`` if the layers have generated mipmaps. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_texturelayeredrd.rst b/classes/class_texturelayeredrd.rst index e7945235a..9ad880886 100644 --- a/classes/class_texturelayeredrd.rst +++ b/classes/class_texturelayeredrd.rst @@ -58,6 +58,7 @@ Property Descriptions The RID of the texture object created on the :ref:`RenderingDevice`. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_textureprogressbar.rst b/classes/class_textureprogressbar.rst index 4125f8ae1..e8d8fedb1 100644 --- a/classes/class_textureprogressbar.rst +++ b/classes/class_textureprogressbar.rst @@ -485,6 +485,7 @@ Returns the stretch margin with the specified index. See :ref:`stretch_margin_bo Sets the stretch margin with the specified index. See :ref:`stretch_margin_bottom` and related properties. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_texturerect.rst b/classes/class_texturerect.rst index c24ac8e24..91c25134d 100644 --- a/classes/class_texturerect.rst +++ b/classes/class_texturerect.rst @@ -201,7 +201,7 @@ Property Descriptions **Experimental:** Using :ref:`EXPAND_FIT_WIDTH`, :ref:`EXPAND_FIT_WIDTH_PROPORTIONAL`, :ref:`EXPAND_FIT_HEIGHT`, or :ref:`EXPAND_FIT_HEIGHT_PROPORTIONAL` may result in unstable behavior in some :ref:`Container` controls. This behavior may be re-evaluated and changed in the future. -Defines how minimum size is determined based on the texture's size. See :ref:`ExpandMode` for options. +Defines how minimum size is determined based on the texture's size. .. rst-class:: classref-item-separator @@ -252,7 +252,7 @@ If ``true``, texture is flipped vertically. - |void| **set_stretch_mode**\ (\ value\: :ref:`StretchMode`\ ) - :ref:`StretchMode` **get_stretch_mode**\ (\ ) -Controls the texture's behavior when resizing the node's bounding rectangle. See :ref:`StretchMode`. +Controls the texture's behavior when resizing the node's bounding rectangle. .. rst-class:: classref-item-separator @@ -272,6 +272,7 @@ Controls the texture's behavior when resizing the node's bounding rectangle. See The node's :ref:`Texture2D` resource. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_theme.rst b/classes/class_theme.rst index f8aabeeee..4339921b3 100644 --- a/classes/class_theme.rst +++ b/classes/class_theme.rst @@ -167,6 +167,8 @@ Methods +---------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`rename_theme_item`\ (\ data_type\: :ref:`DataType`, old_name\: :ref:`StringName`, name\: :ref:`StringName`, theme_type\: :ref:`StringName`\ ) | +---------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`rename_type`\ (\ old_theme_type\: :ref:`StringName`, theme_type\: :ref:`StringName`\ ) | + +---------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`set_color`\ (\ name\: :ref:`StringName`, theme_type\: :ref:`StringName`, color\: :ref:`Color`\ ) | +---------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`set_constant`\ (\ name\: :ref:`StringName`, theme_type\: :ref:`StringName`, constant\: :ref:`int`\ ) | @@ -1056,6 +1058,20 @@ Fails if it doesn't exist, or if a similar property with the new name already ex ---- +.. _class_Theme_method_rename_type: + +.. rst-class:: classref-method + +|void| **rename_type**\ (\ old_theme_type\: :ref:`StringName`, theme_type\: :ref:`StringName`\ ) :ref:`🔗` + +Renames the theme type ``old_theme_type`` to ``theme_type``, if the old type exists and the new one doesn't exist. + +\ **Note:** Renaming a theme type to an empty name or a variation to a type associated with a built-in class removes type variation connections in a way that cannot be undone by reversing the rename alone. + +.. rst-class:: classref-item-separator + +---- + .. _class_Theme_method_set_color: .. rst-class:: classref-method @@ -1159,6 +1175,7 @@ Variations can also be nested, i.e. ``base_type`` can be another variation. If a \ **Note:** Suggestions only show up if this theme resource is set as the project default theme. See :ref:`ProjectSettings.gui/theme/custom`. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_themedb.rst b/classes/class_themedb.rst index 6e7785380..ab054b63e 100644 --- a/classes/class_themedb.rst +++ b/classes/class_themedb.rst @@ -202,6 +202,7 @@ Returns a reference to the custom project :ref:`Theme`. This theme To set the project theme, see :ref:`ProjectSettings.gui/theme/custom`. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_thread.rst b/classes/class_thread.rst index ff5d5b8e8..b3c0c18ba 100644 --- a/classes/class_thread.rst +++ b/classes/class_thread.rst @@ -205,6 +205,7 @@ Should either be used when you want to retrieve the value returned from the meth To determine if this can be called without blocking the calling thread, check if :ref:`is_alive()` is ``false``. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_tiledata.rst b/classes/class_tiledata.rst index af4581a4d..cbf8f9f47 100644 --- a/classes/class_tiledata.rst +++ b/classes/class_tiledata.rst @@ -19,7 +19,7 @@ Settings for a single tile in a :ref:`TileSet`. Description ----------- -**TileData** object represents a single tile in a :ref:`TileSet`. It is usually edited using the tileset editor, but it can be modified at runtime using :ref:`TileMap._tile_data_runtime_update()`. +**TileData** object represents a single tile in a :ref:`TileSet`. It is usually edited using the tileset editor, but it can be modified at runtime using :ref:`TileMapLayer._tile_data_runtime_update()`. .. rst-class:: classref-reftable-group @@ -334,7 +334,7 @@ Vertical point of the tile used for determining y-sorted order. - |void| **set_z_index**\ (\ value\: :ref:`int`\ ) - :ref:`int` **get_z_index**\ (\ ) -Ordering index of this tile, relative to :ref:`TileMap`. +Ordering index of this tile, relative to :ref:`TileMapLayer`. .. rst-class:: classref-section-separator @@ -736,6 +736,7 @@ Sets the occluder polygon count in the TileSet occlusion layer with index ``laye Sets the tile's terrain bit for the given ``peering_bit`` direction. To check that a direction is valid, use :ref:`is_valid_terrain_peering_bit()`. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_tilemap.rst b/classes/class_tilemap.rst index f9bc361eb..df95d966c 100644 --- a/classes/class_tilemap.rst +++ b/classes/class_tilemap.rst @@ -1115,6 +1115,7 @@ However, for performance reasons, those updates are batched and delayed to the e \ **Warning:** Updating the TileMap is computationally expensive and may impact performance. Try to limit the number of updates and how many tiles they impact. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_tilemaplayer.rst b/classes/class_tilemaplayer.rst index 250f405a3..a818f2a4d 100644 --- a/classes/class_tilemaplayer.rst +++ b/classes/class_tilemaplayer.rst @@ -21,7 +21,7 @@ Description Node for 2D tile-based maps. A **TileMapLayer** uses a :ref:`TileSet` which contain a list of tiles which are used to create grid-based maps. Unlike the :ref:`TileMap` node, which is deprecated, **TileMapLayer** has only one layer of tiles. You can use several **TileMapLayer** to achieve the same result as a :ref:`TileMap` node. -For performance reasons, all TileMap updates are batched at the end of a frame. Notably, this means that scene tiles from a :ref:`TileSetScenesCollectionSource` may be initialized after their parent. This is only queued when inside the scene tree. +For performance reasons, all TileMap updates are batched at the end of a frame. Notably, this means that scene tiles from a :ref:`TileSetScenesCollectionSource` are initialized after their parent. This is only queued when inside the scene tree. To force an update earlier on, call :ref:`update_internals()`. @@ -69,6 +69,8 @@ Properties +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------+-----------------------+ | :ref:`bool` | :ref:`occlusion_enabled` | ``true`` | +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------+-----------------------+ + | :ref:`int` | :ref:`physics_quadrant_size` | ``16`` | + +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------+-----------------------+ | :ref:`int` | :ref:`rendering_quadrant_size` | ``16`` | +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------+-----------------------+ | :ref:`PackedByteArray` | :ref:`tile_map_data` | ``PackedByteArray()`` | @@ -325,6 +327,27 @@ Enable or disable light occlusion. ---- +.. _class_TileMapLayer_property_physics_quadrant_size: + +.. rst-class:: classref-property + +:ref:`int` **physics_quadrant_size** = ``16`` :ref:`🔗` + +.. rst-class:: classref-property-setget + +- |void| **set_physics_quadrant_size**\ (\ value\: :ref:`int`\ ) +- :ref:`int` **get_physics_quadrant_size**\ (\ ) + +The **TileMapLayer**'s physics quadrant size. Within a physics quadrant, cells with similar physics properties are grouped together and their collision shapes get merged. :ref:`physics_quadrant_size` defines the length of a square's side, in the map's coordinate system, that forms the quadrant. Thus, the default quadrant size groups together ``16 * 16 = 256`` tiles. + +\ **Note:** As quadrants are created according to the map's coordinate system, the quadrant's "square shape" might not look like square in the **TileMapLayer**'s local coordinate system. + +\ **Note:** This impacts the value returned by :ref:`get_coords_for_body_rid()`. + +.. rst-class:: classref-item-separator + +---- + .. _class_TileMapLayer_property_rendering_quadrant_size: .. rst-class:: classref-property @@ -336,7 +359,7 @@ Enable or disable light occlusion. - |void| **set_rendering_quadrant_size**\ (\ value\: :ref:`int`\ ) - :ref:`int` **get_rendering_quadrant_size**\ (\ ) -The **TileMapLayer**'s quadrant size. A quadrant is a group of tiles to be drawn together on a single canvas item, for optimization purposes. :ref:`rendering_quadrant_size` defines the length of a square's side, in the map's coordinate system, that forms the quadrant. Thus, the default quadrant size groups together ``16 * 16 = 256`` tiles. +The **TileMapLayer**'s rendering quadrant size. A quadrant is a group of tiles to be drawn together on a single canvas item, for optimization purposes. :ref:`rendering_quadrant_size` defines the length of a square's side, in the map's coordinate system, that forms the quadrant. Thus, the default quadrant size groups together ``16 * 16 = 256`` tiles. The quadrant size does not apply on a Y-sorted **TileMapLayer**, as tiles are grouped by Y position instead in that case. @@ -598,7 +621,7 @@ Returns the :ref:`TileData` object associated with the given cel :ref:`Vector2i` **get_coords_for_body_rid**\ (\ body\: :ref:`RID`\ ) |const| :ref:`🔗` -Returns the coordinates of the tile for given physics body :ref:`RID`. Such an :ref:`RID` can be retrieved from :ref:`KinematicCollision2D.get_collider_rid()`, when colliding with a tile. +Returns the coordinates of the physics quadrant (see :ref:`physics_quadrant_size`) for given physics body :ref:`RID`. Such an :ref:`RID` can be retrieved from :ref:`KinematicCollision2D.get_collider_rid()`, when colliding with a tile. .. rst-class:: classref-item-separator @@ -885,6 +908,7 @@ However, for performance reasons, those updates are batched and delayed to the e \ **Warning:** Updating the **TileMapLayer** is computationally expensive and may impact performance. Try to limit the number of updates and how many tiles they impact. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_tilemappattern.rst b/classes/class_tilemappattern.rst index 1400b4241..530e2b98a 100644 --- a/classes/class_tilemappattern.rst +++ b/classes/class_tilemappattern.rst @@ -21,7 +21,7 @@ Description This resource holds a set of cells to help bulk manipulations of :ref:`TileMap`. -A pattern always start at the ``(0,0)`` coordinates and cannot have cells with negative coordinates. +A pattern always starts at the ``(0, 0)`` coordinates and cannot have cells with negative coordinates. .. rst-class:: classref-reftable-group @@ -179,6 +179,7 @@ Sets the tile identifiers for the cell at coordinates ``coords``. See :ref:`Tile Sets the size of the pattern. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_tileset.rst b/classes/class_tileset.rst index 326066cb1..8d8b24475 100644 --- a/classes/class_tileset.rst +++ b/classes/class_tileset.rst @@ -269,7 +269,7 @@ Rectangular tile shape. Diamond tile shape (for isometric look). -\ **Note:** Isometric **TileSet** works best if :ref:`TileMap` and all its layers have Y-sort enabled. +\ **Note:** Isometric **TileSet** works best if all sibling :ref:`TileMapLayer`\ s and their parent inheriting from :ref:`Node2D` have Y-sort enabled. .. _class_TileSet_constant_TILE_SHAPE_HALF_OFFSET_SQUARE: @@ -563,7 +563,7 @@ Property Descriptions - |void| **set_tile_layout**\ (\ value\: :ref:`TileLayout`\ ) - :ref:`TileLayout` **get_tile_layout**\ (\ ) -For all half-offset shapes (Isometric, Hexagonal and Half-Offset square), changes the way tiles are indexed in the TileMap grid. +For all half-offset shapes (Isometric, Hexagonal and Half-Offset square), changes the way tiles are indexed in the :ref:`TileMapLayer` grid. .. rst-class:: classref-item-separator @@ -1416,9 +1416,7 @@ Removes the terrain set at index ``terrain_set``. Also updates the atlas tiles a Create an alternative-level proxy for the given identifiers. A proxy will map set of tile identifiers to another set of identifiers. -This can be used to replace a tile in all TileMaps using this TileSet, as TileMap nodes will find and use the proxy's target tile when one is available. - -Proxied tiles can be automatically replaced in TileMap nodes using the editor. +Proxied tiles can be automatically replaced in TileMapLayer nodes using the editor. .. rst-class:: classref-item-separator @@ -1432,9 +1430,7 @@ Proxied tiles can be automatically replaced in TileMap nodes using the editor. Creates a coordinates-level proxy for the given identifiers. A proxy will map set of tile identifiers to another set of identifiers. The alternative tile ID is kept the same when using coordinates-level proxies. -This can be used to replace a tile in all TileMaps using this TileSet, as TileMap nodes will find and use the proxy's target tile when one is available. - -Proxied tiles can be automatically replaced in TileMap nodes using the editor. +Proxied tiles can be automatically replaced in TileMapLayer nodes using the editor. .. rst-class:: classref-item-separator @@ -1580,9 +1576,7 @@ Changes a source's ID. Creates a source-level proxy for the given source ID. A proxy will map set of tile identifiers to another set of identifiers. Both the atlas coordinates ID and the alternative tile ID are kept the same when using source-level proxies. -This can be used to replace a source in all TileMaps using this TileSet, as TileMap nodes will find and use the proxy's target source when one is available. - -Proxied tiles can be automatically replaced in TileMap nodes using the editor. +Proxied tiles can be automatically replaced in TileMapLayer nodes using the editor. .. rst-class:: classref-item-separator @@ -1621,6 +1615,7 @@ Sets a terrain's name. Sets a terrain mode. Each mode determines which bits of a tile shape is used to match the neighboring tiles' terrains. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_tilesetatlassource.rst b/classes/class_tilesetatlassource.rst index 341a29e7d..a9a882d06 100644 --- a/classes/class_tilesetatlassource.rst +++ b/classes/class_tilesetatlassource.rst @@ -175,14 +175,14 @@ Constants **TRANSFORM_FLIP_H** = ``4096`` :ref:`🔗` -Represents cell's horizontal flip flag. Should be used directly with :ref:`TileMap` to flip placed tiles by altering their alternative IDs. +Represents cell's horizontal flip flag. Should be used directly with :ref:`TileMapLayer` to flip placed tiles by altering their alternative IDs. :: - var alternate_id = $TileMap.get_cell_alternative_tile(0, Vector2i(2, 2)) + var alternate_id = $TileMapLayer.get_cell_alternative_tile(Vector2i(2, 2)) if not alternate_id & TileSetAtlasSource.TRANSFORM_FLIP_H: # If tile is not already flipped, flip it. - $TileMap.set_cell(0, Vector2i(2, 2), source_id, atlas_coords, alternate_id | TileSetAtlasSource.TRANSFORM_FLIP_H) + $TileMapLayer.set_cell(Vector2i(2, 2), source_id, atlas_coords, alternate_id | TileSetAtlasSource.TRANSFORM_FLIP_H) \ **Note:** These transformations can be combined to do the equivalent of 0, 90, 180, and 270 degree rotations, as shown below: @@ -693,6 +693,7 @@ Sets the margin (in grid tiles) between each tile in the animation layout of the Sets the animation speed of the tile at coordinates ``atlas_coords`` has. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_tilesetscenescollectionsource.rst b/classes/class_tilesetscenescollectionsource.rst index 2da305892..73b20c4d3 100644 --- a/classes/class_tilesetscenescollectionsource.rst +++ b/classes/class_tilesetscenescollectionsource.rst @@ -19,9 +19,9 @@ Exposes a set of scenes as tiles for a :ref:`TileSet` resource. Description ----------- -When placed on a :ref:`TileMap`, tiles from **TileSetScenesCollectionSource** will automatically instantiate an associated scene at the cell's position in the TileMap. +When placed on a :ref:`TileMapLayer`, tiles from **TileSetScenesCollectionSource** will automatically instantiate an associated scene at the cell's position in the TileMapLayer. -Scenes are instantiated as children of the :ref:`TileMap` when it enters the tree. If you add/remove a scene tile in the :ref:`TileMap` that is already inside the tree, the :ref:`TileMap` will automatically instantiate/free the scene accordingly. +Scenes are instantiated as children of the :ref:`TileMapLayer` after it enters the tree, at the end of the frame (their creation is deferred). If you add/remove a scene tile in the :ref:`TileMapLayer` that is already inside the tree, the :ref:`TileMapLayer` will automatically instantiate/free the scene accordingly. \ **Note:** Scene tiles all occupy one tile slot and instead use alternate tile ID to identify scene index. :ref:`TileSetSource.get_tiles_count()` will always return ``1``. Use :ref:`get_scene_tiles_count()` to get a number of scenes in a **TileSetScenesCollectionSource**. @@ -225,9 +225,10 @@ Changes a scene tile's ID from ``id`` to ``new_id``. This will fail if there is |void| **set_scene_tile_scene**\ (\ id\: :ref:`int`, packed_scene\: :ref:`PackedScene`\ ) :ref:`🔗` -Assigns a :ref:`PackedScene` resource to the scene tile with ``id``. This will fail if the scene does not extend CanvasItem, as positioning properties are needed to place the scene on the TileMap. +Assigns a :ref:`PackedScene` resource to the scene tile with ``id``. This will fail if the scene does not extend :ref:`CanvasItem`, as positioning properties are needed to place the scene on the :ref:`TileMapLayer`. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_tilesetsource.rst b/classes/class_tilesetsource.rst index 7bb5eeeca..6b903d04e 100644 --- a/classes/class_tilesetsource.rst +++ b/classes/class_tilesetsource.rst @@ -135,6 +135,7 @@ Returns if the base tile at coordinates ``atlas_coords`` has an alternative with Returns if this atlas has a tile with coordinates ID ``atlas_coords``. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_time.rst b/classes/class_time.rst index 1e5be38c0..835016527 100644 --- a/classes/class_time.rst +++ b/classes/class_time.rst @@ -564,6 +564,7 @@ Returns the current Unix timestamp in seconds based on the system time in UTC. T \ **Note:** Unlike other methods that use integer timestamps, this method returns the timestamp as a :ref:`float` for sub-second precision. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_timer.rst b/classes/class_timer.rst index 044ea2f3d..09fdbfb7b 100644 --- a/classes/class_timer.rst +++ b/classes/class_timer.rst @@ -21,7 +21,7 @@ Description The **Timer** node is a countdown timer and is the simplest way to handle time-based logic in the engine. When a timer reaches the end of its :ref:`wait_time`, it will emit the :ref:`timeout` signal. -After a timer enters the tree, it can be manually started with :ref:`start()`. A timer node is also started automatically if :ref:`autostart` is ``true``. +After a timer enters the scene tree, it can be manually started with :ref:`start()`. A timer node is also started automatically if :ref:`autostart` is ``true``. Without requiring much code, a timer node can be added and configured in the editor. The :ref:`timeout` signal it emits can also be connected through the Node dock in the editor: @@ -32,7 +32,7 @@ Without requiring much code, a timer node can be added and configured in the edi \ **Note:** To create a one-shot timer without instantiating a node, use :ref:`SceneTree.create_timer()`. -\ **Note:** Timers are affected by :ref:`Engine.time_scale`. The higher the time scale, the sooner timers will end. How often a timer processes may depend on the framerate or :ref:`Engine.physics_ticks_per_second`. +\ **Note:** Timers are affected by :ref:`Engine.time_scale` unless :ref:`ignore_time_scale` is ``true``. The higher the time scale, the sooner timers will end. How often a timer processes may depend on the framerate or :ref:`Engine.physics_ticks_per_second`. .. rst-class:: classref-introduction-group @@ -204,7 +204,7 @@ If ``true``, the timer will stop after reaching the end. Otherwise, as by defaul - |void| **set_paused**\ (\ value\: :ref:`bool`\ ) - :ref:`bool` **is_paused**\ (\ ) -If ``true``, the timer is paused. A paused timer does not process until this property is set back to ``false``, even when :ref:`start()` is called. +If ``true``, the timer is paused. A paused timer does not process until this property is set back to ``false``, even when :ref:`start()` is called. See also :ref:`stop()`. .. rst-class:: classref-item-separator @@ -221,7 +221,7 @@ If ``true``, the timer is paused. A paused timer does not process until this pro - |void| **set_timer_process_callback**\ (\ value\: :ref:`TimerProcessCallback`\ ) - :ref:`TimerProcessCallback` **get_timer_process_callback**\ (\ ) -Specifies when the timer is updated during the main loop (see :ref:`TimerProcessCallback`). +Specifies when the timer is updated during the main loop. .. rst-class:: classref-item-separator @@ -287,7 +287,7 @@ Returns ``true`` if the timer is stopped or has not started. |void| **start**\ (\ time_sec\: :ref:`float` = -1\ ) :ref:`🔗` -Starts the timer, or resets the timer if it was started already. Fails if the timer is not inside the tree. If ``time_sec`` is greater than ``0``, this value is used for the :ref:`wait_time`. +Starts the timer, or resets the timer if it was started already. Fails if the timer is not inside the scene tree. If ``time_sec`` is greater than ``0``, this value is used for the :ref:`wait_time`. \ **Note:** This method does not resume a paused timer. See :ref:`paused`. @@ -301,9 +301,12 @@ Starts the timer, or resets the timer if it was started already. Fails if the ti |void| **stop**\ (\ ) :ref:`🔗` -Stops the timer. +Stops the timer. See also :ref:`paused`. Unlike :ref:`start()`, this can safely be called if the timer is not inside the scene tree. + +\ **Note:** Calling :ref:`stop()` does not emit the :ref:`timeout` signal, as the timer is not considered to have timed out. If this is desired, use ``$Timer.timeout.emit()`` after calling :ref:`stop()` to manually emit the signal. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_tlsoptions.rst b/classes/class_tlsoptions.rst index a02a42822..de863e153 100644 --- a/classes/class_tlsoptions.rst +++ b/classes/class_tlsoptions.rst @@ -31,7 +31,7 @@ Objects of this class cannot be instantiated directly, and one of the static met # Create a TLS client configuration which uses our custom trusted CA chain. var client_trusted_cas = load("res://my_trusted_cas.crt") var client_tls_options = TLSOptions.client(client_trusted_cas) - + # Create a TLS server configuration. var server_certs = load("res://my_server_cas.crt") var server_key = load("res://my_server_key.key") @@ -189,6 +189,7 @@ Creates a TLS server configuration using the provided ``key`` and ``certificate` \ **Note:** The ``certificate`` should include the full certificate chain up to the signing CA (certificates file can be concatenated using a general purpose text editor). .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_torusmesh.rst b/classes/class_torusmesh.rst index 3989092e8..f85dda9de 100644 --- a/classes/class_torusmesh.rst +++ b/classes/class_torusmesh.rst @@ -113,6 +113,7 @@ The number of edges each ring of the torus is constructed of. The number of slices the torus is constructed of. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_touchscreenbutton.rst b/classes/class_touchscreenbutton.rst index 598215729..6199157e9 100644 --- a/classes/class_touchscreenbutton.rst +++ b/classes/class_touchscreenbutton.rst @@ -283,7 +283,7 @@ The button's texture for the pressed state. - |void| **set_visibility_mode**\ (\ value\: :ref:`VisibilityMode`\ ) - :ref:`VisibilityMode` **get_visibility_mode**\ (\ ) -The button's visibility mode. See :ref:`VisibilityMode` for possible values. +The button's visibility mode. .. rst-class:: classref-section-separator @@ -303,6 +303,7 @@ Method Descriptions Returns ``true`` if this button is currently pressed. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_transform2d.rst b/classes/class_transform2d.rst index 9dc780281..871da509e 100644 --- a/classes/class_transform2d.rst +++ b/classes/class_transform2d.rst @@ -433,7 +433,7 @@ Returns the length of both :ref:`x` and :ref:`y` and :ref:`y`, index ``1`` is the same as :ref:`y`, and index ``2`` is the same as :ref:`origin`. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_transform3d.rst b/classes/class_transform3d.rst index 6917cee9f..1711c4ea0 100644 --- a/classes/class_transform3d.rst +++ b/classes/class_transform3d.rst @@ -654,6 +654,7 @@ Returns ``true`` if the components of both transforms are exactly equal. \ **Note:** Due to floating-point precision errors, consider using :ref:`is_equal_approx()` instead, which is more reliable. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_translation.rst b/classes/class_translation.rst index 606a7625c..9c8b725ca 100644 --- a/classes/class_translation.rst +++ b/classes/class_translation.rst @@ -30,6 +30,8 @@ Tutorials - :doc:`Internationalizing games <../tutorials/i18n/internationalizing_games>` +- :doc:`Localization using gettext <../tutorials/i18n/localization_using_gettext>` + - :doc:`Locales <../tutorials/i18n/locales>` .. rst-class:: classref-reftable-group @@ -153,6 +155,8 @@ Adds a message involving plural translation if nonexistent, followed by its tran An additional context could be used to specify the translation context or differentiate polysemic words. +\ **Note:** Plurals are only supported in :doc:`gettext-based translations (PO) <../tutorials/i18n/localization_using_gettext>`, not CSV. + .. rst-class:: classref-item-separator ---- @@ -215,6 +219,8 @@ Returns a message's translation involving plurals. The number ``n`` is the number or quantity of the plural object. It will be used to guide the translation system to fetch the correct plural form for the selected language. +\ **Note:** Plurals are only supported in :doc:`gettext-based translations (PO) <../tutorials/i18n/localization_using_gettext>`, not CSV. + .. rst-class:: classref-item-separator ---- @@ -228,6 +234,7 @@ The number ``n`` is the number or quantity of the plural object. It will be used Returns all the messages (translated text). .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_translationdomain.rst b/classes/class_translationdomain.rst index 9f52c1a1e..d3cda8473 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 @@ -343,6 +394,7 @@ Returns the current locale's translation for the given message, plural message a The number ``n`` is the number or quantity of the plural object. It will be used to guide the translation system to fetch the correct plural form for the selected language. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_translationserver.rst b/classes/class_translationserver.rst index 102d843a0..e6e197d9d 100644 --- a/classes/class_translationserver.rst +++ b/classes/class_translationserver.rst @@ -434,6 +434,7 @@ The number ``n`` is the number or quantity of the plural object. It will be used \ **Note:** This method always uses the main translation domain. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_tree.rst b/classes/class_tree.rst index 2ebe1f2f5..bedd7bcd8 100644 --- a/classes/class_tree.rst +++ b/classes/class_tree.rst @@ -203,6 +203,8 @@ Theme Properties +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+ | :ref:`Color` | :ref:`font_hovered_dimmed_color` | ``Color(0.875, 0.875, 0.875, 1)`` | +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+ + | :ref:`Color` | :ref:`font_hovered_selected_color` | ``Color(1, 1, 1, 1)`` | + +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+ | :ref:`Color` | :ref:`font_outline_color` | ``Color(0, 0, 0, 1)`` | +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+ | :ref:`Color` | :ref:`font_selected_color` | ``Color(1, 1, 1, 1)`` | @@ -313,6 +315,10 @@ Theme Properties +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+ | :ref:`StyleBox` | :ref:`hovered_dimmed` | | +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+ + | :ref:`StyleBox` | :ref:`hovered_selected` | | + +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+ + | :ref:`StyleBox` | :ref:`hovered_selected_focus` | | + +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+ | :ref:`StyleBox` | :ref:`panel` | | +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+ | :ref:`StyleBox` | :ref:`selected` | | @@ -437,7 +443,9 @@ Emitted when an item is double-clicked, or selected with a ``ui_accept`` input e **item_collapsed**\ (\ item\: :ref:`TreeItem`\ ) :ref:`🔗` -Emitted when an item is collapsed by a click on the folding arrow. +Emitted when an item is expanded or collapsed by clicking on the folding arrow or through code. + +\ **Note:** Despite its name, this signal is also emitted when an item is expanded. .. rst-class:: classref-item-separator @@ -1044,7 +1052,7 @@ Returns the currently edited item. Can be used with :ref:`item_edited("Tree").ItemEdited += OnTreeItemEdited; } - + public void OnTreeItemEdited() { GD.Print(GetNode("Tree").GetEdited()); // This item just got edited (e.g. checked). @@ -1399,7 +1407,7 @@ Text :ref:`Color` for a :ref:`TreeItem.CELL_MODE_CHECK` **font_hovered_color** = ``Color(0.95, 0.95, 0.95, 1)`` :ref:`🔗` -Text :ref:`Color` used when the item is hovered. +Text :ref:`Color` used when the item is hovered and not selected yet. .. rst-class:: classref-item-separator @@ -1417,6 +1425,18 @@ Text :ref:`Color` used when the item is hovered, while a button of ---- +.. _class_Tree_theme_color_font_hovered_selected_color: + +.. rst-class:: classref-themeproperty + +:ref:`Color` **font_hovered_selected_color** = ``Color(1, 1, 1, 1)`` :ref:`🔗` + +Text :ref:`Color` used when the item is hovered and selected. + +.. rst-class:: classref-item-separator + +---- + .. _class_Tree_theme_color_font_outline_color: .. rst-class:: classref-themeproperty @@ -2061,7 +2081,7 @@ The focused style for the **Tree**, drawn on top of everything. :ref:`StyleBox` **hovered** :ref:`🔗` -:ref:`StyleBox` for the item being hovered. +:ref:`StyleBox` for the item being hovered, but not selected. .. rst-class:: classref-item-separator @@ -2079,6 +2099,30 @@ The focused style for the **Tree**, drawn on top of everything. ---- +.. _class_Tree_theme_style_hovered_selected: + +.. rst-class:: classref-themeproperty + +:ref:`StyleBox` **hovered_selected** :ref:`🔗` + +:ref:`StyleBox` for the hovered and selected items, used when the **Tree** is not being focused. + +.. rst-class:: classref-item-separator + +---- + +.. _class_Tree_theme_style_hovered_selected_focus: + +.. rst-class:: classref-themeproperty + +:ref:`StyleBox` **hovered_selected_focus** :ref:`🔗` + +:ref:`StyleBox` for the hovered and selected items, used when the **Tree** is being focused. + +.. rst-class:: classref-item-separator + +---- + .. _class_Tree_theme_style_panel: .. rst-class:: classref-themeproperty @@ -2148,6 +2192,7 @@ Default :ref:`StyleBox` for the title button. :ref:`StyleBox` used when the title button is being pressed. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_treeitem.rst b/classes/class_treeitem.rst index 27611d641..f45f9e757 100644 --- a/classes/class_treeitem.rst +++ b/classes/class_treeitem.rst @@ -51,223 +51,229 @@ Methods .. table:: :widths: auto - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`add_button`\ (\ column\: :ref:`int`, button\: :ref:`Texture2D`, id\: :ref:`int` = -1, disabled\: :ref:`bool` = false, tooltip_text\: :ref:`String` = ""\ ) | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`add_child`\ (\ child\: :ref:`TreeItem`\ ) | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`call_recursive`\ (\ method\: :ref:`StringName`, ...\ ) |vararg| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`clear_buttons`\ (\ ) | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`clear_custom_bg_color`\ (\ column\: :ref:`int`\ ) | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`clear_custom_color`\ (\ column\: :ref:`int`\ ) | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`TreeItem` | :ref:`create_child`\ (\ index\: :ref:`int` = -1\ ) | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`deselect`\ (\ column\: :ref:`int`\ ) | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`erase_button`\ (\ column\: :ref:`int`, button_index\: :ref:`int`\ ) | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`AutoTranslateMode` | :ref:`get_auto_translate_mode`\ (\ column\: :ref:`int`\ ) |const| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`AutowrapMode` | :ref:`get_autowrap_mode`\ (\ column\: :ref:`int`\ ) |const| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Texture2D` | :ref:`get_button`\ (\ column\: :ref:`int`, button_index\: :ref:`int`\ ) |const| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`get_button_by_id`\ (\ column\: :ref:`int`, id\: :ref:`int`\ ) |const| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Color` | :ref:`get_button_color`\ (\ column\: :ref:`int`, id\: :ref:`int`\ ) |const| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`get_button_count`\ (\ column\: :ref:`int`\ ) |const| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`get_button_id`\ (\ column\: :ref:`int`, button_index\: :ref:`int`\ ) |const| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`String` | :ref:`get_button_tooltip_text`\ (\ column\: :ref:`int`, button_index\: :ref:`int`\ ) |const| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`TreeCellMode` | :ref:`get_cell_mode`\ (\ column\: :ref:`int`\ ) |const| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`TreeItem` | :ref:`get_child`\ (\ index\: :ref:`int`\ ) | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`get_child_count`\ (\ ) | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Array`\[:ref:`TreeItem`\] | :ref:`get_children`\ (\ ) | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Color` | :ref:`get_custom_bg_color`\ (\ column\: :ref:`int`\ ) |const| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Color` | :ref:`get_custom_color`\ (\ column\: :ref:`int`\ ) |const| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Callable` | :ref:`get_custom_draw_callback`\ (\ column\: :ref:`int`\ ) |const| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Font` | :ref:`get_custom_font`\ (\ column\: :ref:`int`\ ) |const| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`get_custom_font_size`\ (\ column\: :ref:`int`\ ) |const| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`get_expand_right`\ (\ column\: :ref:`int`\ ) |const| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`TreeItem` | :ref:`get_first_child`\ (\ ) |const| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Texture2D` | :ref:`get_icon`\ (\ column\: :ref:`int`\ ) |const| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`get_icon_max_width`\ (\ column\: :ref:`int`\ ) |const| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Color` | :ref:`get_icon_modulate`\ (\ column\: :ref:`int`\ ) |const| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Texture2D` | :ref:`get_icon_overlay`\ (\ column\: :ref:`int`\ ) |const| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Rect2` | :ref:`get_icon_region`\ (\ column\: :ref:`int`\ ) |const| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`get_index`\ (\ ) | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`String` | :ref:`get_language`\ (\ column\: :ref:`int`\ ) |const| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Variant` | :ref:`get_metadata`\ (\ column\: :ref:`int`\ ) |const| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`TreeItem` | :ref:`get_next`\ (\ ) |const| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`TreeItem` | :ref:`get_next_in_tree`\ (\ wrap\: :ref:`bool` = false\ ) | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`TreeItem` | :ref:`get_next_visible`\ (\ wrap\: :ref:`bool` = false\ ) | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`TreeItem` | :ref:`get_parent`\ (\ ) |const| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`TreeItem` | :ref:`get_prev`\ (\ ) | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`TreeItem` | :ref:`get_prev_in_tree`\ (\ wrap\: :ref:`bool` = false\ ) | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`TreeItem` | :ref:`get_prev_visible`\ (\ wrap\: :ref:`bool` = false\ ) | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`float` | :ref:`get_range`\ (\ column\: :ref:`int`\ ) |const| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Dictionary` | :ref:`get_range_config`\ (\ column\: :ref:`int`\ ) | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`StructuredTextParser` | :ref:`get_structured_text_bidi_override`\ (\ column\: :ref:`int`\ ) |const| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Array` | :ref:`get_structured_text_bidi_override_options`\ (\ column\: :ref:`int`\ ) |const| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`String` | :ref:`get_suffix`\ (\ column\: :ref:`int`\ ) |const| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`String` | :ref:`get_text`\ (\ column\: :ref:`int`\ ) |const| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`HorizontalAlignment` | :ref:`get_text_alignment`\ (\ column\: :ref:`int`\ ) |const| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`TextDirection` | :ref:`get_text_direction`\ (\ column\: :ref:`int`\ ) |const| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`OverrunBehavior` | :ref:`get_text_overrun_behavior`\ (\ column\: :ref:`int`\ ) |const| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`String` | :ref:`get_tooltip_text`\ (\ column\: :ref:`int`\ ) |const| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Tree` | :ref:`get_tree`\ (\ ) |const| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`is_any_collapsed`\ (\ only_visible\: :ref:`bool` = false\ ) | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`is_button_disabled`\ (\ column\: :ref:`int`, button_index\: :ref:`int`\ ) |const| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`is_checked`\ (\ column\: :ref:`int`\ ) |const| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`is_custom_set_as_button`\ (\ column\: :ref:`int`\ ) |const| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`is_edit_multiline`\ (\ column\: :ref:`int`\ ) |const| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`is_editable`\ (\ column\: :ref:`int`\ ) | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`is_indeterminate`\ (\ column\: :ref:`int`\ ) |const| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`is_selectable`\ (\ column\: :ref:`int`\ ) |const| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`is_selected`\ (\ column\: :ref:`int`\ ) | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`is_visible_in_tree`\ (\ ) |const| | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`move_after`\ (\ item\: :ref:`TreeItem`\ ) | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`move_before`\ (\ item\: :ref:`TreeItem`\ ) | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`propagate_check`\ (\ column\: :ref:`int`, emit_signal\: :ref:`bool` = true\ ) | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`remove_child`\ (\ child\: :ref:`TreeItem`\ ) | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`select`\ (\ column\: :ref:`int`\ ) | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`set_auto_translate_mode`\ (\ column\: :ref:`int`, mode\: :ref:`AutoTranslateMode`\ ) | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`set_autowrap_mode`\ (\ column\: :ref:`int`, autowrap_mode\: :ref:`AutowrapMode`\ ) | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`set_button`\ (\ column\: :ref:`int`, button_index\: :ref:`int`, button\: :ref:`Texture2D`\ ) | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`set_button_color`\ (\ column\: :ref:`int`, button_index\: :ref:`int`, color\: :ref:`Color`\ ) | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`set_button_disabled`\ (\ column\: :ref:`int`, button_index\: :ref:`int`, disabled\: :ref:`bool`\ ) | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`set_button_tooltip_text`\ (\ column\: :ref:`int`, button_index\: :ref:`int`, tooltip\: :ref:`String`\ ) | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`set_cell_mode`\ (\ column\: :ref:`int`, mode\: :ref:`TreeCellMode`\ ) | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`set_checked`\ (\ column\: :ref:`int`, checked\: :ref:`bool`\ ) | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`set_collapsed_recursive`\ (\ enable\: :ref:`bool`\ ) | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`set_custom_as_button`\ (\ column\: :ref:`int`, enable\: :ref:`bool`\ ) | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`set_custom_bg_color`\ (\ column\: :ref:`int`, color\: :ref:`Color`, just_outline\: :ref:`bool` = false\ ) | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`set_custom_color`\ (\ column\: :ref:`int`, color\: :ref:`Color`\ ) | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`set_custom_draw`\ (\ column\: :ref:`int`, object\: :ref:`Object`, callback\: :ref:`StringName`\ ) | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`set_custom_draw_callback`\ (\ column\: :ref:`int`, callback\: :ref:`Callable`\ ) | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`set_custom_font`\ (\ column\: :ref:`int`, font\: :ref:`Font`\ ) | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`set_custom_font_size`\ (\ column\: :ref:`int`, font_size\: :ref:`int`\ ) | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`set_edit_multiline`\ (\ column\: :ref:`int`, multiline\: :ref:`bool`\ ) | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`set_editable`\ (\ column\: :ref:`int`, enabled\: :ref:`bool`\ ) | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`set_expand_right`\ (\ column\: :ref:`int`, enable\: :ref:`bool`\ ) | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`set_icon`\ (\ column\: :ref:`int`, texture\: :ref:`Texture2D`\ ) | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`set_icon_max_width`\ (\ column\: :ref:`int`, width\: :ref:`int`\ ) | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`set_icon_modulate`\ (\ column\: :ref:`int`, modulate\: :ref:`Color`\ ) | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`set_icon_overlay`\ (\ column\: :ref:`int`, texture\: :ref:`Texture2D`\ ) | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`set_icon_region`\ (\ column\: :ref:`int`, region\: :ref:`Rect2`\ ) | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`set_indeterminate`\ (\ column\: :ref:`int`, indeterminate\: :ref:`bool`\ ) | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`set_language`\ (\ column\: :ref:`int`, language\: :ref:`String`\ ) | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`set_metadata`\ (\ column\: :ref:`int`, meta\: :ref:`Variant`\ ) | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`set_range`\ (\ column\: :ref:`int`, value\: :ref:`float`\ ) | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`set_range_config`\ (\ column\: :ref:`int`, min\: :ref:`float`, max\: :ref:`float`, step\: :ref:`float`, expr\: :ref:`bool` = false\ ) | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`set_selectable`\ (\ column\: :ref:`int`, selectable\: :ref:`bool`\ ) | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`set_structured_text_bidi_override`\ (\ column\: :ref:`int`, parser\: :ref:`StructuredTextParser`\ ) | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`set_structured_text_bidi_override_options`\ (\ column\: :ref:`int`, args\: :ref:`Array`\ ) | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`set_suffix`\ (\ column\: :ref:`int`, text\: :ref:`String`\ ) | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`set_text`\ (\ column\: :ref:`int`, text\: :ref:`String`\ ) | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`set_text_alignment`\ (\ column\: :ref:`int`, text_alignment\: :ref:`HorizontalAlignment`\ ) | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`set_text_direction`\ (\ column\: :ref:`int`, direction\: :ref:`TextDirection`\ ) | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`set_text_overrun_behavior`\ (\ column\: :ref:`int`, overrun_behavior\: :ref:`OverrunBehavior`\ ) | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`set_tooltip_text`\ (\ column\: :ref:`int`, tooltip\: :ref:`String`\ ) | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`uncollapse_tree`\ (\ ) | - +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`add_button`\ (\ column\: :ref:`int`, button\: :ref:`Texture2D`, id\: :ref:`int` = -1, disabled\: :ref:`bool` = false, tooltip_text\: :ref:`String` = "", description\: :ref:`String` = ""\ ) | + +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`add_child`\ (\ child\: :ref:`TreeItem`\ ) | + +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`call_recursive`\ (\ method\: :ref:`StringName`, ...\ ) |vararg| | + +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`clear_buttons`\ (\ ) | + +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`clear_custom_bg_color`\ (\ column\: :ref:`int`\ ) | + +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`clear_custom_color`\ (\ column\: :ref:`int`\ ) | + +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`TreeItem` | :ref:`create_child`\ (\ index\: :ref:`int` = -1\ ) | + +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`deselect`\ (\ column\: :ref:`int`\ ) | + +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`erase_button`\ (\ column\: :ref:`int`, button_index\: :ref:`int`\ ) | + +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`AutoTranslateMode` | :ref:`get_auto_translate_mode`\ (\ column\: :ref:`int`\ ) |const| | + +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`AutowrapMode` | :ref:`get_autowrap_mode`\ (\ column\: :ref:`int`\ ) |const| | + +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Texture2D` | :ref:`get_button`\ (\ column\: :ref:`int`, button_index\: :ref:`int`\ ) |const| | + +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`get_button_by_id`\ (\ column\: :ref:`int`, id\: :ref:`int`\ ) |const| | + +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Color` | :ref:`get_button_color`\ (\ column\: :ref:`int`, id\: :ref:`int`\ ) |const| | + +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`get_button_count`\ (\ column\: :ref:`int`\ ) |const| | + +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`get_button_id`\ (\ column\: :ref:`int`, button_index\: :ref:`int`\ ) |const| | + +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`get_button_tooltip_text`\ (\ column\: :ref:`int`, button_index\: :ref:`int`\ ) |const| | + +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`TreeCellMode` | :ref:`get_cell_mode`\ (\ column\: :ref:`int`\ ) |const| | + +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`TreeItem` | :ref:`get_child`\ (\ index\: :ref:`int`\ ) | + +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`get_child_count`\ (\ ) | + +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Array`\[:ref:`TreeItem`\] | :ref:`get_children`\ (\ ) | + +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Color` | :ref:`get_custom_bg_color`\ (\ column\: :ref:`int`\ ) |const| | + +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Color` | :ref:`get_custom_color`\ (\ column\: :ref:`int`\ ) |const| | + +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Callable` | :ref:`get_custom_draw_callback`\ (\ column\: :ref:`int`\ ) |const| | + +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Font` | :ref:`get_custom_font`\ (\ column\: :ref:`int`\ ) |const| | + +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`get_custom_font_size`\ (\ column\: :ref:`int`\ ) |const| | + +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`get_description`\ (\ column\: :ref:`int`\ ) |const| | + +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`get_expand_right`\ (\ column\: :ref:`int`\ ) |const| | + +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`TreeItem` | :ref:`get_first_child`\ (\ ) |const| | + +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Texture2D` | :ref:`get_icon`\ (\ column\: :ref:`int`\ ) |const| | + +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`get_icon_max_width`\ (\ column\: :ref:`int`\ ) |const| | + +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Color` | :ref:`get_icon_modulate`\ (\ column\: :ref:`int`\ ) |const| | + +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Texture2D` | :ref:`get_icon_overlay`\ (\ column\: :ref:`int`\ ) |const| | + +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Rect2` | :ref:`get_icon_region`\ (\ column\: :ref:`int`\ ) |const| | + +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`get_index`\ (\ ) | + +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`get_language`\ (\ column\: :ref:`int`\ ) |const| | + +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Variant` | :ref:`get_metadata`\ (\ column\: :ref:`int`\ ) |const| | + +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`TreeItem` | :ref:`get_next`\ (\ ) |const| | + +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`TreeItem` | :ref:`get_next_in_tree`\ (\ wrap\: :ref:`bool` = false\ ) | + +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`TreeItem` | :ref:`get_next_visible`\ (\ wrap\: :ref:`bool` = false\ ) | + +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`TreeItem` | :ref:`get_parent`\ (\ ) |const| | + +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`TreeItem` | :ref:`get_prev`\ (\ ) | + +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`TreeItem` | :ref:`get_prev_in_tree`\ (\ wrap\: :ref:`bool` = false\ ) | + +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`TreeItem` | :ref:`get_prev_visible`\ (\ wrap\: :ref:`bool` = false\ ) | + +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`get_range`\ (\ column\: :ref:`int`\ ) |const| | + +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Dictionary` | :ref:`get_range_config`\ (\ column\: :ref:`int`\ ) | + +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`StructuredTextParser` | :ref:`get_structured_text_bidi_override`\ (\ column\: :ref:`int`\ ) |const| | + +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Array` | :ref:`get_structured_text_bidi_override_options`\ (\ column\: :ref:`int`\ ) |const| | + +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`get_suffix`\ (\ column\: :ref:`int`\ ) |const| | + +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`get_text`\ (\ column\: :ref:`int`\ ) |const| | + +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`HorizontalAlignment` | :ref:`get_text_alignment`\ (\ column\: :ref:`int`\ ) |const| | + +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`TextDirection` | :ref:`get_text_direction`\ (\ column\: :ref:`int`\ ) |const| | + +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`OverrunBehavior` | :ref:`get_text_overrun_behavior`\ (\ column\: :ref:`int`\ ) |const| | + +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`get_tooltip_text`\ (\ column\: :ref:`int`\ ) |const| | + +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Tree` | :ref:`get_tree`\ (\ ) |const| | + +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`is_any_collapsed`\ (\ only_visible\: :ref:`bool` = false\ ) | + +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`is_button_disabled`\ (\ column\: :ref:`int`, button_index\: :ref:`int`\ ) |const| | + +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`is_checked`\ (\ column\: :ref:`int`\ ) |const| | + +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`is_custom_set_as_button`\ (\ column\: :ref:`int`\ ) |const| | + +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`is_edit_multiline`\ (\ column\: :ref:`int`\ ) |const| | + +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`is_editable`\ (\ column\: :ref:`int`\ ) | + +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`is_indeterminate`\ (\ column\: :ref:`int`\ ) |const| | + +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`is_selectable`\ (\ column\: :ref:`int`\ ) |const| | + +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`is_selected`\ (\ column\: :ref:`int`\ ) | + +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`is_visible_in_tree`\ (\ ) |const| | + +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`move_after`\ (\ item\: :ref:`TreeItem`\ ) | + +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`move_before`\ (\ item\: :ref:`TreeItem`\ ) | + +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`propagate_check`\ (\ column\: :ref:`int`, emit_signal\: :ref:`bool` = true\ ) | + +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`remove_child`\ (\ child\: :ref:`TreeItem`\ ) | + +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`select`\ (\ column\: :ref:`int`\ ) | + +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_auto_translate_mode`\ (\ column\: :ref:`int`, mode\: :ref:`AutoTranslateMode`\ ) | + +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_autowrap_mode`\ (\ column\: :ref:`int`, autowrap_mode\: :ref:`AutowrapMode`\ ) | + +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_button`\ (\ column\: :ref:`int`, button_index\: :ref:`int`, button\: :ref:`Texture2D`\ ) | + +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_button_color`\ (\ column\: :ref:`int`, button_index\: :ref:`int`, color\: :ref:`Color`\ ) | + +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_button_description`\ (\ column\: :ref:`int`, button_index\: :ref:`int`, description\: :ref:`String`\ ) | + +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_button_disabled`\ (\ column\: :ref:`int`, button_index\: :ref:`int`, disabled\: :ref:`bool`\ ) | + +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_button_tooltip_text`\ (\ column\: :ref:`int`, button_index\: :ref:`int`, tooltip\: :ref:`String`\ ) | + +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_cell_mode`\ (\ column\: :ref:`int`, mode\: :ref:`TreeCellMode`\ ) | + +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_checked`\ (\ column\: :ref:`int`, checked\: :ref:`bool`\ ) | + +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_collapsed_recursive`\ (\ enable\: :ref:`bool`\ ) | + +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_custom_as_button`\ (\ column\: :ref:`int`, enable\: :ref:`bool`\ ) | + +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_custom_bg_color`\ (\ column\: :ref:`int`, color\: :ref:`Color`, just_outline\: :ref:`bool` = false\ ) | + +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_custom_color`\ (\ column\: :ref:`int`, color\: :ref:`Color`\ ) | + +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_custom_draw`\ (\ column\: :ref:`int`, object\: :ref:`Object`, callback\: :ref:`StringName`\ ) | + +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_custom_draw_callback`\ (\ column\: :ref:`int`, callback\: :ref:`Callable`\ ) | + +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_custom_font`\ (\ column\: :ref:`int`, font\: :ref:`Font`\ ) | + +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_custom_font_size`\ (\ column\: :ref:`int`, font_size\: :ref:`int`\ ) | + +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_description`\ (\ column\: :ref:`int`, description\: :ref:`String`\ ) | + +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_edit_multiline`\ (\ column\: :ref:`int`, multiline\: :ref:`bool`\ ) | + +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_editable`\ (\ column\: :ref:`int`, enabled\: :ref:`bool`\ ) | + +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_expand_right`\ (\ column\: :ref:`int`, enable\: :ref:`bool`\ ) | + +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_icon`\ (\ column\: :ref:`int`, texture\: :ref:`Texture2D`\ ) | + +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_icon_max_width`\ (\ column\: :ref:`int`, width\: :ref:`int`\ ) | + +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_icon_modulate`\ (\ column\: :ref:`int`, modulate\: :ref:`Color`\ ) | + +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_icon_overlay`\ (\ column\: :ref:`int`, texture\: :ref:`Texture2D`\ ) | + +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_icon_region`\ (\ column\: :ref:`int`, region\: :ref:`Rect2`\ ) | + +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_indeterminate`\ (\ column\: :ref:`int`, indeterminate\: :ref:`bool`\ ) | + +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_language`\ (\ column\: :ref:`int`, language\: :ref:`String`\ ) | + +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_metadata`\ (\ column\: :ref:`int`, meta\: :ref:`Variant`\ ) | + +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_range`\ (\ column\: :ref:`int`, value\: :ref:`float`\ ) | + +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_range_config`\ (\ column\: :ref:`int`, min\: :ref:`float`, max\: :ref:`float`, step\: :ref:`float`, expr\: :ref:`bool` = false\ ) | + +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_selectable`\ (\ column\: :ref:`int`, selectable\: :ref:`bool`\ ) | + +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_structured_text_bidi_override`\ (\ column\: :ref:`int`, parser\: :ref:`StructuredTextParser`\ ) | + +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_structured_text_bidi_override_options`\ (\ column\: :ref:`int`, args\: :ref:`Array`\ ) | + +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_suffix`\ (\ column\: :ref:`int`, text\: :ref:`String`\ ) | + +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_text`\ (\ column\: :ref:`int`, text\: :ref:`String`\ ) | + +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_text_alignment`\ (\ column\: :ref:`int`, text_alignment\: :ref:`HorizontalAlignment`\ ) | + +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_text_direction`\ (\ column\: :ref:`int`, direction\: :ref:`TextDirection`\ ) | + +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_text_overrun_behavior`\ (\ column\: :ref:`int`, overrun_behavior\: :ref:`OverrunBehavior`\ ) | + +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_tooltip_text`\ (\ column\: :ref:`int`, tooltip\: :ref:`String`\ ) | + +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`uncollapse_tree`\ (\ ) | + +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ .. rst-class:: classref-section-separator @@ -416,9 +422,9 @@ Method Descriptions .. rst-class:: classref-method -|void| **add_button**\ (\ column\: :ref:`int`, button\: :ref:`Texture2D`, id\: :ref:`int` = -1, disabled\: :ref:`bool` = false, tooltip_text\: :ref:`String` = ""\ ) :ref:`🔗` +|void| **add_button**\ (\ column\: :ref:`int`, button\: :ref:`Texture2D`, id\: :ref:`int` = -1, disabled\: :ref:`bool` = false, tooltip_text\: :ref:`String` = "", description\: :ref:`String` = ""\ ) :ref:`🔗` -Adds a button with :ref:`Texture2D` ``button`` to the end of the cell at column ``column``. The ``id`` is used to identify the button in the according :ref:`Tree.button_clicked` signal and can be different from the buttons index. If not specified, the next available index is used, which may be retrieved by calling :ref:`get_button_count()` immediately before this method. Optionally, the button can be ``disabled`` and have a ``tooltip_text``. +Adds a button with :ref:`Texture2D` ``button`` to the end of the cell at column ``column``. The ``id`` is used to identify the button in the according :ref:`Tree.button_clicked` signal and can be different from the buttons index. If not specified, the next available index is used, which may be retrieved by calling :ref:`get_button_count()` immediately before this method. Optionally, the button can be ``disabled`` and have a ``tooltip_text``. ``description`` is used as the button description for assistive apps. .. rst-class:: classref-item-separator @@ -728,6 +734,18 @@ Returns custom font size used to draw text in the column ``column``. ---- +.. _class_TreeItem_method_get_description: + +.. rst-class:: classref-method + +:ref:`String` **get_description**\ (\ column\: :ref:`int`\ ) |const| :ref:`🔗` + +Returns the given column's description for assistive apps. + +.. rst-class:: classref-item-separator + +---- + .. _class_TreeItem_method_get_expand_right: .. rst-class:: classref-method @@ -1310,6 +1328,18 @@ Sets the given column's button color at index ``button_index`` to ``color``. ---- +.. _class_TreeItem_method_set_button_description: + +.. rst-class:: classref-method + +|void| **set_button_description**\ (\ column\: :ref:`int`, button_index\: :ref:`int`, description\: :ref:`String`\ ) :ref:`🔗` + +Sets the given column's button description at index ``button_index`` for assistive apps. + +.. rst-class:: classref-item-separator + +---- + .. _class_TreeItem_method_set_button_disabled: .. rst-class:: classref-method @@ -1340,7 +1370,7 @@ Sets the tooltip text for the button at index ``button_index`` in the given ``co |void| **set_cell_mode**\ (\ column\: :ref:`int`, mode\: :ref:`TreeCellMode`\ ) :ref:`🔗` -Sets the given column's cell mode to ``mode``. This determines how the cell is displayed and edited. See :ref:`TreeCellMode` constants for details. +Sets the given column's cell mode to ``mode``. This determines how the cell is displayed and edited. .. rst-class:: classref-item-separator @@ -1460,6 +1490,18 @@ Sets custom font size used to draw text in the given ``column``. ---- +.. _class_TreeItem_method_set_description: + +.. rst-class:: classref-method + +|void| **set_description**\ (\ column\: :ref:`int`, description\: :ref:`String`\ ) :ref:`🔗` + +Sets the given column's description for assistive apps. + +.. rst-class:: classref-item-separator + +---- + .. _class_TreeItem_method_set_edit_multiline: .. rst-class:: classref-method @@ -1688,7 +1730,7 @@ Sets the given column's text value. |void| **set_text_alignment**\ (\ column\: :ref:`int`, text_alignment\: :ref:`HorizontalAlignment`\ ) :ref:`🔗` -Sets the given column's text alignment. See :ref:`HorizontalAlignment` for possible values. +Sets the given column's text alignment to ``text_alignment``. .. rst-class:: classref-item-separator @@ -1739,6 +1781,7 @@ Sets the given column's tooltip text. Uncollapses all **TreeItem**\ s necessary to reveal this **TreeItem**, i.e. all ancestor **TreeItem**\ s. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_trianglemesh.rst b/classes/class_trianglemesh.rst index 3b6844f63..80a67938a 100644 --- a/classes/class_trianglemesh.rst +++ b/classes/class_trianglemesh.rst @@ -12,16 +12,120 @@ TriangleMesh **Inherits:** :ref:`RefCounted` **<** :ref:`Object` -Internal mesh type. +Triangle geometry for efficient, physicsless intersection queries. .. rst-class:: classref-introduction-group Description ----------- -Mesh type used internally for collision calculations. +Creates a bounding volume hierarchy (BVH) tree structure around triangle geometry. + +The triangle BVH tree can be used for efficient intersection queries without involving a physics engine. + +For example, this can be used in editor tools to select objects with complex shapes based on the mouse cursor position. + +\ **Performance:** Creating the BVH tree for complex geometry is a slow process and best done in a background thread. + +.. rst-class:: classref-reftable-group + +Methods +------- + +.. table:: + :widths: auto + + +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`create_from_faces`\ (\ faces\: :ref:`PackedVector3Array`\ ) | + +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`PackedVector3Array` | :ref:`get_faces`\ (\ ) |const| | + +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Dictionary` | :ref:`intersect_ray`\ (\ begin\: :ref:`Vector3`, dir\: :ref:`Vector3`\ ) |const| | + +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Dictionary` | :ref:`intersect_segment`\ (\ begin\: :ref:`Vector3`, end\: :ref:`Vector3`\ ) |const| | + +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------+ + +.. rst-class:: classref-section-separator + +---- + +.. rst-class:: classref-descriptions-group + +Method Descriptions +------------------- + +.. _class_TriangleMesh_method_create_from_faces: + +.. rst-class:: classref-method + +:ref:`bool` **create_from_faces**\ (\ faces\: :ref:`PackedVector3Array`\ ) :ref:`🔗` + +Creates the BVH tree from an array of faces. Each 3 vertices of the input ``faces`` array represent one triangle (face). + +Returns ``true`` if the tree is successfully built, ``false`` otherwise. + +.. rst-class:: classref-item-separator + +---- + +.. _class_TriangleMesh_method_get_faces: + +.. rst-class:: classref-method + +:ref:`PackedVector3Array` **get_faces**\ (\ ) |const| :ref:`🔗` + +Returns a copy of the geometry faces. Each 3 vertices of the array represent one triangle (face). + +.. rst-class:: classref-item-separator + +---- + +.. _class_TriangleMesh_method_intersect_ray: + +.. rst-class:: classref-method + +:ref:`Dictionary` **intersect_ray**\ (\ begin\: :ref:`Vector3`, dir\: :ref:`Vector3`\ ) |const| :ref:`🔗` + +Tests for intersection with a ray starting at ``begin`` and facing ``dir`` and extending toward infinity. + +If an intersection with a triangle happens, returns a :ref:`Dictionary` with the following fields: + +\ ``position``: The position on the intersected triangle. + +\ ``normal``: The normal of the intersected triangle. + +\ ``face_index``: The index of the intersected triangle. + +Returns an empty :ref:`Dictionary` if no intersection happens. + +See also :ref:`intersect_segment()`, which is similar but uses a finite-length segment. + +.. rst-class:: classref-item-separator + +---- + +.. _class_TriangleMesh_method_intersect_segment: + +.. rst-class:: classref-method + +:ref:`Dictionary` **intersect_segment**\ (\ begin\: :ref:`Vector3`, end\: :ref:`Vector3`\ ) |const| :ref:`🔗` + +Tests for intersection with a segment going from ``begin`` to ``end``. + +If an intersection with a triangle happens returns a :ref:`Dictionary` with the following fields: + +\ ``position``: The position on the intersected triangle. + +\ ``normal``: The normal of the intersected triangle. + +\ ``face_index``: The index of the intersected triangle. + +Returns an empty :ref:`Dictionary` if no intersection happens. + +See also :ref:`intersect_ray()`, which is similar but uses an infinite-length ray. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` diff --git a/classes/class_tubetrailmesh.rst b/classes/class_tubetrailmesh.rst index 1c21bec45..471882e2d 100644 --- a/classes/class_tubetrailmesh.rst +++ b/classes/class_tubetrailmesh.rst @@ -200,6 +200,7 @@ The number of rings in a section. The :ref:`curve`\ s to the * .. code-tab:: gdscript var tween = get_tree().create_tween() - tween.tween_property($Sprite, "modulate", Color.RED, 1) - tween.tween_property($Sprite, "scale", Vector2(), 1) + tween.tween_property($Sprite, "modulate", Color.RED, 1.0) + tween.tween_property($Sprite, "scale", Vector2(), 1.0) tween.tween_callback($Sprite.queue_free) .. code-tab:: csharp @@ -56,8 +56,8 @@ When a :ref:`Tweener` is created with one of the ``tween_*`` meth .. code-tab:: gdscript var tween = get_tree().create_tween() - tween.tween_property($Sprite, "modulate", Color.RED, 1).set_trans(Tween.TRANS_SINE) - tween.tween_property($Sprite, "scale", Vector2(), 1).set_trans(Tween.TRANS_BOUNCE) + tween.tween_property($Sprite, "modulate", Color.RED, 1.0).set_trans(Tween.TRANS_SINE) + tween.tween_property($Sprite, "scale", Vector2(), 1.0).set_trans(Tween.TRANS_BOUNCE) tween.tween_callback($Sprite.queue_free) .. code-tab:: csharp @@ -77,8 +77,8 @@ Most of the **Tween** methods can be chained this way too. In the following exam .. code-tab:: gdscript var tween = get_tree().create_tween().bind_node(self).set_trans(Tween.TRANS_ELASTIC) - tween.tween_property($Sprite, "modulate", Color.RED, 1) - tween.tween_property($Sprite, "scale", Vector2(), 1) + tween.tween_property($Sprite, "modulate", Color.RED, 1.0) + tween.tween_property($Sprite, "scale", Vector2(), 1.0) tween.tween_callback($Sprite.queue_free) .. code-tab:: csharp @@ -99,7 +99,7 @@ Another interesting use for **Tween**\ s is animating arbitrary sets of objects: var tween = create_tween() for sprite in get_children(): - tween.tween_property(sprite, "position", Vector2(0, 0), 1) + tween.tween_property(sprite, "position", Vector2(0, 0), 1.0) .. code-tab:: csharp @@ -109,7 +109,7 @@ Another interesting use for **Tween**\ s is animating arbitrary sets of objects: -In the example above, all children of a node are moved one after another to position (0, 0). +In the example above, all children of a node are moved one after another to position ``(0, 0)``. You should avoid using more than one **Tween** per object's property. If two or more tweens animate one property at the same time, the last one created will take priority and assign the final value. If you want to interrupt and restart an animation, consider assigning the **Tween** to a variable: @@ -127,7 +127,7 @@ You should avoid using more than one **Tween** per object's property. If two or .. code-tab:: csharp private Tween _tween; - + public void Animate() { if (_tween != null) @@ -749,7 +749,7 @@ If ``parallel`` is ``true``, the :ref:`Tweener`\ s appended after :ref:`Tween` **set_pause_mode**\ (\ mode\: :ref:`TweenPauseMode`\ ) :ref:`🔗` -Determines the behavior of the **Tween** when the :ref:`SceneTree` is paused. Check :ref:`TweenPauseMode` for options. +Determines the behavior of the **Tween** when the :ref:`SceneTree` is paused. Default value is :ref:`TWEEN_PAUSE_BOUND`. @@ -817,14 +817,14 @@ Stops the tweening and resets the **Tween** to its initial state. This will not :: var tween = create_tween() - + # Will move from 0 to 500 over 1 second. position.x = 0.0 tween.tween_property(self, "position:x", 500, 1.0) - + # Will be at (about) 250 when the timer finishes. await get_tree().create_timer(0.5).timeout - + # Will now move from (about) 250 to 500 over 1 second, # thus at half the speed as before. tween.stop() @@ -852,7 +852,7 @@ Creates and appends a :ref:`CallbackTweener`. This method .. code-tab:: gdscript var tween = get_tree().create_tween().set_loops() - tween.tween_callback(shoot).set_delay(1) + tween.tween_callback(shoot).set_delay(1.0) .. code-tab:: csharp @@ -920,10 +920,10 @@ Creates and appends an :ref:`IntervalTweener`. This metho .. code-tab:: gdscript var tween = create_tween().set_loops() - tween.tween_property($Sprite, "position:x", 200.0, 1).as_relative() + tween.tween_property($Sprite, "position:x", 200.0, 1.0).as_relative() tween.tween_callback(jump) tween.tween_interval(2) - tween.tween_property($Sprite, "position:x", -200.0, 1).as_relative() + tween.tween_property($Sprite, "position:x", -200.0, 1.0).as_relative() tween.tween_callback(jump) tween.tween_interval(2) @@ -959,7 +959,7 @@ Creates and appends a :ref:`MethodTweener`. This method is .. code-tab:: gdscript var tween = create_tween() - tween.tween_method(look_at.bind(Vector3.UP), Vector3(-1, 0, -1), Vector3(1, 0, -1), 1) # The look_at() method takes up vector as second argument. + tween.tween_method(look_at.bind(Vector3.UP), Vector3(-1, 0, -1), Vector3(1, 0, -1), 1.0) # The look_at() method takes up vector as second argument. .. code-tab:: csharp @@ -977,8 +977,8 @@ Creates and appends a :ref:`MethodTweener`. This method is func _ready(): var tween = create_tween() - tween.tween_method(set_label_text, 0, 10, 1).set_delay(1) - + tween.tween_method(set_label_text, 0, 10, 1.0).set_delay(1.0) + func set_label_text(value: int): $Label.text = "Counting " + str(value) @@ -987,11 +987,11 @@ Creates and appends a :ref:`MethodTweener`. This method is public override void _Ready() { base._Ready(); - + Tween tween = CreateTween(); tween.TweenMethod(Callable.From(SetLabelText), 0.0f, 10.0f, 1.0f).SetDelay(1.0f); } - + private void SetLabelText(int value) { GetNode -Then use the following command to re-sign the editor:: +Then use the following command to re-sign the editor: + +:: codesign -s - --deep --force --options=runtime --entitlements ./editor.entitlements ./path/to/Godot.app diff --git a/contributing/development/debugging/using_cpp_profilers.rst b/engine_details/development/debugging/using_cpp_profilers.rst similarity index 100% rename from contributing/development/debugging/using_cpp_profilers.rst rename to engine_details/development/debugging/using_cpp_profilers.rst diff --git a/contributing/development/debugging/using_sanitizers.rst b/engine_details/development/debugging/using_sanitizers.rst similarity index 100% rename from contributing/development/debugging/using_sanitizers.rst rename to engine_details/development/debugging/using_sanitizers.rst diff --git a/contributing/development/debugging/vulkan/index.rst b/engine_details/development/debugging/vulkan/index.rst similarity index 100% rename from contributing/development/debugging/vulkan/index.rst rename to engine_details/development/debugging/vulkan/index.rst diff --git a/contributing/development/debugging/vulkan/vulkan_validation_layers.rst b/engine_details/development/debugging/vulkan/vulkan_validation_layers.rst similarity index 99% rename from contributing/development/debugging/vulkan/vulkan_validation_layers.rst rename to engine_details/development/debugging/vulkan/vulkan_validation_layers.rst index ad9b49260..eced5343f 100644 --- a/contributing/development/debugging/vulkan/vulkan_validation_layers.rst +++ b/engine_details/development/debugging/vulkan/vulkan_validation_layers.rst @@ -164,7 +164,9 @@ Copy libraries Copy libraries from ``Vulkan-ValidationLayers/build-android/libs`` to ``godot/platform/android/java/app/libs/debug/vulkan_validation_layers``. -Your Godot source directory tree should look like on the example below:: +Your Godot source directory tree should look like on the example below: + +:: godot |-- platform diff --git a/contributing/development/handling_compatibility_breakages.rst b/engine_details/development/handling_compatibility_breakages.rst similarity index 98% rename from contributing/development/handling_compatibility_breakages.rst rename to engine_details/development/handling_compatibility_breakages.rst index 3850b6f75..57475624f 100644 --- a/contributing/development/handling_compatibility_breakages.rst +++ b/engine_details/development/handling_compatibility_breakages.rst @@ -44,7 +44,7 @@ the code, usually placed next to ``_bind_methods()``: static void _bind_compatibility_methods(); #endif -They should start with a ``_`` to indicate that they are internal, and end with ``_bind_compat_`` followed by the PR number +They should start with an ``_`` to indicate that they are internal, and end with ``_bind_compat_`` followed by the PR number that introduced the change (``88047`` in this example). These compatibility methods need to be implemented in a dedicated file, like ``core/math/a_star_grid_2d.compat.inc`` in this case: diff --git a/engine_details/development/index.rst b/engine_details/development/index.rst new file mode 100644 index 000000000..3acfc62ee --- /dev/null +++ b/engine_details/development/index.rst @@ -0,0 +1,19 @@ +:allow_comments: False + +.. _doc_contributing_to_the_engine: + +Engine development +================== + +The guides below explain how to work on the engine's codebase. +If you plan to contribute to the engine, please make sure to also read the +`contribution guidelines `__. + +.. toctree:: + :maxdepth: 1 + :name: toc-contributing-to-the-engine-environment + + configuring_an_ide/index + compiling/index + debugging/index + handling_compatibility_breakages diff --git a/contributing/development/editor/creating_icons.rst b/engine_details/editor/creating_icons.rst similarity index 90% rename from contributing/development/editor/creating_icons.rst rename to engine_details/editor/creating_icons.rst index 2626e0afb..2006fac3b 100644 --- a/contributing/development/editor/creating_icons.rst +++ b/engine_details/editor/creating_icons.rst @@ -43,12 +43,17 @@ This is to ensure the icon always displays with a sufficient contrast rate. Try to restrict your icon's color palette to colors found in the list above. Otherwise, your icon may become difficult to read on a light background. +.. note:: + To enable color conversion for light editor themes: + 1. :ui:`Import > Import As > Texture2D` + 2. Set ``editor/convert_colors_with_editor_theme`` to ``true`` + Icon optimization ~~~~~~~~~~~~~~~~~ Because the editor renders SVGs once at load time, they need to be small in size so they can be efficiently parsed. When the -:ref:`pre-commit hook ` runs, it automatically optimizes +`pre-commit hook `__ runs, it automatically optimizes the SVG using `svgo `_. .. note:: @@ -86,4 +91,4 @@ If icons don't appear in the editor, make sure that: References ~~~~~~~~~~ -- `editor/icons `__ +- `editor/icons `__ \ No newline at end of file diff --git a/engine_details/editor/index.rst b/engine_details/editor/index.rst new file mode 100644 index 000000000..5051e37a9 --- /dev/null +++ b/engine_details/editor/index.rst @@ -0,0 +1,15 @@ +:allow_comments: False + +Editor development +================== + +This section documents how to work with the source code of the Godot editor. +When contributing to the Godot engine, you should also read the +`editor style guide `__. + +.. toctree:: + :maxdepth: 1 + :name: toc-devel-editor + + introduction_to_editor_development + creating_icons diff --git a/contributing/development/editor/introduction_to_editor_development.rst b/engine_details/editor/introduction_to_editor_development.rst similarity index 99% rename from contributing/development/editor/introduction_to_editor_development.rst rename to engine_details/editor/introduction_to_editor_development.rst index f5d23b084..031f32334 100644 --- a/contributing/development/editor/introduction_to_editor_development.rst +++ b/engine_details/editor/introduction_to_editor_development.rst @@ -85,4 +85,4 @@ Development tips To iterate quickly on the editor, we recommend to set up a test project and :ref:`open it from the command line ` after compiling the editor. This way, you don't have to go through the Project Manager every -time you start Godot. +time you start Godot. \ No newline at end of file diff --git a/contributing/development/file_formats/gdscript_grammar.rst b/engine_details/file_formats/gdscript_grammar.rst similarity index 100% rename from contributing/development/file_formats/gdscript_grammar.rst rename to engine_details/file_formats/gdscript_grammar.rst diff --git a/contributing/development/file_formats/index.rst b/engine_details/file_formats/index.rst similarity index 100% rename from contributing/development/file_formats/index.rst rename to engine_details/file_formats/index.rst diff --git a/contributing/development/file_formats/tscn.rst b/engine_details/file_formats/tscn.rst similarity index 100% rename from contributing/development/file_formats/tscn.rst rename to engine_details/file_formats/tscn.rst diff --git a/getting_started/first_2d_game/04.creating_the_enemy.rst b/getting_started/first_2d_game/04.creating_the_enemy.rst index 3260477ae..9f50b4b87 100644 --- a/getting_started/first_2d_game/04.creating_the_enemy.rst +++ b/getting_started/first_2d_game/04.creating_the_enemy.rst @@ -22,7 +22,9 @@ Click Scene -> New Scene from the top menu and add the following nodes: - :ref:`VisibleOnScreenNotifier2D ` Don't forget to set the children so they can't be selected, like you did with -the Player scene. +the Player scene. This is done by selecting the parent node (``RigidBody2D``) in the +Scene tree dock, then using the :button:`Group` button at the top of the 2D editor +(or pressing :kbd:`Ctrl + G`). Select the ``Mob`` node and set its ``Gravity Scale`` property in the :ref:`RigidBody2D ` @@ -102,9 +104,9 @@ First, we get the list of animation names from the AnimatedSprite2D's ``sprite_f property. This returns an Array containing all three animation names: ``["walk", "swim", "fly"]``. -In the GDScript code, we use the :ref:`Array.pick_random ` method -to select one of these animation names at random. Meanwhile, in the C# code, we pick a random number -between ``0`` and ``2`` to select one of these names from the list (array indices start at ``0``). The +In the GDScript code, we use the :ref:`Array.pick_random ` method +to select one of these animation names at random. Meanwhile, in the C# code, we pick a random number +between ``0`` and ``2`` to select one of these names from the list (array indices start at ``0``). The expression ``GD.Randi() % n`` selects a random integer between ``0`` and ``n-1``. Finally, we call ``play()`` to start playing the chosen animation. diff --git a/getting_started/first_2d_game/img/new_spriteframes.webp b/getting_started/first_2d_game/img/new_spriteframes.webp index 2b0b052a4..3881d3797 100644 Binary files a/getting_started/first_2d_game/img/new_spriteframes.webp and b/getting_started/first_2d_game/img/new_spriteframes.webp differ diff --git a/getting_started/first_3d_game/01.game_setup.rst b/getting_started/first_3d_game/01.game_setup.rst index 1d94259dd..d5fb070c6 100644 --- a/getting_started/first_3d_game/01.game_setup.rst +++ b/getting_started/first_3d_game/01.game_setup.rst @@ -27,7 +27,7 @@ Click *Import* to open the project in the editor. .. image:: img/01.game_setup/03.import_and_edit.webp A window notifying you that the project was generated by an older Godot version may appear. -Click *Convert Full Project* to convert the project to your current Godot version. +Click *OK* to convert the project to your current Godot version. .. image:: img/01.game_setup/import_project_to_4.x_prompt.webp @@ -147,7 +147,7 @@ Move it up by clicking and dragging on the manipulator's green arrow and click and drag on the red arc to rotate it around the X-axis, until the ground is lit. -In the *Inspector*, turn on *Shadow -> Enabled* by clicking the checkbox. +In the *Inspector*, turn on *Shadow* by clicking the checkbox. .. image:: img/01.game_setup/16.turn_on_shadows.webp diff --git a/getting_started/first_3d_game/03.player_movement_code.rst b/getting_started/first_3d_game/03.player_movement_code.rst index 8b1eac88c..2cdc9e690 100644 --- a/getting_started/first_3d_game/03.player_movement_code.rst +++ b/getting_started/first_3d_game/03.player_movement_code.rst @@ -449,12 +449,12 @@ Ultimately, we have both player movement and the view in place. Next, we will work on the monsters. .. |image0| image:: img/03.player_movement_code/01.attach_script_to_player.webp -.. |image1| image:: img/03.player_movement_code/02.clicking_main_tab.png +.. |image1| image:: img/03.player_movement_code/02.clicking_main_tab.webp .. |image2| image:: img/03.player_movement_code/03.instance_child_scene.webp .. |image3| image:: img/03.player_movement_code/04.scene_tree_with_camera.webp -.. |image4| image:: img/03.player_movement_code/05.camera_preview_checkbox.png -.. |image5| image:: img/03.player_movement_code/06.two_viewports.png -.. |image6| image:: img/03.player_movement_code/07.camera_preview_checkbox.png +.. |image4| image:: img/03.player_movement_code/05.camera_preview_checkbox.webp +.. |image5| image:: img/03.player_movement_code/06.two_viewports.webp +.. |image6| image:: img/03.player_movement_code/07.camera_preview_checkbox.webp .. |image7| image:: img/03.player_movement_code/08.camera_moved.png .. |image8| image:: img/03.player_movement_code/09.camera_rotated.png .. |image9| image:: img/03.player_movement_code/10.camera_perspective.png diff --git a/getting_started/first_3d_game/04.mob_scene.rst b/getting_started/first_3d_game/04.mob_scene.rst index 5c63fd6db..902bb469b 100644 --- a/getting_started/first_3d_game/04.mob_scene.rst +++ b/getting_started/first_3d_game/04.mob_scene.rst @@ -331,13 +331,13 @@ Here is the complete ``mob.gd`` script for reference. } } -.. |image0| image:: img/04.mob_scene/01.initial_three_nodes.png -.. |image1| image:: img/04.mob_scene/02.add_child_node.png -.. |image2| image:: img/04.mob_scene/03.scene_with_collision_shape.png +.. |image0| image:: img/04.mob_scene/01.initial_three_nodes.webp +.. |image1| image:: img/04.mob_scene/02.add_child_node.webp +.. |image2| image:: img/04.mob_scene/03.scene_with_collision_shape.webp .. |image4| image:: img/04.mob_scene/05.box_final_size.png -.. |image5| image:: img/04.mob_scene/06.visibility_notifier.png +.. |image5| image:: img/04.mob_scene/06.visibility_notifier.webp .. |image6| image:: img/04.mob_scene/07.visibility_notifier_bbox_resized.png -.. |image7| image:: img/04.mob_scene/08.mob_attach_script.png -.. |image8| image:: img/04.mob_scene/09.switch_to_3d_workspace.png +.. |image7| image:: img/04.mob_scene/08.mob_attach_script.webp +.. |image8| image:: img/04.mob_scene/09.switch_to_3d_workspace.webp .. |image9| image:: img/04.mob_scene/10.node_dock.webp .. |image10| image:: img/04.mob_scene/11.connect_signal.webp diff --git a/getting_started/first_3d_game/05.spawning_mobs.rst b/getting_started/first_3d_game/05.spawning_mobs.rst index 0751425bb..2c0d85c37 100644 --- a/getting_started/first_3d_game/05.spawning_mobs.rst +++ b/getting_started/first_3d_game/05.spawning_mobs.rst @@ -21,7 +21,7 @@ Go to *Project -> Project Settings*. If you still have *Input Map* open, switch to the *General* tab. In the left menu, navigate down to *Display -> Window*. On the right, set the -*Width* to ``720`` and the *Height* to ``540``. +*Viewport Width* to ``720`` and the *Viewport Height* to ``540``. |image2| @@ -106,8 +106,6 @@ In the *Inspector*, expand the *Material* section and assign a :ref:`StandardMat |image13| -.. image:: img/05.spawning_mobs/standard_material.webp - Click the sphere icon to open the material resource. You get a preview of the material and a long list of sections filled with properties. You can use these to create all sorts of surfaces, from metal to rock or water. @@ -346,28 +344,28 @@ For now, they bump and slide against one another when their paths cross. We'll address this in the next part. .. |image0| image:: img/05.spawning_mobs/01.monsters_path_preview.png -.. |image1| image:: img/05.spawning_mobs/02.project_settings.png +.. |image1| image:: img/05.spawning_mobs/02.project_settings.webp .. |image2| image:: img/05.spawning_mobs/03.window_settings.webp .. |image3| image:: img/05.spawning_mobs/04.camera_preview.png -.. |image4| image:: img/05.spawning_mobs/05.cylinders_node.png -.. |image5| image:: img/05.spawning_mobs/06.cylinder_mesh.png -.. |image6| image:: img/05.spawning_mobs/07.top_view.png -.. |image7| image:: img/05.spawning_mobs/08.toggle_view_grid.png -.. |image8| image:: img/05.spawning_mobs/09.toggle_grid_snap.png +.. |image4| image:: img/05.spawning_mobs/05.cylinders_node.webp +.. |image5| image:: img/05.spawning_mobs/06.cylinder_mesh.webp +.. |image6| image:: img/05.spawning_mobs/07.top_view.webp +.. |image7| image:: img/05.spawning_mobs/08.toggle_view_grid.webp +.. |image8| image:: img/05.spawning_mobs/09.toggle_grid_snap.webp .. |image9| image:: img/05.spawning_mobs/10.place_first_cylinder.png .. |image10| image:: img/05.spawning_mobs/11.both_cylinders_selected.png .. |image11| image:: img/05.spawning_mobs/12.four_cylinders.png -.. |image12| image:: img/05.spawning_mobs/13.selecting_all_cylinders.png +.. |image12| image:: img/05.spawning_mobs/13.selecting_all_cylinders.webp .. |image13| image:: img/05.spawning_mobs/14.multi_material_selection.webp -.. |image14| image:: img/05.spawning_mobs/15.bright-cylinders.png -.. |image15| image:: img/05.spawning_mobs/16.cylinders_fold.png -.. |image16| image:: img/05.spawning_mobs/17.points_options.png -.. |image17| image:: img/05.spawning_mobs/18.close_path.png +.. |image14| image:: img/05.spawning_mobs/15.bright-cylinders.webp +.. |image15| image:: img/05.spawning_mobs/16.cylinders_fold.webp +.. |image16| image:: img/05.spawning_mobs/17.points_options.webp +.. |image17| image:: img/05.spawning_mobs/18.close_path.webp .. |image18| image:: img/05.spawning_mobs/19.path_result.png -.. |image19| image:: img/05.spawning_mobs/20.spawn_nodes.png -.. |image20| image:: img/05.spawning_mobs/20.mob_scene_property.png -.. |image21| image:: img/05.spawning_mobs/21.mob_timer.png -.. |image22| image:: img/05.spawning_mobs/22.mob_timer_properties.png -.. |image23| image:: img/05.spawning_mobs/23.timeout_signal.png +.. |image19| image:: img/05.spawning_mobs/20.spawn_nodes.webp +.. |image20| image:: img/05.spawning_mobs/20.mob_scene_property.webp +.. |image21| image:: img/05.spawning_mobs/21.mob_timer.webp +.. |image22| image:: img/05.spawning_mobs/22.mob_timer_properties.webp +.. |image23| image:: img/05.spawning_mobs/23.timeout_signal.webp .. |image24| image:: img/05.spawning_mobs/24.connect_timer_to_main.webp .. |image25| image:: img/05.spawning_mobs/25.spawn_result.png diff --git a/getting_started/first_3d_game/06.jump_and_squash.rst b/getting_started/first_3d_game/06.jump_and_squash.rst index 9cda6e1bf..d28aca92e 100644 --- a/getting_started/first_3d_game/06.jump_and_squash.rst +++ b/getting_started/first_3d_game/06.jump_and_squash.rst @@ -181,17 +181,22 @@ collisions with the floor. To do so, we can use Godot's :ref:`group Open the scene ``mob.tscn`` again and select the *Mob* node. Go to the *Node* dock on the right to see a list of signals. The *Node* dock has two tabs: *Signals*, which you've already used, and *Groups*, which allows you to assign -tags to nodes. - -Click on it to reveal a field where you can write a tag name. Enter "mob" in the -field and click the *Add* button. +tags to nodes. Click on the *+* button to open the *Create new Group* dialog. |image7| +Enter "mob" in the *Name* field and click the *Ok* button. + +|image8| + +The "mob" group is now shown under the *Scene Groups* section. + +|image9| + An icon appears in the *Scene* dock to indicate the node is part of at least one group. -|image8| +|image10| We can now use the group from the code to distinguish collisions with monsters from collisions with the floor. @@ -367,12 +372,14 @@ With that, you should be able to kill monsters by jumping on them. You can press However, the player won't die yet. We'll work on that in the next part. -.. |image0| image:: img/06.jump_and_squash/02.project_settings.png +.. |image0| image:: img/06.jump_and_squash/02.project_settings.webp .. |image1| image:: img/06.jump_and_squash/03.physics_layers.webp .. |image2| image:: img/06.jump_and_squash/04.default_physics_properties.webp .. |image3| image:: img/06.jump_and_squash/05.toggle_layer_and_mask.webp -.. |image4| image:: img/06.jump_and_squash/06.named_checkboxes.png +.. |image4| image:: img/06.jump_and_squash/06.named_checkboxes.webp .. |image5| image:: img/06.jump_and_squash/07.player_physics_mask.webp .. |image6| image:: img/06.jump_and_squash/08.mob_physics_mask.webp -.. |image7| image:: img/06.jump_and_squash/09.groups_tab.png -.. |image8| image:: img/06.jump_and_squash/10.group_scene_icon.png +.. |image7| image:: img/06.jump_and_squash/09.groups_tab.webp +.. |image8| image:: img/06.jump_and_squash/10.group_create_new.webp +.. |image9| image:: img/06.jump_and_squash/11.group_scene_groups.webp +.. |image10| image:: img/06.jump_and_squash/12.group_scene_icon.webp diff --git a/getting_started/first_3d_game/07.killing_player.rst b/getting_started/first_3d_game/07.killing_player.rst index f29363f6f..c15abc5d5 100644 --- a/getting_started/first_3d_game/07.killing_player.rst +++ b/getting_started/first_3d_game/07.killing_player.rst @@ -511,9 +511,9 @@ Finally, the longest script, ``player.gd``: See you in the next lesson to add the score and the retry option. -.. |image0| image:: img/07.killing_player/01.adding_area_node.png -.. |image1| image:: img/07.killing_player/02.cylinder_shape.png +.. |image0| image:: img/07.killing_player/01.adding_area_node.webp +.. |image1| image:: img/07.killing_player/02.cylinder_shape.webp .. |image2| image:: img/07.killing_player/03.cylinder_in_editor.png .. |image3| image:: img/07.killing_player/04.mob_detector_properties.webp -.. |image4| image:: img/07.killing_player/05.body_entered_signal.png -.. |image5| image:: img/07.killing_player/06.player_hit_signal.png +.. |image4| image:: img/07.killing_player/05.body_entered_signal.webp +.. |image5| image:: img/07.killing_player/06.player_hit_signal.webp diff --git a/getting_started/first_3d_game/09.adding_animations.rst b/getting_started/first_3d_game/09.adding_animations.rst index 01c809d93..a2719bec4 100644 --- a/getting_started/first_3d_game/09.adding_animations.rst +++ b/getting_started/first_3d_game/09.adding_animations.rst @@ -56,17 +56,15 @@ nodes. Set the animation duration to ``1.2`` seconds in the top-right of the dock. -|image7| - You should see the gray ribbon widen a bit. It shows you the start and end of your animation and the vertical blue line is your time cursor. -|image8| +|image7| You can click and drag the slider in the bottom-right to zoom in and out of the timeline. -|image9| +|image8| The float animation ------------------- @@ -82,7 +80,7 @@ rotation of the ``Character`` node. Select the ``Character`` and in the *Inspector* expand the *Transform* section. Click the key icon next to *Position*, and *Rotation*. -|image10| +|image9| .. image:: img/09.adding_animations/curves.webp @@ -90,15 +88,15 @@ For this tutorial, just create RESET Track(s) which is the default choice Two tracks appear in the editor with a diamond icon representing each keyframe. -|image11| +|image10| You can click and drag on the diamonds to move them in time. Move the position key to ``0.3`` seconds and the rotation key to ``0.1`` seconds. -|image12| +|image11| Move the time cursor to ``0.5`` seconds by clicking and dragging on the gray -timeline. +timeline, or by entering it into the input field. |timeline_05_click| @@ -108,7 +106,7 @@ In the *Inspector*, set the *Position*'s *Y* axis to ``0.65`` meters and the If you don't see the properties in the *Inspector* panel, first click on the ``Character`` node again in the *Scene* dock. -|image13| +|image12| Create a keyframe for both properties @@ -117,7 +115,7 @@ Create a keyframe for both properties Now, move the position keyframe to ``0.7`` seconds by dragging it on the timeline. -|image14| +|image13| .. note:: @@ -136,7 +134,7 @@ create a key for both properties. You can preview the result by clicking the play button or pressing :kbd:`Shift + D`. Click the stop button or press :kbd:`S` to stop playback. -|image15| +|image14| You can see that the engine interpolates between your keyframes to produce a continuous animation. At the moment, though, the motion feels very robotic. This @@ -147,33 +145,33 @@ We can control the transition between keyframes using easing curves. Click and drag around the first two keys in the timeline to box select them. -|image16| +|image15| You can edit the properties of both keys simultaneously in the *Inspector*, where you can see an *Easing* property. -|image17| +|image16| Click and drag on the curve, pulling it towards the left. This will make it ease-out, that is to say, transition fast initially and slow down as the time cursor reaches the next keyframe. -|image18| +|image17| Play the animation again to see the difference. The first half should already feel a bit bouncier. Apply an ease-out to the second keyframe in the rotation track. -|image19| +|image18| Do the opposite for the second position keyframe, dragging it to the right. -|image20| +|image19| Your animation should look something like this. -|image21| +|image20| .. note:: @@ -197,7 +195,7 @@ Let's change the animation speed when the character is moving. Open the ``Player``'s script by clicking the script icon next to it. -|image22| +|image21| In ``_physics_process()``, after the line where we check the ``direction`` vector, add the following code. @@ -451,11 +449,11 @@ Here's the *Player* script. direction = direction.Normalized(); // Setting the basis property will affect the rotation of the node. GetNode("Pivot").Basis = Basis.LookingAt(direction); - GetNode("AnimationPlayer").PlaybackSpeed = 4; + GetNode("AnimationPlayer").SpeedScale = 4; } else { - GetNode("AnimationPlayer").PlaybackSpeed = 1; + GetNode("AnimationPlayer").SpeedScale = 1; } // Ground velocity @@ -618,26 +616,25 @@ And the *Mob*'s script. .. |image0| image:: img/squash-the-creeps-final.gif .. |image1| image:: img/09.adding_animations/animation_player_dock.webp .. |image2| image:: img/09.adding_animations/02.new_animation.webp -.. |image3| image:: img/09.adding_animations/03.float_name.png -.. |image4| image:: img/09.adding_animations/03.timeline.png -.. |image5| image:: img/09.adding_animations/04.autoplay_and_loop.png -.. |image6| image:: img/09.adding_animations/05.pin_icon.png +.. |image3| image:: img/09.adding_animations/03.float_name.webp +.. |image4| image:: img/09.adding_animations/03.timeline.webp +.. |image5| image:: img/09.adding_animations/04.autoplay_and_loop.webp +.. |image6| image:: img/09.adding_animations/05.pin_icon.webp .. |image7| image:: img/09.adding_animations/06.animation_duration.webp -.. |image8| image:: img/09.adding_animations/07.editable_timeline.webp -.. |image9| image:: img/09.adding_animations/08.zoom_slider.webp -.. |image10| image:: img/09.adding_animations/09.creating_first_keyframe.webp -.. |image11| image:: img/09.adding_animations/10.initial_keys.webp -.. |image12| image:: img/09.adding_animations/11.moving_keys.webp -.. |image13| image:: img/09.adding_animations/12.second_keys_values.webp -.. |image14| image:: img/09.adding_animations/13.second_keys.webp -.. |image15| image:: img/09.adding_animations/14.play_button.png -.. |image16| image:: img/09.adding_animations/15.box_select.webp -.. |image17| image:: img/09.adding_animations/16.easing_property.png -.. |image18| image:: img/09.adding_animations/17.ease_out.png -.. |image19| image:: img/09.adding_animations/18.ease_out_second_rotation_key.png -.. |image20| image:: img/09.adding_animations/19.ease_in_second_translation_key.png -.. |image21| image:: img/09.adding_animations/20.float_animation.gif -.. |image22| image:: img/09.adding_animations/21.script_icon.png +.. |image8| image:: img/09.adding_animations/08.zoom_slider.webp +.. |image9| image:: img/09.adding_animations/09.creating_first_keyframe.webp +.. |image10| image:: img/09.adding_animations/10.initial_keys.webp +.. |image11| image:: img/09.adding_animations/11.moving_keys.webp +.. |image12| image:: img/09.adding_animations/12.second_keys_values.webp +.. |image13| image:: img/09.adding_animations/13.second_keys.webp +.. |image14| image:: img/09.adding_animations/14.play_button.webp +.. |image15| image:: img/09.adding_animations/15.box_select.webp +.. |image16| image:: img/09.adding_animations/16.easing_property.webp +.. |image17| image:: img/09.adding_animations/17.ease_out.webp +.. |image18| image:: img/09.adding_animations/18.ease_out_second_rotation_key.webp +.. |image19| image:: img/09.adding_animations/19.ease_in_second_translation_key.webp +.. |image20| image:: img/09.adding_animations/20.float_animation.gif +.. |image21| image:: img/09.adding_animations/21.script_icon.webp .. |animation_final_keyframes| image:: img/09.adding_animations/animation_final_keyframes.webp .. |second_keys_both| image:: img/09.adding_animations/second_keys_both.webp .. |timeline_05_click| image:: img/09.adding_animations/timeline_05_click.webp diff --git a/getting_started/first_3d_game/img/01.game_setup/01.import_button.webp b/getting_started/first_3d_game/img/01.game_setup/01.import_button.webp index 1d05b3198..35ec18dbc 100644 Binary files a/getting_started/first_3d_game/img/01.game_setup/01.import_button.webp and b/getting_started/first_3d_game/img/01.game_setup/01.import_button.webp differ diff --git a/getting_started/first_3d_game/img/01.game_setup/02.browse_to_project_folder.webp b/getting_started/first_3d_game/img/01.game_setup/02.browse_to_project_folder.webp index 92c6e713a..faffaf29c 100644 Binary files a/getting_started/first_3d_game/img/01.game_setup/02.browse_to_project_folder.webp and b/getting_started/first_3d_game/img/01.game_setup/02.browse_to_project_folder.webp differ diff --git a/getting_started/first_3d_game/img/01.game_setup/03.import_and_edit.webp b/getting_started/first_3d_game/img/01.game_setup/03.import_and_edit.webp index 3cc3cd389..bace8f253 100644 Binary files a/getting_started/first_3d_game/img/01.game_setup/03.import_and_edit.webp and b/getting_started/first_3d_game/img/01.game_setup/03.import_and_edit.webp differ diff --git a/getting_started/first_3d_game/img/01.game_setup/04.start_assets.webp b/getting_started/first_3d_game/img/01.game_setup/04.start_assets.webp index d128e0a95..bdb9e5dc2 100644 Binary files a/getting_started/first_3d_game/img/01.game_setup/04.start_assets.webp and b/getting_started/first_3d_game/img/01.game_setup/04.start_assets.webp differ diff --git a/getting_started/first_3d_game/img/01.game_setup/05.main_node.webp b/getting_started/first_3d_game/img/01.game_setup/05.main_node.webp index 704198a57..8ed2703fa 100644 Binary files a/getting_started/first_3d_game/img/01.game_setup/05.main_node.webp and b/getting_started/first_3d_game/img/01.game_setup/05.main_node.webp differ diff --git a/getting_started/first_3d_game/img/01.game_setup/06.staticbody_node.webp b/getting_started/first_3d_game/img/01.game_setup/06.staticbody_node.webp index a7b721f27..fbd6ae8a0 100644 Binary files a/getting_started/first_3d_game/img/01.game_setup/06.staticbody_node.webp and b/getting_started/first_3d_game/img/01.game_setup/06.staticbody_node.webp differ diff --git a/getting_started/first_3d_game/img/01.game_setup/07.collision_shape_warning.webp b/getting_started/first_3d_game/img/01.game_setup/07.collision_shape_warning.webp index cda77d219..05ff0b50a 100644 Binary files a/getting_started/first_3d_game/img/01.game_setup/07.collision_shape_warning.webp and b/getting_started/first_3d_game/img/01.game_setup/07.collision_shape_warning.webp differ diff --git a/getting_started/first_3d_game/img/01.game_setup/08.create_box_shape3D.webp b/getting_started/first_3d_game/img/01.game_setup/08.create_box_shape3D.webp index 8a0bfe925..f859fefe6 100644 Binary files a/getting_started/first_3d_game/img/01.game_setup/08.create_box_shape3D.webp and b/getting_started/first_3d_game/img/01.game_setup/08.create_box_shape3D.webp differ diff --git a/getting_started/first_3d_game/img/01.game_setup/09.box_size.webp b/getting_started/first_3d_game/img/01.game_setup/09.box_size.webp index b898354b3..75a93d2e6 100644 Binary files a/getting_started/first_3d_game/img/01.game_setup/09.box_size.webp and b/getting_started/first_3d_game/img/01.game_setup/09.box_size.webp differ diff --git a/getting_started/first_3d_game/img/01.game_setup/10.mesh_instance3d.webp b/getting_started/first_3d_game/img/01.game_setup/10.mesh_instance3d.webp index 3b2242adb..21255a0fc 100644 Binary files a/getting_started/first_3d_game/img/01.game_setup/10.mesh_instance3d.webp and b/getting_started/first_3d_game/img/01.game_setup/10.mesh_instance3d.webp differ diff --git a/getting_started/first_3d_game/img/01.game_setup/11.box_mesh.webp b/getting_started/first_3d_game/img/01.game_setup/11.box_mesh.webp index f25cd26b1..cba6dbcc8 100644 Binary files a/getting_started/first_3d_game/img/01.game_setup/11.box_mesh.webp and b/getting_started/first_3d_game/img/01.game_setup/11.box_mesh.webp differ diff --git a/getting_started/first_3d_game/img/01.game_setup/12.cube_resized.webp b/getting_started/first_3d_game/img/01.game_setup/12.cube_resized.webp index 37b7a30f8..91d2cdc45 100644 Binary files a/getting_started/first_3d_game/img/01.game_setup/12.cube_resized.webp and b/getting_started/first_3d_game/img/01.game_setup/12.cube_resized.webp differ diff --git a/getting_started/first_3d_game/img/01.game_setup/16.turn_on_shadows.webp b/getting_started/first_3d_game/img/01.game_setup/16.turn_on_shadows.webp index 550ef671d..4dc897f52 100644 Binary files a/getting_started/first_3d_game/img/01.game_setup/16.turn_on_shadows.webp and b/getting_started/first_3d_game/img/01.game_setup/16.turn_on_shadows.webp differ diff --git a/getting_started/first_3d_game/img/01.game_setup/adding_static_body3D.webp b/getting_started/first_3d_game/img/01.game_setup/adding_static_body3D.webp index 5ccfe163e..a3b137d11 100644 Binary files a/getting_started/first_3d_game/img/01.game_setup/adding_static_body3D.webp and b/getting_started/first_3d_game/img/01.game_setup/adding_static_body3D.webp differ diff --git a/getting_started/first_3d_game/img/01.game_setup/create_directional_light3d.webp b/getting_started/first_3d_game/img/01.game_setup/create_directional_light3d.webp index 64def85a5..121896937 100644 Binary files a/getting_started/first_3d_game/img/01.game_setup/create_directional_light3d.webp and b/getting_started/first_3d_game/img/01.game_setup/create_directional_light3d.webp differ diff --git a/getting_started/first_3d_game/img/01.game_setup/ground_down1meter.webp b/getting_started/first_3d_game/img/01.game_setup/ground_down1meter.webp index 45c4009c0..1b0ec1f47 100644 Binary files a/getting_started/first_3d_game/img/01.game_setup/ground_down1meter.webp and b/getting_started/first_3d_game/img/01.game_setup/ground_down1meter.webp differ diff --git a/getting_started/first_3d_game/img/01.game_setup/import_project_to_4.x_prompt.webp b/getting_started/first_3d_game/img/01.game_setup/import_project_to_4.x_prompt.webp index a38e0652d..920fc9a82 100644 Binary files a/getting_started/first_3d_game/img/01.game_setup/import_project_to_4.x_prompt.webp and b/getting_started/first_3d_game/img/01.game_setup/import_project_to_4.x_prompt.webp differ diff --git a/getting_started/first_3d_game/img/01.game_setup/use_snap.webp b/getting_started/first_3d_game/img/01.game_setup/use_snap.webp index e2eb9e668..dab182af0 100644 Binary files a/getting_started/first_3d_game/img/01.game_setup/use_snap.webp and b/getting_started/first_3d_game/img/01.game_setup/use_snap.webp differ diff --git a/getting_started/first_3d_game/img/02.player_input/add_capsuleshape3d.webp b/getting_started/first_3d_game/img/02.player_input/add_capsuleshape3d.webp index e8dd53983..3048c94f6 100644 Binary files a/getting_started/first_3d_game/img/02.player_input/add_capsuleshape3d.webp and b/getting_started/first_3d_game/img/02.player_input/add_capsuleshape3d.webp differ diff --git a/getting_started/first_3d_game/img/03.player_movement_code/01.attach_script_to_player.webp b/getting_started/first_3d_game/img/03.player_movement_code/01.attach_script_to_player.webp index 62e1d1d35..ea629d176 100644 Binary files a/getting_started/first_3d_game/img/03.player_movement_code/01.attach_script_to_player.webp and b/getting_started/first_3d_game/img/03.player_movement_code/01.attach_script_to_player.webp differ diff --git a/getting_started/first_3d_game/img/03.player_movement_code/02.clicking_main_tab.png b/getting_started/first_3d_game/img/03.player_movement_code/02.clicking_main_tab.png deleted file mode 100644 index b40ba64c2..000000000 Binary files a/getting_started/first_3d_game/img/03.player_movement_code/02.clicking_main_tab.png and /dev/null differ diff --git a/getting_started/first_3d_game/img/03.player_movement_code/02.clicking_main_tab.webp b/getting_started/first_3d_game/img/03.player_movement_code/02.clicking_main_tab.webp new file mode 100644 index 000000000..6845f73c7 Binary files /dev/null and b/getting_started/first_3d_game/img/03.player_movement_code/02.clicking_main_tab.webp differ diff --git a/getting_started/first_3d_game/img/03.player_movement_code/03.instance_child_scene.webp b/getting_started/first_3d_game/img/03.player_movement_code/03.instance_child_scene.webp index 53efd75e7..21f24dbc6 100644 Binary files a/getting_started/first_3d_game/img/03.player_movement_code/03.instance_child_scene.webp and b/getting_started/first_3d_game/img/03.player_movement_code/03.instance_child_scene.webp differ diff --git a/getting_started/first_3d_game/img/03.player_movement_code/04.scene_tree_with_camera.webp b/getting_started/first_3d_game/img/03.player_movement_code/04.scene_tree_with_camera.webp index 2dce190f8..4bcb9c09a 100644 Binary files a/getting_started/first_3d_game/img/03.player_movement_code/04.scene_tree_with_camera.webp and b/getting_started/first_3d_game/img/03.player_movement_code/04.scene_tree_with_camera.webp differ diff --git a/getting_started/first_3d_game/img/03.player_movement_code/05.camera_preview_checkbox.png b/getting_started/first_3d_game/img/03.player_movement_code/05.camera_preview_checkbox.png deleted file mode 100644 index 5b0232859..000000000 Binary files a/getting_started/first_3d_game/img/03.player_movement_code/05.camera_preview_checkbox.png and /dev/null differ diff --git a/getting_started/first_3d_game/img/03.player_movement_code/05.camera_preview_checkbox.webp b/getting_started/first_3d_game/img/03.player_movement_code/05.camera_preview_checkbox.webp new file mode 100644 index 000000000..372629dc2 Binary files /dev/null and b/getting_started/first_3d_game/img/03.player_movement_code/05.camera_preview_checkbox.webp differ diff --git a/getting_started/first_3d_game/img/03.player_movement_code/06.two_viewports.png b/getting_started/first_3d_game/img/03.player_movement_code/06.two_viewports.png deleted file mode 100644 index 7e25c7c76..000000000 Binary files a/getting_started/first_3d_game/img/03.player_movement_code/06.two_viewports.png and /dev/null differ diff --git a/getting_started/first_3d_game/img/03.player_movement_code/06.two_viewports.webp b/getting_started/first_3d_game/img/03.player_movement_code/06.two_viewports.webp new file mode 100644 index 000000000..cf86096bb Binary files /dev/null and b/getting_started/first_3d_game/img/03.player_movement_code/06.two_viewports.webp differ diff --git a/getting_started/first_3d_game/img/03.player_movement_code/07.camera_preview_checkbox.png b/getting_started/first_3d_game/img/03.player_movement_code/07.camera_preview_checkbox.png deleted file mode 100644 index 729b5b4ea..000000000 Binary files a/getting_started/first_3d_game/img/03.player_movement_code/07.camera_preview_checkbox.png and /dev/null differ diff --git a/getting_started/first_3d_game/img/03.player_movement_code/07.camera_preview_checkbox.webp b/getting_started/first_3d_game/img/03.player_movement_code/07.camera_preview_checkbox.webp new file mode 100644 index 000000000..33b0c5f0d Binary files /dev/null and b/getting_started/first_3d_game/img/03.player_movement_code/07.camera_preview_checkbox.webp differ diff --git a/getting_started/first_3d_game/img/03.player_movement_code/12.viewport_change.webp b/getting_started/first_3d_game/img/03.player_movement_code/12.viewport_change.webp index 3e0e53f2a..1ea047e90 100644 Binary files a/getting_started/first_3d_game/img/03.player_movement_code/12.viewport_change.webp and b/getting_started/first_3d_game/img/03.player_movement_code/12.viewport_change.webp differ diff --git a/getting_started/first_3d_game/img/04.mob_scene/01.initial_three_nodes.png b/getting_started/first_3d_game/img/04.mob_scene/01.initial_three_nodes.png deleted file mode 100644 index 3effa577b..000000000 Binary files a/getting_started/first_3d_game/img/04.mob_scene/01.initial_three_nodes.png and /dev/null differ diff --git a/getting_started/first_3d_game/img/04.mob_scene/01.initial_three_nodes.webp b/getting_started/first_3d_game/img/04.mob_scene/01.initial_three_nodes.webp new file mode 100644 index 000000000..59baa0b3b Binary files /dev/null and b/getting_started/first_3d_game/img/04.mob_scene/01.initial_three_nodes.webp differ diff --git a/getting_started/first_3d_game/img/04.mob_scene/02.add_child_node.png b/getting_started/first_3d_game/img/04.mob_scene/02.add_child_node.png deleted file mode 100644 index a8ebee1b0..000000000 Binary files a/getting_started/first_3d_game/img/04.mob_scene/02.add_child_node.png and /dev/null differ diff --git a/getting_started/first_3d_game/img/04.mob_scene/02.add_child_node.webp b/getting_started/first_3d_game/img/04.mob_scene/02.add_child_node.webp new file mode 100644 index 000000000..2d33c3902 Binary files /dev/null and b/getting_started/first_3d_game/img/04.mob_scene/02.add_child_node.webp differ diff --git a/getting_started/first_3d_game/img/04.mob_scene/03.scene_with_collision_shape.png b/getting_started/first_3d_game/img/04.mob_scene/03.scene_with_collision_shape.png deleted file mode 100644 index 2dcc4119a..000000000 Binary files a/getting_started/first_3d_game/img/04.mob_scene/03.scene_with_collision_shape.png and /dev/null differ diff --git a/getting_started/first_3d_game/img/04.mob_scene/03.scene_with_collision_shape.webp b/getting_started/first_3d_game/img/04.mob_scene/03.scene_with_collision_shape.webp new file mode 100644 index 000000000..bf0c7098e Binary files /dev/null and b/getting_started/first_3d_game/img/04.mob_scene/03.scene_with_collision_shape.webp differ diff --git a/getting_started/first_3d_game/img/04.mob_scene/06.visibility_notifier.png b/getting_started/first_3d_game/img/04.mob_scene/06.visibility_notifier.png deleted file mode 100644 index ed40f85b2..000000000 Binary files a/getting_started/first_3d_game/img/04.mob_scene/06.visibility_notifier.png and /dev/null differ diff --git a/getting_started/first_3d_game/img/04.mob_scene/06.visibility_notifier.webp b/getting_started/first_3d_game/img/04.mob_scene/06.visibility_notifier.webp new file mode 100644 index 000000000..a1401c1e0 Binary files /dev/null and b/getting_started/first_3d_game/img/04.mob_scene/06.visibility_notifier.webp differ diff --git a/getting_started/first_3d_game/img/04.mob_scene/08.mob_attach_script.png b/getting_started/first_3d_game/img/04.mob_scene/08.mob_attach_script.png deleted file mode 100644 index dc292ec47..000000000 Binary files a/getting_started/first_3d_game/img/04.mob_scene/08.mob_attach_script.png and /dev/null differ diff --git a/getting_started/first_3d_game/img/04.mob_scene/08.mob_attach_script.webp b/getting_started/first_3d_game/img/04.mob_scene/08.mob_attach_script.webp new file mode 100644 index 000000000..7504422a3 Binary files /dev/null and b/getting_started/first_3d_game/img/04.mob_scene/08.mob_attach_script.webp differ diff --git a/getting_started/first_3d_game/img/04.mob_scene/09.switch_to_3d_workspace.png b/getting_started/first_3d_game/img/04.mob_scene/09.switch_to_3d_workspace.png deleted file mode 100644 index 263d9f627..000000000 Binary files a/getting_started/first_3d_game/img/04.mob_scene/09.switch_to_3d_workspace.png and /dev/null differ diff --git a/getting_started/first_3d_game/img/04.mob_scene/09.switch_to_3d_workspace.webp b/getting_started/first_3d_game/img/04.mob_scene/09.switch_to_3d_workspace.webp new file mode 100644 index 000000000..f4420d76e Binary files /dev/null and b/getting_started/first_3d_game/img/04.mob_scene/09.switch_to_3d_workspace.webp differ diff --git a/getting_started/first_3d_game/img/04.mob_scene/10.node_dock.webp b/getting_started/first_3d_game/img/04.mob_scene/10.node_dock.webp index cb1ac635e..b4c9945f1 100644 Binary files a/getting_started/first_3d_game/img/04.mob_scene/10.node_dock.webp and b/getting_started/first_3d_game/img/04.mob_scene/10.node_dock.webp differ diff --git a/getting_started/first_3d_game/img/04.mob_scene/11.connect_signal.webp b/getting_started/first_3d_game/img/04.mob_scene/11.connect_signal.webp index ceb56056c..f97620186 100644 Binary files a/getting_started/first_3d_game/img/04.mob_scene/11.connect_signal.webp and b/getting_started/first_3d_game/img/04.mob_scene/11.connect_signal.webp differ diff --git a/getting_started/first_3d_game/img/04.mob_scene/drag_drop_mob.webp b/getting_started/first_3d_game/img/04.mob_scene/drag_drop_mob.webp index c9448481f..44f4de253 100644 Binary files a/getting_started/first_3d_game/img/04.mob_scene/drag_drop_mob.webp and b/getting_started/first_3d_game/img/04.mob_scene/drag_drop_mob.webp differ diff --git a/getting_started/first_3d_game/img/05.spawning_mobs/02.project_settings.png b/getting_started/first_3d_game/img/05.spawning_mobs/02.project_settings.png deleted file mode 100644 index 51cda62b7..000000000 Binary files a/getting_started/first_3d_game/img/05.spawning_mobs/02.project_settings.png and /dev/null differ diff --git a/getting_started/first_3d_game/img/05.spawning_mobs/02.project_settings.webp b/getting_started/first_3d_game/img/05.spawning_mobs/02.project_settings.webp new file mode 100644 index 000000000..a6f7b8b01 Binary files /dev/null and b/getting_started/first_3d_game/img/05.spawning_mobs/02.project_settings.webp differ diff --git a/getting_started/first_3d_game/img/05.spawning_mobs/03.window_settings.webp b/getting_started/first_3d_game/img/05.spawning_mobs/03.window_settings.webp index 93e3bdc25..15dfd3d9e 100644 Binary files a/getting_started/first_3d_game/img/05.spawning_mobs/03.window_settings.webp and b/getting_started/first_3d_game/img/05.spawning_mobs/03.window_settings.webp differ diff --git a/getting_started/first_3d_game/img/05.spawning_mobs/05.cylinders_node.png b/getting_started/first_3d_game/img/05.spawning_mobs/05.cylinders_node.png deleted file mode 100644 index 0de246f59..000000000 Binary files a/getting_started/first_3d_game/img/05.spawning_mobs/05.cylinders_node.png and /dev/null differ diff --git a/getting_started/first_3d_game/img/05.spawning_mobs/05.cylinders_node.webp b/getting_started/first_3d_game/img/05.spawning_mobs/05.cylinders_node.webp new file mode 100644 index 000000000..9cda8bca9 Binary files /dev/null and b/getting_started/first_3d_game/img/05.spawning_mobs/05.cylinders_node.webp differ diff --git a/getting_started/first_3d_game/img/05.spawning_mobs/06.cylinder_mesh.png b/getting_started/first_3d_game/img/05.spawning_mobs/06.cylinder_mesh.png deleted file mode 100644 index a291047f7..000000000 Binary files a/getting_started/first_3d_game/img/05.spawning_mobs/06.cylinder_mesh.png and /dev/null differ diff --git a/getting_started/first_3d_game/img/05.spawning_mobs/06.cylinder_mesh.webp b/getting_started/first_3d_game/img/05.spawning_mobs/06.cylinder_mesh.webp new file mode 100644 index 000000000..3035e89e6 Binary files /dev/null and b/getting_started/first_3d_game/img/05.spawning_mobs/06.cylinder_mesh.webp differ diff --git a/getting_started/first_3d_game/img/05.spawning_mobs/07.top_view.png b/getting_started/first_3d_game/img/05.spawning_mobs/07.top_view.png deleted file mode 100644 index 44bb6acf8..000000000 Binary files a/getting_started/first_3d_game/img/05.spawning_mobs/07.top_view.png and /dev/null differ diff --git a/getting_started/first_3d_game/img/05.spawning_mobs/07.top_view.webp b/getting_started/first_3d_game/img/05.spawning_mobs/07.top_view.webp new file mode 100644 index 000000000..66f88a2bb Binary files /dev/null and b/getting_started/first_3d_game/img/05.spawning_mobs/07.top_view.webp differ diff --git a/getting_started/first_3d_game/img/05.spawning_mobs/08.toggle_view_grid.png b/getting_started/first_3d_game/img/05.spawning_mobs/08.toggle_view_grid.png deleted file mode 100644 index 3d5040d5a..000000000 Binary files a/getting_started/first_3d_game/img/05.spawning_mobs/08.toggle_view_grid.png and /dev/null differ diff --git a/getting_started/first_3d_game/img/05.spawning_mobs/08.toggle_view_grid.webp b/getting_started/first_3d_game/img/05.spawning_mobs/08.toggle_view_grid.webp new file mode 100644 index 000000000..6450d7dc2 Binary files /dev/null and b/getting_started/first_3d_game/img/05.spawning_mobs/08.toggle_view_grid.webp differ diff --git a/getting_started/first_3d_game/img/05.spawning_mobs/09.toggle_grid_snap.png b/getting_started/first_3d_game/img/05.spawning_mobs/09.toggle_grid_snap.png deleted file mode 100644 index 95f2a7be6..000000000 Binary files a/getting_started/first_3d_game/img/05.spawning_mobs/09.toggle_grid_snap.png and /dev/null differ diff --git a/getting_started/first_3d_game/img/05.spawning_mobs/09.toggle_grid_snap.webp b/getting_started/first_3d_game/img/05.spawning_mobs/09.toggle_grid_snap.webp new file mode 100644 index 000000000..742f88d98 Binary files /dev/null and b/getting_started/first_3d_game/img/05.spawning_mobs/09.toggle_grid_snap.webp differ diff --git a/getting_started/first_3d_game/img/05.spawning_mobs/13.selecting_all_cylinders.png b/getting_started/first_3d_game/img/05.spawning_mobs/13.selecting_all_cylinders.png deleted file mode 100644 index 580a5deb1..000000000 Binary files a/getting_started/first_3d_game/img/05.spawning_mobs/13.selecting_all_cylinders.png and /dev/null differ diff --git a/getting_started/first_3d_game/img/05.spawning_mobs/13.selecting_all_cylinders.webp b/getting_started/first_3d_game/img/05.spawning_mobs/13.selecting_all_cylinders.webp new file mode 100644 index 000000000..d39cd725f Binary files /dev/null and b/getting_started/first_3d_game/img/05.spawning_mobs/13.selecting_all_cylinders.webp differ diff --git a/getting_started/first_3d_game/img/05.spawning_mobs/14.multi_material_selection.webp b/getting_started/first_3d_game/img/05.spawning_mobs/14.multi_material_selection.webp index 84e939478..2683aa437 100644 Binary files a/getting_started/first_3d_game/img/05.spawning_mobs/14.multi_material_selection.webp and b/getting_started/first_3d_game/img/05.spawning_mobs/14.multi_material_selection.webp differ diff --git a/getting_started/first_3d_game/img/05.spawning_mobs/15.bright-cylinders.png b/getting_started/first_3d_game/img/05.spawning_mobs/15.bright-cylinders.png deleted file mode 100644 index f3c3db11a..000000000 Binary files a/getting_started/first_3d_game/img/05.spawning_mobs/15.bright-cylinders.png and /dev/null differ diff --git a/getting_started/first_3d_game/img/05.spawning_mobs/15.bright-cylinders.webp b/getting_started/first_3d_game/img/05.spawning_mobs/15.bright-cylinders.webp new file mode 100644 index 000000000..aa95bcfae Binary files /dev/null and b/getting_started/first_3d_game/img/05.spawning_mobs/15.bright-cylinders.webp differ diff --git a/getting_started/first_3d_game/img/05.spawning_mobs/16.cylinders_fold.png b/getting_started/first_3d_game/img/05.spawning_mobs/16.cylinders_fold.png deleted file mode 100644 index 27aaa800a..000000000 Binary files a/getting_started/first_3d_game/img/05.spawning_mobs/16.cylinders_fold.png and /dev/null differ diff --git a/getting_started/first_3d_game/img/05.spawning_mobs/16.cylinders_fold.webp b/getting_started/first_3d_game/img/05.spawning_mobs/16.cylinders_fold.webp new file mode 100644 index 000000000..8b2e7b804 Binary files /dev/null and b/getting_started/first_3d_game/img/05.spawning_mobs/16.cylinders_fold.webp differ diff --git a/getting_started/first_3d_game/img/05.spawning_mobs/17.points_options.png b/getting_started/first_3d_game/img/05.spawning_mobs/17.points_options.png deleted file mode 100644 index cf5027a56..000000000 Binary files a/getting_started/first_3d_game/img/05.spawning_mobs/17.points_options.png and /dev/null differ diff --git a/getting_started/first_3d_game/img/05.spawning_mobs/17.points_options.webp b/getting_started/first_3d_game/img/05.spawning_mobs/17.points_options.webp new file mode 100644 index 000000000..70e07b427 Binary files /dev/null and b/getting_started/first_3d_game/img/05.spawning_mobs/17.points_options.webp differ diff --git a/getting_started/first_3d_game/img/05.spawning_mobs/18.close_path.png b/getting_started/first_3d_game/img/05.spawning_mobs/18.close_path.png deleted file mode 100644 index a2fb31dea..000000000 Binary files a/getting_started/first_3d_game/img/05.spawning_mobs/18.close_path.png and /dev/null differ diff --git a/getting_started/first_3d_game/img/05.spawning_mobs/18.close_path.webp b/getting_started/first_3d_game/img/05.spawning_mobs/18.close_path.webp new file mode 100644 index 000000000..f7ed23fa8 Binary files /dev/null and b/getting_started/first_3d_game/img/05.spawning_mobs/18.close_path.webp differ diff --git a/getting_started/first_3d_game/img/05.spawning_mobs/20.mob_scene_property.png b/getting_started/first_3d_game/img/05.spawning_mobs/20.mob_scene_property.png deleted file mode 100644 index 7d78b0785..000000000 Binary files a/getting_started/first_3d_game/img/05.spawning_mobs/20.mob_scene_property.png and /dev/null differ diff --git a/getting_started/first_3d_game/img/05.spawning_mobs/20.mob_scene_property.webp b/getting_started/first_3d_game/img/05.spawning_mobs/20.mob_scene_property.webp new file mode 100644 index 000000000..8b90adca0 Binary files /dev/null and b/getting_started/first_3d_game/img/05.spawning_mobs/20.mob_scene_property.webp differ diff --git a/getting_started/first_3d_game/img/05.spawning_mobs/20.spawn_nodes.png b/getting_started/first_3d_game/img/05.spawning_mobs/20.spawn_nodes.png deleted file mode 100644 index 5b72fd439..000000000 Binary files a/getting_started/first_3d_game/img/05.spawning_mobs/20.spawn_nodes.png and /dev/null differ diff --git a/getting_started/first_3d_game/img/05.spawning_mobs/20.spawn_nodes.webp b/getting_started/first_3d_game/img/05.spawning_mobs/20.spawn_nodes.webp new file mode 100644 index 000000000..cd53b3adc Binary files /dev/null and b/getting_started/first_3d_game/img/05.spawning_mobs/20.spawn_nodes.webp differ diff --git a/getting_started/first_3d_game/img/05.spawning_mobs/21.mob_timer.png b/getting_started/first_3d_game/img/05.spawning_mobs/21.mob_timer.png deleted file mode 100644 index e4dea3ee1..000000000 Binary files a/getting_started/first_3d_game/img/05.spawning_mobs/21.mob_timer.png and /dev/null differ diff --git a/getting_started/first_3d_game/img/05.spawning_mobs/21.mob_timer.webp b/getting_started/first_3d_game/img/05.spawning_mobs/21.mob_timer.webp new file mode 100644 index 000000000..4fb596992 Binary files /dev/null and b/getting_started/first_3d_game/img/05.spawning_mobs/21.mob_timer.webp differ diff --git a/getting_started/first_3d_game/img/05.spawning_mobs/22.mob_timer_properties.png b/getting_started/first_3d_game/img/05.spawning_mobs/22.mob_timer_properties.png deleted file mode 100644 index dfdaca026..000000000 Binary files a/getting_started/first_3d_game/img/05.spawning_mobs/22.mob_timer_properties.png and /dev/null differ diff --git a/getting_started/first_3d_game/img/05.spawning_mobs/22.mob_timer_properties.webp b/getting_started/first_3d_game/img/05.spawning_mobs/22.mob_timer_properties.webp new file mode 100644 index 000000000..ab791ae5f Binary files /dev/null and b/getting_started/first_3d_game/img/05.spawning_mobs/22.mob_timer_properties.webp differ diff --git a/getting_started/first_3d_game/img/05.spawning_mobs/23.timeout_signal.png b/getting_started/first_3d_game/img/05.spawning_mobs/23.timeout_signal.png deleted file mode 100644 index 9a69ee1a0..000000000 Binary files a/getting_started/first_3d_game/img/05.spawning_mobs/23.timeout_signal.png and /dev/null differ diff --git a/getting_started/first_3d_game/img/05.spawning_mobs/23.timeout_signal.webp b/getting_started/first_3d_game/img/05.spawning_mobs/23.timeout_signal.webp new file mode 100644 index 000000000..a63333971 Binary files /dev/null and b/getting_started/first_3d_game/img/05.spawning_mobs/23.timeout_signal.webp differ diff --git a/getting_started/first_3d_game/img/05.spawning_mobs/24.connect_timer_to_main.webp b/getting_started/first_3d_game/img/05.spawning_mobs/24.connect_timer_to_main.webp index f03f30930..53baf57cb 100644 Binary files a/getting_started/first_3d_game/img/05.spawning_mobs/24.connect_timer_to_main.webp and b/getting_started/first_3d_game/img/05.spawning_mobs/24.connect_timer_to_main.webp differ diff --git a/getting_started/first_3d_game/img/05.spawning_mobs/albedo_section.webp b/getting_started/first_3d_game/img/05.spawning_mobs/albedo_section.webp index 6d636b38d..fa8b40da6 100644 Binary files a/getting_started/first_3d_game/img/05.spawning_mobs/albedo_section.webp and b/getting_started/first_3d_game/img/05.spawning_mobs/albedo_section.webp differ diff --git a/getting_started/first_3d_game/img/05.spawning_mobs/standard_material.webp b/getting_started/first_3d_game/img/05.spawning_mobs/standard_material.webp deleted file mode 100644 index c79692564..000000000 Binary files a/getting_started/first_3d_game/img/05.spawning_mobs/standard_material.webp and /dev/null differ diff --git a/getting_started/first_3d_game/img/06.jump_and_squash/02.project_settings.png b/getting_started/first_3d_game/img/06.jump_and_squash/02.project_settings.png deleted file mode 100644 index 7dbcf8539..000000000 Binary files a/getting_started/first_3d_game/img/06.jump_and_squash/02.project_settings.png and /dev/null differ diff --git a/getting_started/first_3d_game/img/06.jump_and_squash/02.project_settings.webp b/getting_started/first_3d_game/img/06.jump_and_squash/02.project_settings.webp new file mode 100644 index 000000000..a6f7b8b01 Binary files /dev/null and b/getting_started/first_3d_game/img/06.jump_and_squash/02.project_settings.webp differ diff --git a/getting_started/first_3d_game/img/06.jump_and_squash/03.physics_layers.webp b/getting_started/first_3d_game/img/06.jump_and_squash/03.physics_layers.webp index d33537738..ea2b0538f 100644 Binary files a/getting_started/first_3d_game/img/06.jump_and_squash/03.physics_layers.webp and b/getting_started/first_3d_game/img/06.jump_and_squash/03.physics_layers.webp differ diff --git a/getting_started/first_3d_game/img/06.jump_and_squash/04.default_physics_properties.webp b/getting_started/first_3d_game/img/06.jump_and_squash/04.default_physics_properties.webp index 224ced61f..42a313d74 100644 Binary files a/getting_started/first_3d_game/img/06.jump_and_squash/04.default_physics_properties.webp and b/getting_started/first_3d_game/img/06.jump_and_squash/04.default_physics_properties.webp differ diff --git a/getting_started/first_3d_game/img/06.jump_and_squash/05.toggle_layer_and_mask.webp b/getting_started/first_3d_game/img/06.jump_and_squash/05.toggle_layer_and_mask.webp index 60c5a32e3..0a5558852 100644 Binary files a/getting_started/first_3d_game/img/06.jump_and_squash/05.toggle_layer_and_mask.webp and b/getting_started/first_3d_game/img/06.jump_and_squash/05.toggle_layer_and_mask.webp differ diff --git a/getting_started/first_3d_game/img/06.jump_and_squash/06.named_checkboxes.png b/getting_started/first_3d_game/img/06.jump_and_squash/06.named_checkboxes.png deleted file mode 100644 index 706543a00..000000000 Binary files a/getting_started/first_3d_game/img/06.jump_and_squash/06.named_checkboxes.png and /dev/null differ diff --git a/getting_started/first_3d_game/img/06.jump_and_squash/06.named_checkboxes.webp b/getting_started/first_3d_game/img/06.jump_and_squash/06.named_checkboxes.webp new file mode 100644 index 000000000..910ef5533 Binary files /dev/null and b/getting_started/first_3d_game/img/06.jump_and_squash/06.named_checkboxes.webp differ diff --git a/getting_started/first_3d_game/img/06.jump_and_squash/07.player_physics_mask.webp b/getting_started/first_3d_game/img/06.jump_and_squash/07.player_physics_mask.webp index 1de73f5da..b7302fa62 100644 Binary files a/getting_started/first_3d_game/img/06.jump_and_squash/07.player_physics_mask.webp and b/getting_started/first_3d_game/img/06.jump_and_squash/07.player_physics_mask.webp differ diff --git a/getting_started/first_3d_game/img/06.jump_and_squash/08.mob_physics_mask.webp b/getting_started/first_3d_game/img/06.jump_and_squash/08.mob_physics_mask.webp index baa131ed1..f823c2080 100644 Binary files a/getting_started/first_3d_game/img/06.jump_and_squash/08.mob_physics_mask.webp and b/getting_started/first_3d_game/img/06.jump_and_squash/08.mob_physics_mask.webp differ diff --git a/getting_started/first_3d_game/img/06.jump_and_squash/09.groups_tab.png b/getting_started/first_3d_game/img/06.jump_and_squash/09.groups_tab.png deleted file mode 100644 index 19decdb1a..000000000 Binary files a/getting_started/first_3d_game/img/06.jump_and_squash/09.groups_tab.png and /dev/null differ diff --git a/getting_started/first_3d_game/img/06.jump_and_squash/09.groups_tab.webp b/getting_started/first_3d_game/img/06.jump_and_squash/09.groups_tab.webp new file mode 100644 index 000000000..72f00f398 Binary files /dev/null and b/getting_started/first_3d_game/img/06.jump_and_squash/09.groups_tab.webp differ diff --git a/getting_started/first_3d_game/img/06.jump_and_squash/10.group_create_new.webp b/getting_started/first_3d_game/img/06.jump_and_squash/10.group_create_new.webp new file mode 100644 index 000000000..072f88ae2 Binary files /dev/null and b/getting_started/first_3d_game/img/06.jump_and_squash/10.group_create_new.webp differ diff --git a/getting_started/first_3d_game/img/06.jump_and_squash/10.group_scene_icon.png b/getting_started/first_3d_game/img/06.jump_and_squash/10.group_scene_icon.png deleted file mode 100644 index c5dad483a..000000000 Binary files a/getting_started/first_3d_game/img/06.jump_and_squash/10.group_scene_icon.png and /dev/null differ diff --git a/getting_started/first_3d_game/img/06.jump_and_squash/11.group_scene_groups.webp b/getting_started/first_3d_game/img/06.jump_and_squash/11.group_scene_groups.webp new file mode 100644 index 000000000..9f4d0d5d3 Binary files /dev/null and b/getting_started/first_3d_game/img/06.jump_and_squash/11.group_scene_groups.webp differ diff --git a/getting_started/first_3d_game/img/06.jump_and_squash/12.group_scene_icon.webp b/getting_started/first_3d_game/img/06.jump_and_squash/12.group_scene_icon.webp new file mode 100644 index 000000000..99cc7f5a1 Binary files /dev/null and b/getting_started/first_3d_game/img/06.jump_and_squash/12.group_scene_icon.webp differ diff --git a/getting_started/first_3d_game/img/07.killing_player/01.adding_area_node.png b/getting_started/first_3d_game/img/07.killing_player/01.adding_area_node.png deleted file mode 100644 index 7319633c6..000000000 Binary files a/getting_started/first_3d_game/img/07.killing_player/01.adding_area_node.png and /dev/null differ diff --git a/getting_started/first_3d_game/img/07.killing_player/01.adding_area_node.webp b/getting_started/first_3d_game/img/07.killing_player/01.adding_area_node.webp new file mode 100644 index 000000000..4c359f704 Binary files /dev/null and b/getting_started/first_3d_game/img/07.killing_player/01.adding_area_node.webp differ diff --git a/getting_started/first_3d_game/img/07.killing_player/02.cylinder_shape.png b/getting_started/first_3d_game/img/07.killing_player/02.cylinder_shape.png deleted file mode 100644 index 26cd5acb0..000000000 Binary files a/getting_started/first_3d_game/img/07.killing_player/02.cylinder_shape.png and /dev/null differ diff --git a/getting_started/first_3d_game/img/07.killing_player/02.cylinder_shape.webp b/getting_started/first_3d_game/img/07.killing_player/02.cylinder_shape.webp new file mode 100644 index 000000000..106bb5603 Binary files /dev/null and b/getting_started/first_3d_game/img/07.killing_player/02.cylinder_shape.webp differ diff --git a/getting_started/first_3d_game/img/07.killing_player/04.mob_detector_properties.webp b/getting_started/first_3d_game/img/07.killing_player/04.mob_detector_properties.webp index 51260b136..01ad64d1f 100644 Binary files a/getting_started/first_3d_game/img/07.killing_player/04.mob_detector_properties.webp and b/getting_started/first_3d_game/img/07.killing_player/04.mob_detector_properties.webp differ diff --git a/getting_started/first_3d_game/img/07.killing_player/05.body_entered_signal.png b/getting_started/first_3d_game/img/07.killing_player/05.body_entered_signal.png deleted file mode 100644 index 639af4d85..000000000 Binary files a/getting_started/first_3d_game/img/07.killing_player/05.body_entered_signal.png and /dev/null differ diff --git a/getting_started/first_3d_game/img/07.killing_player/05.body_entered_signal.webp b/getting_started/first_3d_game/img/07.killing_player/05.body_entered_signal.webp new file mode 100644 index 000000000..921617354 Binary files /dev/null and b/getting_started/first_3d_game/img/07.killing_player/05.body_entered_signal.webp differ diff --git a/getting_started/first_3d_game/img/07.killing_player/06.player_hit_signal.png b/getting_started/first_3d_game/img/07.killing_player/06.player_hit_signal.png deleted file mode 100644 index 608da0d4b..000000000 Binary files a/getting_started/first_3d_game/img/07.killing_player/06.player_hit_signal.png and /dev/null differ diff --git a/getting_started/first_3d_game/img/07.killing_player/06.player_hit_signal.webp b/getting_started/first_3d_game/img/07.killing_player/06.player_hit_signal.webp new file mode 100644 index 000000000..029af5c49 Binary files /dev/null and b/getting_started/first_3d_game/img/07.killing_player/06.player_hit_signal.webp differ diff --git a/getting_started/first_3d_game/img/09.adding_animations/02.new_animation.webp b/getting_started/first_3d_game/img/09.adding_animations/02.new_animation.webp index 5a2759bc7..a401b4523 100644 Binary files a/getting_started/first_3d_game/img/09.adding_animations/02.new_animation.webp and b/getting_started/first_3d_game/img/09.adding_animations/02.new_animation.webp differ diff --git a/getting_started/first_3d_game/img/09.adding_animations/03.float_name.png b/getting_started/first_3d_game/img/09.adding_animations/03.float_name.png deleted file mode 100644 index b5216cff7..000000000 Binary files a/getting_started/first_3d_game/img/09.adding_animations/03.float_name.png and /dev/null differ diff --git a/getting_started/first_3d_game/img/09.adding_animations/03.float_name.webp b/getting_started/first_3d_game/img/09.adding_animations/03.float_name.webp new file mode 100644 index 000000000..3d1d81208 Binary files /dev/null and b/getting_started/first_3d_game/img/09.adding_animations/03.float_name.webp differ diff --git a/getting_started/first_3d_game/img/09.adding_animations/03.timeline.png b/getting_started/first_3d_game/img/09.adding_animations/03.timeline.png deleted file mode 100644 index c9c92a36f..000000000 Binary files a/getting_started/first_3d_game/img/09.adding_animations/03.timeline.png and /dev/null differ diff --git a/getting_started/first_3d_game/img/09.adding_animations/03.timeline.webp b/getting_started/first_3d_game/img/09.adding_animations/03.timeline.webp new file mode 100644 index 000000000..706607b17 Binary files /dev/null and b/getting_started/first_3d_game/img/09.adding_animations/03.timeline.webp differ diff --git a/getting_started/first_3d_game/img/09.adding_animations/04.autoplay_and_loop.png b/getting_started/first_3d_game/img/09.adding_animations/04.autoplay_and_loop.png deleted file mode 100644 index 11e42f445..000000000 Binary files a/getting_started/first_3d_game/img/09.adding_animations/04.autoplay_and_loop.png and /dev/null differ diff --git a/getting_started/first_3d_game/img/09.adding_animations/04.autoplay_and_loop.webp b/getting_started/first_3d_game/img/09.adding_animations/04.autoplay_and_loop.webp new file mode 100644 index 000000000..afa178dcf Binary files /dev/null and b/getting_started/first_3d_game/img/09.adding_animations/04.autoplay_and_loop.webp differ diff --git a/getting_started/first_3d_game/img/09.adding_animations/05.pin_icon.png b/getting_started/first_3d_game/img/09.adding_animations/05.pin_icon.png deleted file mode 100644 index b357d4acc..000000000 Binary files a/getting_started/first_3d_game/img/09.adding_animations/05.pin_icon.png and /dev/null differ diff --git a/getting_started/first_3d_game/img/09.adding_animations/05.pin_icon.webp b/getting_started/first_3d_game/img/09.adding_animations/05.pin_icon.webp new file mode 100644 index 000000000..8478cd103 Binary files /dev/null and b/getting_started/first_3d_game/img/09.adding_animations/05.pin_icon.webp differ diff --git a/getting_started/first_3d_game/img/09.adding_animations/06.animation_duration.webp b/getting_started/first_3d_game/img/09.adding_animations/06.animation_duration.webp index 55f2d15c8..8b221c891 100644 Binary files a/getting_started/first_3d_game/img/09.adding_animations/06.animation_duration.webp and b/getting_started/first_3d_game/img/09.adding_animations/06.animation_duration.webp differ diff --git a/getting_started/first_3d_game/img/09.adding_animations/07.editable_timeline.webp b/getting_started/first_3d_game/img/09.adding_animations/07.editable_timeline.webp deleted file mode 100644 index 851bad230..000000000 Binary files a/getting_started/first_3d_game/img/09.adding_animations/07.editable_timeline.webp and /dev/null differ diff --git a/getting_started/first_3d_game/img/09.adding_animations/09.creating_first_keyframe.webp b/getting_started/first_3d_game/img/09.adding_animations/09.creating_first_keyframe.webp index 42d7994f8..1207798e7 100644 Binary files a/getting_started/first_3d_game/img/09.adding_animations/09.creating_first_keyframe.webp and b/getting_started/first_3d_game/img/09.adding_animations/09.creating_first_keyframe.webp differ diff --git a/getting_started/first_3d_game/img/09.adding_animations/10.initial_keys.webp b/getting_started/first_3d_game/img/09.adding_animations/10.initial_keys.webp index f9d13ec63..dd71248be 100644 Binary files a/getting_started/first_3d_game/img/09.adding_animations/10.initial_keys.webp and b/getting_started/first_3d_game/img/09.adding_animations/10.initial_keys.webp differ diff --git a/getting_started/first_3d_game/img/09.adding_animations/11.moving_keys.webp b/getting_started/first_3d_game/img/09.adding_animations/11.moving_keys.webp index 171787007..ce18148dd 100644 Binary files a/getting_started/first_3d_game/img/09.adding_animations/11.moving_keys.webp and b/getting_started/first_3d_game/img/09.adding_animations/11.moving_keys.webp differ diff --git a/getting_started/first_3d_game/img/09.adding_animations/12.second_keys_values.webp b/getting_started/first_3d_game/img/09.adding_animations/12.second_keys_values.webp index 8b96c919d..9e2966d02 100644 Binary files a/getting_started/first_3d_game/img/09.adding_animations/12.second_keys_values.webp and b/getting_started/first_3d_game/img/09.adding_animations/12.second_keys_values.webp differ diff --git a/getting_started/first_3d_game/img/09.adding_animations/13.second_keys.webp b/getting_started/first_3d_game/img/09.adding_animations/13.second_keys.webp index 8333c9eca..b425d6af0 100644 Binary files a/getting_started/first_3d_game/img/09.adding_animations/13.second_keys.webp and b/getting_started/first_3d_game/img/09.adding_animations/13.second_keys.webp differ diff --git a/getting_started/first_3d_game/img/09.adding_animations/14.play_button.png b/getting_started/first_3d_game/img/09.adding_animations/14.play_button.png deleted file mode 100644 index dd3cc6b8f..000000000 Binary files a/getting_started/first_3d_game/img/09.adding_animations/14.play_button.png and /dev/null differ diff --git a/getting_started/first_3d_game/img/09.adding_animations/14.play_button.webp b/getting_started/first_3d_game/img/09.adding_animations/14.play_button.webp new file mode 100644 index 000000000..110c8acd6 Binary files /dev/null and b/getting_started/first_3d_game/img/09.adding_animations/14.play_button.webp differ diff --git a/getting_started/first_3d_game/img/09.adding_animations/16.easing_property.png b/getting_started/first_3d_game/img/09.adding_animations/16.easing_property.png deleted file mode 100644 index 8c7b36be0..000000000 Binary files a/getting_started/first_3d_game/img/09.adding_animations/16.easing_property.png and /dev/null differ diff --git a/getting_started/first_3d_game/img/09.adding_animations/16.easing_property.webp b/getting_started/first_3d_game/img/09.adding_animations/16.easing_property.webp new file mode 100644 index 000000000..921289559 Binary files /dev/null and b/getting_started/first_3d_game/img/09.adding_animations/16.easing_property.webp differ diff --git a/getting_started/first_3d_game/img/09.adding_animations/17.ease_out.png b/getting_started/first_3d_game/img/09.adding_animations/17.ease_out.png deleted file mode 100644 index 28b6c5498..000000000 Binary files a/getting_started/first_3d_game/img/09.adding_animations/17.ease_out.png and /dev/null differ diff --git a/getting_started/first_3d_game/img/09.adding_animations/17.ease_out.webp b/getting_started/first_3d_game/img/09.adding_animations/17.ease_out.webp new file mode 100644 index 000000000..314c17372 Binary files /dev/null and b/getting_started/first_3d_game/img/09.adding_animations/17.ease_out.webp differ diff --git a/getting_started/first_3d_game/img/09.adding_animations/18.ease_out_second_rotation_key.png b/getting_started/first_3d_game/img/09.adding_animations/18.ease_out_second_rotation_key.png deleted file mode 100644 index 7fc86e31f..000000000 Binary files a/getting_started/first_3d_game/img/09.adding_animations/18.ease_out_second_rotation_key.png and /dev/null differ diff --git a/getting_started/first_3d_game/img/09.adding_animations/18.ease_out_second_rotation_key.webp b/getting_started/first_3d_game/img/09.adding_animations/18.ease_out_second_rotation_key.webp new file mode 100644 index 000000000..e21b2e7b5 Binary files /dev/null and b/getting_started/first_3d_game/img/09.adding_animations/18.ease_out_second_rotation_key.webp differ diff --git a/getting_started/first_3d_game/img/09.adding_animations/19.ease_in_second_translation_key.png b/getting_started/first_3d_game/img/09.adding_animations/19.ease_in_second_translation_key.png deleted file mode 100644 index 9dc4fab3e..000000000 Binary files a/getting_started/first_3d_game/img/09.adding_animations/19.ease_in_second_translation_key.png and /dev/null differ diff --git a/getting_started/first_3d_game/img/09.adding_animations/19.ease_in_second_translation_key.webp b/getting_started/first_3d_game/img/09.adding_animations/19.ease_in_second_translation_key.webp new file mode 100644 index 000000000..192e70c46 Binary files /dev/null and b/getting_started/first_3d_game/img/09.adding_animations/19.ease_in_second_translation_key.webp differ diff --git a/getting_started/first_3d_game/img/09.adding_animations/21.script_icon.png b/getting_started/first_3d_game/img/09.adding_animations/21.script_icon.png deleted file mode 100644 index 11a646d20..000000000 Binary files a/getting_started/first_3d_game/img/09.adding_animations/21.script_icon.png and /dev/null differ diff --git a/getting_started/first_3d_game/img/09.adding_animations/21.script_icon.webp b/getting_started/first_3d_game/img/09.adding_animations/21.script_icon.webp new file mode 100644 index 000000000..6cb96a633 Binary files /dev/null and b/getting_started/first_3d_game/img/09.adding_animations/21.script_icon.webp differ diff --git a/getting_started/first_3d_game/img/09.adding_animations/animation_player_dock.webp b/getting_started/first_3d_game/img/09.adding_animations/animation_player_dock.webp index 7d9b10ec0..ee6c0a556 100644 Binary files a/getting_started/first_3d_game/img/09.adding_animations/animation_player_dock.webp and b/getting_started/first_3d_game/img/09.adding_animations/animation_player_dock.webp differ diff --git a/getting_started/first_3d_game/img/09.adding_animations/curves.webp b/getting_started/first_3d_game/img/09.adding_animations/curves.webp index 4c0c7e1df..be30d7464 100644 Binary files a/getting_started/first_3d_game/img/09.adding_animations/curves.webp and b/getting_started/first_3d_game/img/09.adding_animations/curves.webp differ diff --git a/getting_started/first_3d_game/img/09.adding_animations/second_keys_both.webp b/getting_started/first_3d_game/img/09.adding_animations/second_keys_both.webp index 71589bdf7..855c4d3f0 100644 Binary files a/getting_started/first_3d_game/img/09.adding_animations/second_keys_both.webp and b/getting_started/first_3d_game/img/09.adding_animations/second_keys_both.webp differ diff --git a/getting_started/first_3d_game/img/09.adding_animations/timeline_05_click.webp b/getting_started/first_3d_game/img/09.adding_animations/timeline_05_click.webp index 762f3759e..93014ab81 100644 Binary files a/getting_started/first_3d_game/img/09.adding_animations/timeline_05_click.webp and b/getting_started/first_3d_game/img/09.adding_animations/timeline_05_click.webp differ diff --git a/getting_started/introduction/introduction_to_godot.rst b/getting_started/introduction/introduction_to_godot.rst index ec6e02f61..17888b345 100644 --- a/getting_started/introduction/introduction_to_godot.rst +++ b/getting_started/introduction/introduction_to_godot.rst @@ -89,9 +89,10 @@ Godot-specific and tightly integrated language with a lightweight syntax, or :ref:`C# `, which is popular in the games industry. These are the two main scripting languages we support. -With the GDExtension technology, you can also write -gameplay or high-performance algorithms in C or C++ without recompiling the -engine. You can use this technology to integrate third-party libraries and other +With the :ref:`GDExtension ` technology, you can also +write gameplay or high-performance algorithms in :ref:`C++ ` or +:ref:`other languages ` without recompiling the engine. +You can use this technology to integrate third-party libraries and other Software Development Kits (SDK) in the engine. Of course, you can also directly add modules and features to the engine, as it's diff --git a/getting_started/introduction/learning_new_features.rst b/getting_started/introduction/learning_new_features.rst index 569272b2b..6a6332cae 100644 --- a/getting_started/introduction/learning_new_features.rst +++ b/getting_started/introduction/learning_new_features.rst @@ -125,7 +125,7 @@ information: `more information here `_). Alternatively, you can use a program like `ShareX `_ - on Windows, or `FlameShot `_ on Linux. + on Windows, or `Flameshot `_ on Windows/macOS/Linux. 5. Sharing a video of your running game can also be really **useful to troubleshoot your game**. You can use programs like `OBS Studio diff --git a/getting_started/step_by_step/img/instancing_2d_scene_select.webp b/getting_started/step_by_step/img/instancing_2d_scene_select.webp index f6f826154..1c6a09174 100644 Binary files a/getting_started/step_by_step/img/instancing_2d_scene_select.webp and b/getting_started/step_by_step/img/instancing_2d_scene_select.webp differ diff --git a/getting_started/step_by_step/img/instancing_ball_instanced.webp b/getting_started/step_by_step/img/instancing_ball_instanced.webp index e2beb8894..e17c89472 100644 Binary files a/getting_started/step_by_step/img/instancing_ball_instanced.webp and b/getting_started/step_by_step/img/instancing_ball_instanced.webp differ diff --git a/getting_started/step_by_step/img/instancing_ball_scene_open.webp b/getting_started/step_by_step/img/instancing_ball_scene_open.webp index 3c003a7d5..67d7d09f7 100644 Binary files a/getting_started/step_by_step/img/instancing_ball_scene_open.webp and b/getting_started/step_by_step/img/instancing_ball_scene_open.webp differ diff --git a/getting_started/step_by_step/img/instancing_import_and_edit_button.webp b/getting_started/step_by_step/img/instancing_import_and_edit_button.webp index a5db2078e..a71cd9d15 100644 Binary files a/getting_started/step_by_step/img/instancing_import_and_edit_button.webp and b/getting_started/step_by_step/img/instancing_import_and_edit_button.webp differ diff --git a/getting_started/step_by_step/img/instancing_import_button.webp b/getting_started/step_by_step/img/instancing_import_button.webp index 1d05b3198..aa31ce42d 100644 Binary files a/getting_started/step_by_step/img/instancing_import_button.webp and b/getting_started/step_by_step/img/instancing_import_button.webp differ diff --git a/getting_started/step_by_step/img/instancing_instance_child_window.webp b/getting_started/step_by_step/img/instancing_instance_child_window.webp index 084a7de31..f03d05afa 100644 Binary files a/getting_started/step_by_step/img/instancing_instance_child_window.webp and b/getting_started/step_by_step/img/instancing_instance_child_window.webp differ diff --git a/getting_started/step_by_step/img/instancing_main_scene.webp b/getting_started/step_by_step/img/instancing_main_scene.webp index 660eb3382..ab91d5805 100644 Binary files a/getting_started/step_by_step/img/instancing_main_scene.webp and b/getting_started/step_by_step/img/instancing_main_scene.webp differ diff --git a/getting_started/step_by_step/img/instancing_main_scene_with_balls.webp b/getting_started/step_by_step/img/instancing_main_scene_with_balls.webp index 7934c1a88..6923a28ca 100644 Binary files a/getting_started/step_by_step/img/instancing_main_scene_with_balls.webp and b/getting_started/step_by_step/img/instancing_main_scene_with_balls.webp differ diff --git a/getting_started/step_by_step/img/instancing_scene_link_button.webp b/getting_started/step_by_step/img/instancing_scene_link_button.webp index 23d39295d..396d0b9ff 100644 Binary files a/getting_started/step_by_step/img/instancing_scene_link_button.webp and b/getting_started/step_by_step/img/instancing_scene_link_button.webp differ diff --git a/getting_started/step_by_step/img/nodes_and_scenes_02_scene_dock.webp b/getting_started/step_by_step/img/nodes_and_scenes_02_scene_dock.webp index 28e4265fd..a49828b42 100644 Binary files a/getting_started/step_by_step/img/nodes_and_scenes_02_scene_dock.webp and b/getting_started/step_by_step/img/nodes_and_scenes_02_scene_dock.webp differ diff --git a/getting_started/step_by_step/img/nodes_and_scenes_03_create_node_window.webp b/getting_started/step_by_step/img/nodes_and_scenes_03_create_node_window.webp index 42e048910..b94c7f9d5 100644 Binary files a/getting_started/step_by_step/img/nodes_and_scenes_03_create_node_window.webp and b/getting_started/step_by_step/img/nodes_and_scenes_03_create_node_window.webp differ diff --git a/getting_started/step_by_step/img/nodes_and_scenes_04_create_label_window.webp b/getting_started/step_by_step/img/nodes_and_scenes_04_create_label_window.webp index ea8175008..df590dbef 100644 Binary files a/getting_started/step_by_step/img/nodes_and_scenes_04_create_label_window.webp and b/getting_started/step_by_step/img/nodes_and_scenes_04_create_label_window.webp differ diff --git a/getting_started/step_by_step/img/nodes_and_scenes_10_save_scene_as.webp b/getting_started/step_by_step/img/nodes_and_scenes_10_save_scene_as.webp index ca1cbf840..f88279047 100644 Binary files a/getting_started/step_by_step/img/nodes_and_scenes_10_save_scene_as.webp and b/getting_started/step_by_step/img/nodes_and_scenes_10_save_scene_as.webp differ diff --git a/getting_started/step_by_step/img/nodes_and_scenes_14_select_main_scene.webp b/getting_started/step_by_step/img/nodes_and_scenes_14_select_main_scene.webp index e91d18013..01d4b26e3 100644 Binary files a/getting_started/step_by_step/img/nodes_and_scenes_14_select_main_scene.webp and b/getting_started/step_by_step/img/nodes_and_scenes_14_select_main_scene.webp differ diff --git a/getting_started/step_by_step/img/nodes_and_scenes_3d_scene_example.png b/getting_started/step_by_step/img/nodes_and_scenes_3d_scene_example.png deleted file mode 100644 index facca0297..000000000 Binary files a/getting_started/step_by_step/img/nodes_and_scenes_3d_scene_example.png and /dev/null differ diff --git a/getting_started/step_by_step/img/nodes_and_scenes_3d_scene_example.webp b/getting_started/step_by_step/img/nodes_and_scenes_3d_scene_example.webp new file mode 100644 index 000000000..833225938 Binary files /dev/null and b/getting_started/step_by_step/img/nodes_and_scenes_3d_scene_example.webp differ diff --git a/getting_started/step_by_step/img/nodes_and_scenes_character_nodes.webp b/getting_started/step_by_step/img/nodes_and_scenes_character_nodes.webp index ff47bfa27..204dfbd33 100644 Binary files a/getting_started/step_by_step/img/nodes_and_scenes_character_nodes.webp and b/getting_started/step_by_step/img/nodes_and_scenes_character_nodes.webp differ diff --git a/getting_started/step_by_step/img/nodes_and_scenes_nodes.webp b/getting_started/step_by_step/img/nodes_and_scenes_nodes.webp index 53e138ada..607ce3512 100644 Binary files a/getting_started/step_by_step/img/nodes_and_scenes_nodes.webp and b/getting_started/step_by_step/img/nodes_and_scenes_nodes.webp differ diff --git a/getting_started/step_by_step/img/scripting_first_script_add_sprite_node.webp b/getting_started/step_by_step/img/scripting_first_script_add_sprite_node.webp index 43086943a..9086f6c71 100644 Binary files a/getting_started/step_by_step/img/scripting_first_script_add_sprite_node.webp and b/getting_started/step_by_step/img/scripting_first_script_add_sprite_node.webp differ diff --git a/getting_started/step_by_step/img/scripting_first_script_attach_script.webp b/getting_started/step_by_step/img/scripting_first_script_attach_script.webp index 0998baa51..29b5202ea 100644 Binary files a/getting_started/step_by_step/img/scripting_first_script_attach_script.webp and b/getting_started/step_by_step/img/scripting_first_script_attach_script.webp differ diff --git a/getting_started/step_by_step/img/scripting_first_script_print_hello_world.webp b/getting_started/step_by_step/img/scripting_first_script_print_hello_world.webp index fb64d5ca2..51f005a1b 100644 Binary files a/getting_started/step_by_step/img/scripting_first_script_print_hello_world.webp and b/getting_started/step_by_step/img/scripting_first_script_print_hello_world.webp differ diff --git a/getting_started/step_by_step/img/scripting_gdscript.png b/getting_started/step_by_step/img/scripting_gdscript.png deleted file mode 100644 index ed5b938f5..000000000 Binary files a/getting_started/step_by_step/img/scripting_gdscript.png and /dev/null differ diff --git a/getting_started/step_by_step/img/scripting_gdscript.webp b/getting_started/step_by_step/img/scripting_gdscript.webp new file mode 100644 index 000000000..84cd4c503 Binary files /dev/null and b/getting_started/step_by_step/img/scripting_gdscript.webp differ diff --git a/getting_started/step_by_step/img/signals_05_add_button.webp b/getting_started/step_by_step/img/signals_05_add_button.webp index 07789d613..821002521 100644 Binary files a/getting_started/step_by_step/img/signals_05_add_button.webp and b/getting_started/step_by_step/img/signals_05_add_button.webp differ diff --git a/getting_started/step_by_step/img/signals_14_signals_connection_info.webp b/getting_started/step_by_step/img/signals_14_signals_connection_info.webp index 0eb336c5e..3277dd4c5 100644 Binary files a/getting_started/step_by_step/img/signals_14_signals_connection_info.webp and b/getting_started/step_by_step/img/signals_14_signals_connection_info.webp differ diff --git a/getting_started/step_by_step/img/signals_15_scene_tree.png b/getting_started/step_by_step/img/signals_15_scene_tree.png deleted file mode 100644 index ff7a6d6ef..000000000 Binary files a/getting_started/step_by_step/img/signals_15_scene_tree.png and /dev/null differ diff --git a/getting_started/step_by_step/img/signals_15_scene_tree.webp b/getting_started/step_by_step/img/signals_15_scene_tree.webp new file mode 100644 index 000000000..842392a6d Binary files /dev/null and b/getting_started/step_by_step/img/signals_15_scene_tree.webp differ diff --git a/getting_started/step_by_step/img/signals_16_click_script.png b/getting_started/step_by_step/img/signals_16_click_script.png deleted file mode 100644 index f0a7b2c65..000000000 Binary files a/getting_started/step_by_step/img/signals_16_click_script.png and /dev/null differ diff --git a/getting_started/step_by_step/img/signals_16_click_script.webp b/getting_started/step_by_step/img/signals_16_click_script.webp new file mode 100644 index 000000000..cfb49900d Binary files /dev/null and b/getting_started/step_by_step/img/signals_16_click_script.webp differ diff --git a/getting_started/step_by_step/img/signals_18_timer_autostart.png b/getting_started/step_by_step/img/signals_18_timer_autostart.png deleted file mode 100644 index c39abe13e..000000000 Binary files a/getting_started/step_by_step/img/signals_18_timer_autostart.png and /dev/null differ diff --git a/getting_started/step_by_step/img/signals_18_timer_autostart.webp b/getting_started/step_by_step/img/signals_18_timer_autostart.webp new file mode 100644 index 000000000..bd5d4268a Binary files /dev/null and b/getting_started/step_by_step/img/signals_18_timer_autostart.webp differ diff --git a/getting_started/step_by_step/instancing.rst b/getting_started/step_by_step/instancing.rst index c2832da3c..841c56a69 100644 --- a/getting_started/step_by_step/instancing.rst +++ b/getting_started/step_by_step/instancing.rst @@ -52,9 +52,10 @@ you to download the ball's sample project we prepared for you: `instancing_starter.zip `_. Extract the archive on your computer. To import it, you need the Project Manager. -The Project Manager is accessed by opening Godot, or if you already have Godot opened, click on *Project -> Quit to Project List* (:kbd:`Ctrl + Shift + Q`, :kbd:`Ctrl + Option + Cmd + Q` on macOS) +The Project Manager is accessed by opening Godot, or if you already have Godot +opened, click on :menu:`Project > Quit to Project List` (:kbd:`Ctrl + Shift + Q`, :kbd:`Ctrl + Option + Cmd + Q` on macOS) -In the Project Manager, click the *Import* button to import the project. +In the Project Manager, click the :button:`Import` button to import the project. .. image:: img/instancing_import_button.webp @@ -63,12 +64,12 @@ Double-click the ``project.godot`` file to open it. .. image:: img/instancing_import_project_file.webp -Finally, click the Import & Edit button. +Finally, click the :button:`Import` button. .. image:: img/instancing_import_and_edit_button.webp A window notifying you that the project was last opened in an older Godot version -may appear, that's not an issue. Click *Ok* to open the project. +may appear, that's not an issue. Click :button:`Ok` to open the project. The project contains two packed scenes: ``main.tscn``, containing walls against which the ball collides, and ``ball.tscn``. The Main scene should open @@ -118,7 +119,7 @@ Editing scenes and instances There is more to instances. With this feature, you can: 1. Change the properties of one ball without affecting the others using the - Inspector. + :ui:`Inspector`. 2. Change the default properties of every Ball by opening the ``ball.tscn`` scene and making a change to the Ball node there. Upon saving, all instances of the Ball in the project will see their values update. @@ -130,8 +131,8 @@ Let's try this. Double-click ``ball.tscn`` in the FileSystem to open it. .. image:: img/instancing_ball_scene_open.webp -In the Scene dock on the left, select the Ball node. Then, in the Inspector on the right, click on the PhysicsMaterial -property to expand it. +In the Scene dock on the left, select the Ball node. Then, in the :ui:`Inspector` on the +right, click on the :inspector:`PhysicsMaterial` property to expand it. .. image:: img/instancing_physics_material_expand.webp @@ -149,8 +150,8 @@ on the corresponding tab above the viewport. .. image:: img/instancing_scene_tabs.webp -Select one of the instanced Ball nodes and, in the Inspector, set its Gravity -Scale value to ``10``. +Select one of the instanced Ball nodes and, in the :ui:`Inspector`, set its +:inspector:`Gravity Scale` value to ``10``. .. image:: img/instancing_property_gravity_scale.png @@ -167,11 +168,11 @@ Rerun the game and notice how this ball now falls much faster than the others. .. note:: - You may notice you are unable to change the values of the PhysicsMaterial - of the ball. This is because PhysicsMaterial is a *resource*, and needs + You may notice you are unable to change the values of the :inspector:`PhysicsMaterial` + of the ball. This is because :inspector:`PhysicsMaterial` is a *resource*, and needs to be made unique before you can edit it in a scene that is linking to its original scene. To make a resource unique for one instance, right-click on - the **Physics Material** property in the Inspector and click **Make Unique** + the :inspector:`Physics Material` property in the :ui:`Inspector` and click :button:`Make Unique` in the context menu. Resources are another essential building block of Godot games we will cover diff --git a/getting_started/step_by_step/nodes_and_scenes.rst b/getting_started/step_by_step/nodes_and_scenes.rst index dc8dd1193..627c345b5 100644 --- a/getting_started/step_by_step/nodes_and_scenes.rst +++ b/getting_started/step_by_step/nodes_and_scenes.rst @@ -48,7 +48,7 @@ Scenes allow you to structure your game's code however you want. You can **compose nodes** to create custom and complex node types, like a game character that runs and jumps, a life bar, a chest with which you can interact, and more. -.. image:: img/nodes_and_scenes_3d_scene_example.png +.. image:: img/nodes_and_scenes_3d_scene_example.webp The Godot editor essentially is a **scene editor**. It has plenty of tools for editing 2D and 3D scenes, as well as user interfaces. A Godot project can @@ -72,24 +72,25 @@ opening the project, you should see an empty editor. .. image:: img/nodes_and_scenes_01_empty_editor.webp -In an empty scene, the Scene dock on the left shows several options to add a -root node quickly. "2D Scene" adds a :ref:`Node2D ` node, -"3D Scene" adds a :ref:`Node3D ` node, -and "User Interface" adds a :ref:`Control ` node. +In an empty scene, the :ui:`Scene` dock on the left shows several options to add a +root node quickly. :button:`2D Scene` adds a :ref:`Node2D ` node, +:button:`3D Scene` adds a :ref:`Node3D ` node, +and :button:`User Interface` adds a :ref:`Control ` node. These presets are here for convenience; they are not mandatory. -"Other Node" lets you select any node to be the root node. -In an empty scene, "Other Node" is equivalent to pressing the "Add Child Node" +:button:`Other Node` lets you select any node to be the root node. +In an empty scene, :button:`Other Node` is equivalent to pressing the :button:`Add Child Node` button at the top-left of the Scene dock, which usually adds a new node as a child of the currently selected node. We're going to add a single :ref:`Label ` node to our scene. Its function is to draw text on the screen. -Press the "Add Child Node" button or "Other Node" to create a root node. +Press the :button:`Add Child Node` button or :button:`Other Node` to create a +root node. .. image:: img/nodes_and_scenes_02_scene_dock.webp -The Create Node dialog opens, showing the long list of available nodes. +The :ui:`Create New Node` dialog opens, showing the long list of available nodes. .. image:: img/nodes_and_scenes_03_create_node_window.webp @@ -97,8 +98,8 @@ Select the Label node. You can type its name to filter down the list. .. image:: img/nodes_and_scenes_04_create_label_window.webp -Click on the Label node to select it and click the Create button at the bottom -of the window. +Click on the Label node to select it and click the :button:`Create` button at +the bottom of the window. .. image:: img/nodes_and_scenes_05_editor_with_label.webp @@ -110,11 +111,11 @@ and the node's properties appear in the Inspector dock on the right. Changing a node's properties ---------------------------- -The next step is to change the Label's "Text" property. Let's change it to -"Hello World". +The next step is to change the Label's :inspector:`Text` property. Let's change +it to "Hello World". Head to the Inspector dock on the right of the viewport. Click inside the field -below the Text property and type "Hello World". +below the :inspector:`Text` property and type "Hello World". .. image:: img/nodes_and_scenes_06_label_text.webp @@ -137,17 +138,18 @@ move it to the center of the view delimited by the rectangle. Running the scene ----------------- -Everything's ready to run the scene! Press the **Run Current Scene** button in -the top-right of the screen or press :kbd:`F6` (:kbd:`Cmd + R` on macOS). +Everything's ready to run the scene! Press the :button:`Run Current Scene` +button in the top-right of the screen or press :kbd:`F6` (:kbd:`Cmd + R` on +macOS). .. image:: img/nodes_and_scenes_09_play_scene_button.webp -A popup invites you to save the scene, which is required to run it. -Click the Save button in the file browser to save it as ``label.tscn``. +A popup invites you to save the scene, which is required to run it. Click the +:button:`Save` button in the file browser to save it as ``label.tscn``. .. image:: img/nodes_and_scenes_10_save_scene_as.webp -.. note:: The Save Scene As dialog, like other file dialogs in the editor, only +.. note:: The :ui:`Save Scene As` dialog, like other file dialogs in the editor, only allows you to save files inside the project. The ``res://`` path at the top of the window represents the project's root directory and stands for "resource path". For more information about file paths in @@ -162,8 +164,8 @@ Close the window or press :kbd:`F8` (:kbd:`Cmd + .` on macOS) to quit the runnin Setting the main scene ---------------------- -To run our test scene, we used the **Run Current Scene** button. Another button -next to it, **Run Project**, allows you to set and run the project's +To run our test scene, we used the :button:`Run Current Scene` button. Another button +next to it, :button:`Run Project`, allows you to set and run the project's **main scene**. You can also press :kbd:`F5` (:kbd:`Cmd + B` on macOS) to do so. .. image:: img/nodes_and_scenes_12_play_button.webp @@ -176,8 +178,8 @@ A popup window appears and invites you to select the main scene. .. image:: img/nodes_and_scenes_13_main_scene_popup.webp -Click the Select button, and in the file dialog that appears, double click on -``label.tscn``. +Click the :button:`Select` button, and in the file dialog that appears, double +click on ``label.tscn``. .. image:: img/nodes_and_scenes_14_select_main_scene.webp @@ -186,9 +188,8 @@ will use this scene as a starting point. .. note:: The editor saves the main scene's path in a project.godot file in your project's directory. While you can edit this text file directly to - change project settings, you can also use the "Project -> Project - Settings" window to do so. For more information, see - :ref:`doc_project_settings`. + change project settings, you can also use the :menu:`Project > Project Settings` + window to do so. For more information, see :ref:`doc_project_settings`. In the next part, we will discuss another key concept in games and in Godot: creating instances of a scene. diff --git a/getting_started/step_by_step/scripting_first_script.rst b/getting_started/step_by_step/scripting_first_script.rst index 788024910..144e6d1c2 100644 --- a/getting_started/step_by_step/scripting_first_script.rst +++ b/getting_started/step_by_step/scripting_first_script.rst @@ -41,8 +41,8 @@ icon, which we often use for prototyping in the community. .. image:: img/scripting_first_script_icon.svg -We need to create a Sprite2D node to display it in the game. In the Scene dock, -click the **Other Node** button. +We need to create a Sprite2D node to display it in the game. In the :ui:`Scene` dock, +click the :button:`Other Node` button. .. image:: img/scripting_first_script_click_other_node.webp @@ -51,14 +51,14 @@ to create the node. .. image:: img/scripting_first_script_add_sprite_node.webp -Your Scene tab should now only have a Sprite2D node. +Your :ui:`Scene` tab should now only have a Sprite2D node. .. image:: img/scripting_first_script_scene_tree.webp -A Sprite2D node needs a texture to display. In the Inspector on the right, you -can see that the **Texture** property says ````. To display the Godot icon, -click and drag the file ``icon.svg`` from the FileSystem dock onto the Texture -slot. +A Sprite2D node needs a texture to display. In the :ui:`Inspector` on the right, you +can see that the :inspector:`Texture` property says ````. To display the +Godot icon, click and drag the file ``icon.svg`` from the FileSystem dock onto the +Texture slot. .. image:: img/scripting_first_script_setting_texture.webp @@ -75,16 +75,16 @@ Creating a new script --------------------- To create and attach a new script to our node, right-click on Sprite2D in the -Scene dock and select **Attach Script**. +Scene dock and select :button:`Attach Script`. .. image:: img/scripting_first_script_attach_script.webp -The **Attach Node Script** window appears. It allows you to select the script's +The :ui:`Attach Node Script` window appears. It allows you to select the script's language and file path, among other options. -Change the **Template** field from ``Node: Default`` to ``Object: Empty`` to +Change the :ui:`Template` field from ``Node: Default`` to ``Object: Empty`` to start with a clean file. Leave the other options set to their default values and -click the **Create** button to create the script. +click the :button:`Create` button to create the script. .. image:: img/scripting_first_script_attach_node_script.webp @@ -93,7 +93,7 @@ click the **Create** button to create the script. C# script names need to match their class name. In this case, you should name the file ``MySprite2D.cs``. -The Script workspace should appear with your new ``sprite_2d.gd`` file open and +The :ui:`Script` workspace should appear with your new ``sprite_2d.gd`` file open and the following line of code: .. tabs:: @@ -120,16 +120,16 @@ node, including classes it extends, like ``Node2D``, ``CanvasItem``, and class will implicitly extend :ref:`RefCounted `, which Godot uses to manage your application's memory. -Inherited properties include the ones you can see in the Inspector dock, like +Inherited properties include the ones you can see in the :ui:`Inspector` dock, like our node's ``texture``. .. note:: - By default, the Inspector displays a node's properties in "Title Case", with + By default, the :ui:`Inspector` displays a node's properties in "Title Case", with capitalized words separated by a space. In GDScript code, these properties are in "snake_case", which is lowercase with words separated by an underscore. - You can hover over any property's name in the Inspector to see a description and + You can hover over any property's name in the :ui:`Inspector` to see a description and its identifier in code. Hello, world! @@ -165,7 +165,7 @@ this function. red and display the following error message: "Indented block expected". Save the scene as ``sprite_2d.tscn`` if you haven't already, then press :kbd:`F6` (:kbd:`Cmd + R` on macOS) -to run it. Look at the **Output** bottom panel that expands. +to run it. Look at the :ui:`Output` bottom panel that expands. It should display "Hello, world!". .. image:: img/scripting_first_script_print_hello_world.webp @@ -178,7 +178,7 @@ Turning around It's time to make our node move and rotate. To do so, we're going to add two member variables to our script: the movement speed in pixels per second and the -angular speed in radians per second. Add the following after the ``extends Sprite2D`` line. +angular speed in radians per second. Add the following after the ``extends Sprite2D`` line. .. tabs:: .. code-tab:: gdscript GDScript diff --git a/getting_started/step_by_step/scripting_languages.rst b/getting_started/step_by_step/scripting_languages.rst index cde7c62fa..a8bdd1ecd 100644 --- a/getting_started/step_by_step/scripting_languages.rst +++ b/getting_started/step_by_step/scripting_languages.rst @@ -45,7 +45,7 @@ language specifically for Godot and the needs of game developers. It has a lightweight and straightforward syntax and provides the tightest integration with Godot. -.. image:: img/scripting_gdscript.png +.. image:: img/scripting_gdscript.webp For C#, you will need an external code editor like `VSCode `_ or Visual Studio. While C# support is diff --git a/getting_started/step_by_step/scripting_player_input.rst b/getting_started/step_by_step/scripting_player_input.rst index 1caa18cd4..9583a774a 100644 --- a/getting_started/step_by_step/scripting_player_input.rst +++ b/getting_started/step_by_step/scripting_player_input.rst @@ -74,8 +74,8 @@ The two actions we use above, "ui_left" and "ui_right", are predefined in every Godot project. They respectively trigger when the player presses the left and right arrows on the keyboard or left and right on a gamepad's D-pad. -.. note:: You can see and edit input actions in your project by going to Project - -> Project Settings and clicking on the Input Map tab. +.. note:: You can see and edit input actions in your project by going to + :menu:`Project > Project Settings` and clicking on the :ui:`Input Map` tab. Finally, we use the ``direction`` as a multiplier when we update the node's ``rotation``: ``rotation += angular_speed * direction * delta``. @@ -212,7 +212,7 @@ with the engine. These include ``_process()``, to apply changes to the node every frame, and ``_unhandled_input()``, to receive input events like key and button presses from the users. There are quite a few more. -The ``Input`` singleton allows you to react to the players' input anywhere in +The ``Input`` singleton allows you to react to the player's input anywhere in your code. In particular, you'll get to use it in the ``_process()`` loop. In the next lesson, :ref:`doc_signals`, we'll build upon the relationship between diff --git a/getting_started/step_by_step/signals.rst b/getting_started/step_by_step/signals.rst index 17f07a2f7..6279036e0 100644 --- a/getting_started/step_by_step/signals.rst +++ b/getting_started/step_by_step/signals.rst @@ -58,11 +58,11 @@ To add a button to our game, we will create a new scene which will include both a :ref:`Button ` and the ``sprite_2d.tscn`` scene we created in the :ref:`doc_scripting_first_script` lesson. -Create a new scene by going to the menu Scene -> New Scene. +Create a new scene by going to the menu :menu:`Scene > New Scene`. .. image:: img/signals_01_new_scene.webp -In the Scene dock, click the 2D Scene button. This will add +In the Scene dock, click the :button:`2D Scene` button. This will add a :ref:`Node2D ` as our root. .. image:: img/signals_02_2d_scene.webp @@ -73,7 +73,7 @@ previously onto the Node2D to instantiate it. .. image:: img/signals_03_dragging_scene.png We want to add another node as a sibling of the Sprite2D. To do so, right-click -on Node2D and select Add Child Node. +on Node2D and select :button:`Add Child Node`. .. image:: img/signals_04_add_child_node.webp @@ -92,8 +92,8 @@ If you don't see the handles, ensure the select tool is active in the toolbar. Click and drag on the button itself to move it closer to the sprite. -You can also write a label on the Button by editing its Text property in the -Inspector. Enter ``Toggle motion``. +You can also write a label on the Button by editing its :inspector:`Text` property +in the :ui:`Inspector`. Enter ``Toggle motion``. .. image:: img/signals_08_toggle_motion_text.webp @@ -114,8 +114,9 @@ want to call a new function that will toggle its motion on and off. We need to have a script attached to the Sprite2D node, which we do from the previous lesson. -You can connect signals in the Node dock. Select the Button node and, on the -right side of the editor, click on the tab named "Node" next to the Inspector. +You can connect signals in the :ui:`Node` dock. Select the Button node and, on the +right side of the editor, click on the tab named :ui:`Node` next to the +:ui:`Inspector`. .. image:: img/signals_10_node_dock.webp @@ -142,7 +143,7 @@ methods "_on_node_name_signal_name". Here, it'll be "_on_button_pressed". The advanced view lets you connect to any node and any built-in function, add arguments to the callback, and set options. You can - toggle the mode in the window's bottom-right by clicking the Advanced + toggle the mode in the window's bottom-right by clicking the :button:`Advanced` button. .. note:: @@ -151,8 +152,8 @@ methods "_on_node_name_signal_name". Here, it'll be "_on_button_pressed". automatic code generation might not work. In this case, you need to connect the signal via code as explained in the next section. -Click the Connect button to complete the signal connection and jump to the -Script workspace. You should see the new method with a connection icon in the +Click the :button:`Connect` button to complete the signal connection and jump to the +:ui:`Script` workspace. You should see the new method with a connection icon in the left margin. .. image:: img/signals_13_signals_connection_icon.webp @@ -271,16 +272,16 @@ In the Scene dock, right-click on the Sprite2D node and add a new child node. Search for Timer and add the corresponding node. Your scene should now look like this. -.. image:: img/signals_15_scene_tree.png +.. image:: img/signals_15_scene_tree.webp -With the Timer node selected, go to the Inspector and enable the **Autostart** +With the Timer node selected, go to the :ui:`Inspector` and enable the :inspector:`Autostart` property. -.. image:: img/signals_18_timer_autostart.png +.. image:: img/signals_18_timer_autostart.webp Click the script icon next to Sprite2D to jump back to the scripting workspace. -.. image:: img/signals_16_click_script.png +.. image:: img/signals_16_click_script.webp We need to do two operations to connect the nodes via code: @@ -466,7 +467,7 @@ reaches 0. .. note:: As signals represent events that just occurred, we generally use an action verb in the past tense in their names. -Your signals work the same way as built-in ones: they appear in the Node tab and +Your signals work the same way as built-in ones: they appear in the :ui:`Node` tab and you can connect to them like any other. .. image:: img/signals_17_custom_signal.webp diff --git a/img/control_gallery.webp b/img/control_gallery.webp index 836744f54..c9bdb0b2f 100644 Binary files a/img/control_gallery.webp and b/img/control_gallery.webp differ diff --git a/index.rst b/index.rst index b0ae2c098..614af39b1 100644 --- a/index.rst +++ b/index.rst @@ -128,13 +128,14 @@ the ``GodotEngine.epub`` file in an e-book reader application. .. toctree:: :hidden: :maxdepth: 1 - :caption: Contributing - :name: sec-contributing + :caption: Engine details + :name: sec-engine-details - contributing/how_to_contribute - contributing/workflow/index - contributing/development/index - contributing/documentation/index + engine_details/architecture/index + engine_details/development/index + engine_details/editor/index + engine_details/class_reference/index + engine_details/file_formats/index .. toctree:: diff --git a/requirements.txt b/requirements.txt index 6bcf4a867..0e4c7a816 100644 --- a/requirements.txt +++ b/requirements.txt @@ -3,7 +3,7 @@ # https://github.com/readthedocs/readthedocs.org/blob/master/requirements/docs.txt # Base dependencies -pygments==2.19.1 +pygments==2.19.2 # Sphinx base and RTD theme. sphinx==8.1.3 @@ -18,7 +18,7 @@ sphinx-copybutton==0.5.2 # Custom 404 error page (more useful than the default). sphinx-notfound-page==1.1.0 # Adds Open Graph tags in the HTML `` tag. -sphinxext-opengraph==0.10.0 +sphinxext-opengraph==0.13.0 # `.. video::` directive support to embed videos in documentation pages. sphinxcontrib-video==0.4.1 diff --git a/tutorials/2d/2d_lights_and_shadows.rst b/tutorials/2d/2d_lights_and_shadows.rst index a5d014094..1b5ed240f 100644 --- a/tutorials/2d/2d_lights_and_shadows.rst +++ b/tutorials/2d/2d_lights_and_shadows.rst @@ -255,20 +255,6 @@ The following properties can be adjusted on 2D lights that have shadows enabled: Soft shadows with streaking artifacts due to Filter Smooth being too high (PCF5, Filter Smooth 4) -Occluder draw order -~~~~~~~~~~~~~~~~~~~ - -**LightOccluder2Ds follows the usual 2D drawing order.** This is important for 2D -lighting, as this is how you control whether the occluder should occlude the -sprite itself or not. - -If the LightOccluder2D node is a *sibling* of the sprite, the occluder will -occlude the sprite itself if it's placed *below* the sprite in the scene tree. - -If the LightOccluder2D node is a *child* of the sprite, the occluder will -occlude the sprite itself if **Show Behind Parent** is disabled on the -LightOccluder2D node (which is the default). - Normal and specular maps ------------------------ diff --git a/tutorials/2d/2d_meshes.rst b/tutorials/2d/2d_meshes.rst index 31c5d474d..c7f28564a 100644 --- a/tutorials/2d/2d_meshes.rst +++ b/tutorials/2d/2d_meshes.rst @@ -49,6 +49,6 @@ The default values are good enough for many cases, but you can change growth and .. image:: img/mesh2d4.png -Finally, push the ``Convert 2D Mesh`` button and your Sprite2D will be replaced: +Finally, push the :button:`Convert 2D Mesh` button and your Sprite2D will be replaced: .. image:: img/mesh2d5.png diff --git a/tutorials/2d/img/2d_animation_new_spriteframes.webp b/tutorials/2d/img/2d_animation_new_spriteframes.webp index 491bf28e6..3881d3797 100644 Binary files a/tutorials/2d/img/2d_animation_new_spriteframes.webp and b/tutorials/2d/img/2d_animation_new_spriteframes.webp differ diff --git a/tutorials/2d/img/2d_lights_and_shadows_create_canvastexture.webp b/tutorials/2d/img/2d_lights_and_shadows_create_canvastexture.webp index fc0f94992..49e085725 100644 Binary files a/tutorials/2d/img/2d_lights_and_shadows_create_canvastexture.webp and b/tutorials/2d/img/2d_lights_and_shadows_create_canvastexture.webp differ diff --git a/tutorials/2d/img/particles_flipbook_create_canvasitemmaterial.webp b/tutorials/2d/img/particles_flipbook_create_canvasitemmaterial.webp index 4a9030967..282c8f8d9 100644 Binary files a/tutorials/2d/img/particles_flipbook_create_canvasitemmaterial.webp and b/tutorials/2d/img/particles_flipbook_create_canvasitemmaterial.webp differ diff --git a/tutorials/2d/img/particles_material.webp b/tutorials/2d/img/particles_material.webp index fc99f6d8e..f31e54768 100644 Binary files a/tutorials/2d/img/particles_material.webp and b/tutorials/2d/img/particles_material.webp differ diff --git a/tutorials/2d/img/using_tilesets_create_new_tileset.webp b/tutorials/2d/img/using_tilesets_create_new_tileset.webp index ef325ba1f..678ac1ea9 100644 Binary files a/tutorials/2d/img/using_tilesets_create_new_tileset.webp and b/tutorials/2d/img/using_tilesets_create_new_tileset.webp differ diff --git a/tutorials/2d/introduction_to_2d.rst b/tutorials/2d/introduction_to_2d.rst index 6b6733d20..18ac63e3c 100644 --- a/tutorials/2d/introduction_to_2d.rst +++ b/tutorials/2d/introduction_to_2d.rst @@ -84,7 +84,7 @@ from left to right: The node rotates considering this point. If you have multiple nodes selected, this icon will add a temporary pivot to be used commonly by all selected nodes. Pressing :kbd:`Shift` and clicking this button will create the pivot at the center of selected nodes. If any of - the snap options are enabled, the pivot will also snap to them it when dragged. + the snap options are enabled, the pivot will also snap to them when dragged. - **Pan Mode** (:kbd:`G`): Allows you to navigate in the viewport without accidentally selecting any nodes. In other modes, you can also hold :kbd:`Space` and drag with the left mouse button to do the same. - **Ruler Mode**: After enabling, click on the viewport to display the current global diff --git a/tutorials/3d/3d_antialiasing.rst b/tutorials/3d/3d_antialiasing.rst index 40beeb458..fae6cbcec 100644 --- a/tutorials/3d/3d_antialiasing.rst +++ b/tutorials/3d/3d_antialiasing.rst @@ -181,6 +181,31 @@ Comparison between no antialiasing (left) and FXAA (right): .. image:: img/antialiasing_fxaa.webp +Sub-pixel Morphological Antialiasing (SMAA 1x) +---------------------------------------------- + +*This is only available in the Forward+ and Mobile renderers, not the Compatibility +renderer.* + +Sub-pixel Morphological Antialiasing is a post-processing antialiasing solution. +It runs slightly slower than FXAA, but produces less blurriness. This is very helpful +when the screen resolution is 1080p or below. Just like FXAA, SMAA 1x lacks temporal +information and will therefore not do much against specular aliasing. + +Use SMAA 1x if you can't afford MSAA, but find FXAA too blurry. + +Combine it with TAA, or even FSR2, to maximize antialiasing at a higher GPU cost +and some added blurriness. This is most beneficial in fast-moving scenes or just +after a camera cut, especially at lower FPS. + +SMAA 1x can be enabled in the Project Settings by changing the value of the +:ref:`Rendering > Anti Aliasing > Quality > Screen Space AA` +setting to ``SMAA``. + +Comparison between no antialiasing (left) and SMAA 1x (right): + +.. image:: img/antialiasing_smaa.webp + Supersample antialiasing (SSAA) ------------------------------- @@ -295,29 +320,29 @@ Antialiasing comparison .. The table looks malformed but is not. When making changes, check the nearby .. lines for guidance. -+--------------------------+--------------------------+--------------------------+--------------------------+--------------------------+--------------------------+--------------------------+ -| Feature | MSAA | TAA | FSR2 | FXAA | SSAA | SSRL | -+==========================+==========================+==========================+==========================+==========================+==========================+==========================+ -| Edge antialiasing | 🟢 Yes | 🟢 Yes | 🟢 Yes | 🟢 Yes | 🟢 Yes | 🔴 No | -+--------------------------+--------------------------+--------------------------+--------------------------+--------------------------+--------------------------+--------------------------+ -| Specular antialiasing | 🟡 Some | 🟢 Yes | 🟢 Yes | 🟡 Some | 🟢 Yes | 🟢 Yes | -+--------------------------+--------------------------+--------------------------+--------------------------+--------------------------+--------------------------+--------------------------+ -| Transparency antialiasing| 🟡 Some [1]_ | 🟢 Yes [2]_ | 🟢 Yes [2]_ | 🟢 Yes | 🟢 Yes | 🔴 No | -| | | | | | | | -+--------------------------+--------------------------+--------------------------+--------------------------+--------------------------+--------------------------+--------------------------+ -| Added blur | 🟢 None | 🟡 Some | 🟡 Some | 🟡 Some | 🟡 Some [3]_ | 🟢 None | -| | | | | | | | -+--------------------------+--------------------------+--------------------------+--------------------------+--------------------------+--------------------------+--------------------------+ -| Ghosting artifacts | 🟢 None | 🔴 Yes | 🔴 Yes | 🟢 None | 🟢 None | 🟢 None | -+--------------------------+--------------------------+--------------------------+--------------------------+--------------------------+--------------------------+--------------------------+ -| Performance cost | 🟡 Medium | 🟡 Medium | 🔴 High | 🟢 Low | 🔴 Very High | 🟢 Low | -+--------------------------+--------------------------+--------------------------+--------------------------+--------------------------+--------------------------+--------------------------+ -| Forward+ | ✔️ Yes | ✔️ Yes | ✔️ Yes | ✔️ Yes | ✔️ Yes | ✔️ Yes | -+--------------------------+--------------------------+--------------------------+--------------------------+--------------------------+--------------------------+--------------------------+ -| Mobile | ✔️ Yes | ❌ No | ❌ No | ✔️ Yes | ✔️ Yes | ✔️ Yes | -+--------------------------+--------------------------+--------------------------+--------------------------+--------------------------+--------------------------+--------------------------+ -| Compatibility | ✔️ Yes | ❌ No | ❌ No | ❌ No | ✔️ Yes | ❌ No | -+--------------------------+--------------------------+--------------------------+--------------------------+--------------------------+--------------------------+--------------------------+ ++--------------------------+--------------------------+--------------------------+--------------------------+--------------------------+--------------------------+--------------------------+--------------------------+ +| Feature | MSAA | TAA | FSR2 | FXAA | SMAA 1x | SSAA | SSRL | ++==========================+==========================+==========================+==========================+==========================+==========================+==========================+==========================+ +| Edge antialiasing | 🟢 Yes | 🟢 Yes | 🟢 Yes | 🟢 Yes | 🟢 Yes | 🟢 Yes | 🔴 No | ++--------------------------+--------------------------+--------------------------+--------------------------+--------------------------+--------------------------+--------------------------+--------------------------+ +| Specular antialiasing | 🟡 Some | 🟢 Yes | 🟢 Yes | 🟡 Some | 🟡 Some | 🟢 Yes | 🟢 Yes | ++--------------------------+--------------------------+--------------------------+--------------------------+--------------------------+--------------------------+--------------------------+--------------------------+ +| Transparency antialiasing| 🟡 Some [1]_ | 🟢 Yes [2]_ | 🟢 Yes [2]_ | 🟢 Yes | 🟢 Yes | 🟢 Yes | 🔴 No | +| | | | | | | | | ++--------------------------+--------------------------+--------------------------+--------------------------+--------------------------+--------------------------+--------------------------+--------------------------+ +| Added blur | 🟢 None | 🟡 Some | 🟡 Some | 🟡 Some | 🟢 Low | 🟡 Some [3]_ | 🟢 None | +| | | | | | | | | ++--------------------------+--------------------------+--------------------------+--------------------------+--------------------------+--------------------------+--------------------------+--------------------------+ +| Ghosting artifacts | 🟢 None | 🔴 Yes | 🔴 Yes | 🟢 None | 🟢 None | 🟢 None | 🟢 None | ++--------------------------+--------------------------+--------------------------+--------------------------+--------------------------+--------------------------+--------------------------+--------------------------+ +| Performance cost | 🟡 Medium | 🟡 Medium | 🔴 High | 🟢 Very Low | 🟢 Low | 🔴 Very High | 🟢 Low | ++--------------------------+--------------------------+--------------------------+--------------------------+--------------------------+--------------------------+--------------------------+--------------------------+ +| Forward+ | ✔️ Yes | ✔️ Yes | ✔️ Yes | ✔️ Yes | ✔️ Yes | ✔️ Yes | ✔️ Yes | ++--------------------------+--------------------------+--------------------------+--------------------------+--------------------------+--------------------------+--------------------------+--------------------------+ +| Mobile | ✔️ Yes | ❌ No | ❌ No | ✔️ Yes | ✔️ Yes | ✔️ Yes | ✔️ Yes | ++--------------------------+--------------------------+--------------------------+--------------------------+--------------------------+--------------------------+--------------------------+--------------------------+ +| Compatibility | ✔️ Yes | ❌ No | ❌ No | ❌ No | ❌ No | ✔️ Yes | ❌ No | ++--------------------------+--------------------------+--------------------------+--------------------------+--------------------------+--------------------------+--------------------------+--------------------------+ .. [1] MSAA does not work well with materials with Alpha Scissor (1-bit transparency). diff --git a/tutorials/3d/environment_and_post_processing.rst b/tutorials/3d/environment_and_post_processing.rst index 5f4a64ba0..52816a205 100644 --- a/tutorials/3d/environment_and_post_processing.rst +++ b/tutorials/3d/environment_and_post_processing.rst @@ -290,14 +290,19 @@ Both of these fog types can have their curve tweaked, making their transition mo Two properties can be tweaked to make the fog effect more interesting: -The first is **Sun Amount**, which makes use of the Sun Color property of the fog. -When looking towards a directional light (usually a sun), the color of the fog -will be changed, simulating the sunlight passing through the fog. +The first is **Sun Scatter**, which makes use of the DirectionalLight3D's color +and energy in the current scene. When looking towards the directional light +(usually a sun), the fog will be tinted according to the light's color to +simulate the sunlight passing through the fog. -The second is **Transmit Enabled** which simulates more realistic light transmittance. -In practice, it makes light stand out more across the fog. +The second is **Aerial Perspective**, which tints the fog color according to the +sky color to better blend the sky with the background. Higher values will result +in more tinting, with ``1.0`` fully replacing the regular fog color with aerial +perspective. This can be used in large open world levels to provide a better +sense of depth, or to avoid color discontinuities between the sky and fog colors. -.. image:: img/environment_fog_transmission.webp +If both **Sun Scatter** and **Aerial Perspective** are greater than ``0.0``, sun +scattering is applied on top of aerial perspective. .. note:: @@ -705,6 +710,11 @@ There are 2 ways to use glow in 2D: ``canvas_item`` shaders, so it's recommend to use it when relevant either way. + Using linear color space also means that alpha blending will change. Sprites + with low opacity values generally become more visible, and font rendering will + look bolder due to the low-opacity pixels from the font antialiasing becoming + more visible. This also affects the editor's own rendering. + .. _doc_environment_and_post_processing_using_glow_to_blur_the_screen: Using glow to blur the screen diff --git a/tutorials/3d/global_illumination/using_lightmap_gi.rst b/tutorials/3d/global_illumination/using_lightmap_gi.rst index 74f85b0dd..a19c05b7c 100644 --- a/tutorials/3d/global_illumination/using_lightmap_gi.rst +++ b/tutorials/3d/global_illumination/using_lightmap_gi.rst @@ -76,9 +76,9 @@ Setting up .. warning:: - Baking lightmaps in the Android and web editors is not supported due to - graphics API limitations on those devices. On Android and web platforms, - only *rendering* lightmaps that were baked on a desktop PC is supported. + Baking lightmaps in the web editors is not supported due to + graphics API limitations. On the web platform, only *rendering* lightmaps + that were baked on a different platform is supported. .. note:: diff --git a/tutorials/3d/img/antialiasing_smaa.webp b/tutorials/3d/img/antialiasing_smaa.webp new file mode 100644 index 000000000..e55785654 Binary files /dev/null and b/tutorials/3d/img/antialiasing_smaa.webp differ diff --git a/tutorials/3d/img/environment_fog_transmission.webp b/tutorials/3d/img/environment_fog_transmission.webp deleted file mode 100644 index 8826f8fc0..000000000 Binary files a/tutorials/3d/img/environment_fog_transmission.webp and /dev/null differ diff --git a/tutorials/3d/img/spatial_material1.webp b/tutorials/3d/img/spatial_material1.webp index cbd19f48b..9cdf25b73 100644 Binary files a/tutorials/3d/img/spatial_material1.webp and b/tutorials/3d/img/spatial_material1.webp differ diff --git a/tutorials/3d/img/spatial_material_bentnormals.webp b/tutorials/3d/img/spatial_material_bentnormals.webp new file mode 100644 index 000000000..10aa0ffa2 Binary files /dev/null and b/tutorials/3d/img/spatial_material_bentnormals.webp differ diff --git a/tutorials/3d/lights_and_shadows.rst b/tutorials/3d/lights_and_shadows.rst index 1f291d57b..49a5be5a6 100644 --- a/tutorials/3d/lights_and_shadows.rst +++ b/tutorials/3d/lights_and_shadows.rst @@ -189,7 +189,7 @@ Every face whose front-side is hit by the light rays is lit, while the others stay dark. Unlike most other light types, directional lights don't have specific parameters. -The directional light also offers a **Angular Distance** property, which +The directional light also offers an **Angular Distance** property, which determines the light's angular size in degrees. Increasing this above ``0.0`` will make shadows softer at greater distances from the caster, while also affecting the sun's appearance in procedural sky materials. This is called a @@ -296,9 +296,9 @@ Omni light shadow mapping is relatively straightforward. The main issue that needs to be considered is the algorithm used to render it. Omni Shadows can be rendered as either **Dual Paraboloid** or **Cube** mapped. -**Dual Parabolid** renders quickly, but can cause deformations, while **Cube** +**Dual Paraboloid** renders quickly, but can cause deformations, while **Cube** is more correct, but slower. The default is **Cube**, but consider changing it -to **Dual Parabolid** for lights where it doesn't make much of a visual +to **Dual Paraboloid** for lights where it doesn't make much of a visual difference. .. image:: img/lights_and_shadows_dual_parabolid_vs_cubemap.webp @@ -348,7 +348,7 @@ Spot shadow mapping Spots feature the same parameters as omni lights for shadow mapping. Rendering spot shadow maps is significantly faster compared to omni lights, as only one shadow texture needs to be rendered (instead of rendering 6 faces, or 2 in dual -parabolid mode). +paraboloid mode). Spot lights with shadows enabled can make use of projectors. The projector texture will *multiply* the light's color by the color at a given point on the diff --git a/tutorials/3d/particles/collision.rst b/tutorials/3d/particles/collision.rst index 83170e991..d58750e51 100644 --- a/tutorials/3d/particles/collision.rst +++ b/tutorials/3d/particles/collision.rst @@ -143,7 +143,7 @@ performance overhead is larger compared to height fields, so they're best suited To create an SDF collision node, add a new child node to your scene and select ``GPUParticlesCollisionSDF3D`` from the list of available nodes. SDF collision nodes have to be baked in order to have any effect on particles -in the level. To do that, click the ``Bake SDF`` button in the viewport toolbar +in the level. To do that, click the :button:`Bake SDF` button in the viewport toolbar while the SDF collision node is selected and choose a directory to store the baked data. Since SDF collision needs to be baked in the editor, it's static and cannot change at runtime. diff --git a/tutorials/3d/procedural_geometry/surfacetool.rst b/tutorials/3d/procedural_geometry/surfacetool.rst index 20818466c..a326f2c31 100644 --- a/tutorials/3d/procedural_geometry/surfacetool.rst +++ b/tutorials/3d/procedural_geometry/surfacetool.rst @@ -15,6 +15,10 @@ Attributes are added before each vertex is added: .. tabs:: .. code-tab:: gdscript GDScript + var st = SurfaceTool.new() + + st.begin(Mesh.PRIMITIVE_TRIANGLES) + st.set_normal() # Overwritten by normal below. st.set_normal() # Added to next vertex. st.set_color() # Added to next vertex. @@ -29,16 +33,20 @@ Attributes are added before each vertex is added: st.AddVertex(); // Captures normal and color above. st.SetNormal(); // Normal never added to a vertex. -When finished generating your geometry with the :ref:`SurfaceTool ` +When finished generating your geometry with the :ref:`SurfaceTool `, call ``commit()`` to finish generating the mesh. If an :ref:`ArrayMesh ` is passed -to ``commit()`` then it appends a new surface to the end of the ArrayMesh. While if nothing is passed +to ``commit()``, then it appends a new surface to the end of the ArrayMesh. While if nothing is passed in, ``commit()`` returns an ArrayMesh. .. tabs:: .. code-tab:: gdscript GDScript + # Add surface to existing ArrayMesh. st.commit(mesh) - # Or: + + # -- Or Alternatively -- + + # Create new ArrayMesh. var mesh = st.commit() .. code-tab:: csharp @@ -47,7 +55,7 @@ in, ``commit()`` returns an ArrayMesh. // Or: var mesh = st.Commit(); -Code creates a triangle with indices +The code below creates a triangle without indices. .. tabs:: .. code-tab:: gdscript GDScript @@ -97,14 +105,38 @@ Code creates a triangle with indices var mesh = st.Commit(); You can optionally add an index array, either by calling ``add_index()`` and adding -vertices to the index array or by calling ``index()`` which shrinks the vertex array -to remove duplicate vertices. +vertices to the index array manually, or by calling ``index()`` once, +which generates the index array automatically and +shrinks the vertex array to remove duplicate vertices. .. tabs:: .. code-tab:: gdscript GDScript + # Suppose we have a quad defined by 6 vertices as follows + st.add_vertex(Vector3(-1, 1, 0)) + st.add_vertex(Vector3(1, 1, 0)) + st.add_vertex(Vector3(-1, -1, 0)) + + st.add_vertex(Vector3(1, 1, 0)) + st.add_vertex(Vector3(1, -1, 0)) + st.add_vertex(Vector3(-1, -1, 0)) + + # We can make the quad more efficient by using an index array and only utilizing 4 vertices + + # Suppose we have a quad defined by 6 vertices as follows + st.add_vertex(Vector3(-1, 1, 0)) + st.add_vertex(Vector3(1, 1, 0)) + st.add_vertex(Vector3(-1, -1, 0)) + + st.add_vertex(Vector3(1, 1, 0)) + st.add_vertex(Vector3(1, -1, 0)) + st.add_vertex(Vector3(-1, -1, 0)) + + # We can make the quad more efficient by using an index array and only utilizing 4 vertices + # Creates a quad from four corner vertices. - # add_index does not need to be called before add_vertex. + # add_index() can be called before or after add_vertex() + # since it's not an attribute of a vertex itself. st.add_index(0) st.add_index(1) st.add_index(2) @@ -113,7 +145,7 @@ to remove duplicate vertices. st.add_index(3) st.add_index(2) - # Alternatively: + # Alternatively we can use ``st.index()`` which will create the quad for us and remove the duplicate vertices st.index() .. code-tab:: csharp @@ -161,12 +193,15 @@ normals set already. st.generate_normals() st.generate_tangents() + st.commit(mesh) + .. code-tab:: csharp st.GenerateNormals(); st.GenerateTangents(); -By default, when generating normals, they will be calculated on a per-face basis. If you want -smooth vertex normals, when adding vertices, call ``add_smooth_group()``. ``add_smooth_group()`` -needs to be called while building the geometry, e.g. before the call to ``add_vertex()`` -(if non-indexed) or ``add_index()`` (if indexed). +By default, when generating normals, they will be calculated on a per-vertex basis (i.e. they will +be "smooth normals"). If you want flat vertex normals (i.e. a single normal vector per face), when +adding vertices, call ``add_smooth_group(i)`` where ``i`` is a unique number per vertex. +``add_smooth_group()`` needs to be called while building the geometry, e.g. before the call to +``add_vertex()``. diff --git a/tutorials/3d/standard_material_3d.rst b/tutorials/3d/standard_material_3d.rst index 37f53cb78..b72add16b 100644 --- a/tutorials/3d/standard_material_3d.rst +++ b/tutorials/3d/standard_material_3d.rst @@ -189,6 +189,9 @@ other than *Mix* forces the object to go through the transparent pipeline. screen. * **Mul:** The final color of the object is multiplied with the color of the screen. +* **Premultiplied Alpha:** The color of the object is expected to have already been + multiplied by the alpha. This behaves like **Add** when the alpha is ``0.0`` + (fully transparent) and like **Mix** when the alpha is ``1.0`` (opaque). .. image:: img/spatial_material8.png @@ -322,6 +325,11 @@ Disable Fog Makes the object unaffected by depth-based or volumetric fog. This is useful for particles or other additively blended materials that would otherwise show the shape of the mesh (even in places where it would be invisible without the fog). +Disable Specular Occlusion +~~~~~~~~~~~~~~~~~~~~~~~~~~ + +Makes the object not have its reflections reduced where they would usually be occluded. + Vertex Color ------------ @@ -414,6 +422,43 @@ and wider compatibility. popular engines) can be found `here `__. +Bent normal map +--------------- + +A bent normal map describes the average direction of ambient lighting. Unlike a +regular normal map, this is used to improve how a material reacts to lighting +rather than add surface detail. + +This is achieved in two ways: + +* Indirect diffuse lighting is made to match global illumination more closely. +* If specular occlusion is enabled, it is calculated using the bent normals and + ambient occlusion instead of just from ambient light. + This includes screen-space ambient occlusion (SSAO) and other sources of + ambient occlusion. + +.. image:: img/spatial_material_bentnormals.webp + +Godot only uses the red and green channels of a bent normal map for better +compression and wider compatibility. + +When creating a bent normal map, there are three things required for it to +work correctly in Godot: + +* A **cosine distribution** of rays has to be used when baking. +* The texture must be created in **tangent space**. +* The bent normal map needs to use the X+, Y+, and Z+ coordinates, this is + known as OpenGL style. If you've imported a material made to be used with + another engine it may be DirectX style, in which case the bent normal map + needs to be converted so its Y axis is flipped. This can be achieved by + setting the green channel under the **Channel Remap** section to + **Inverted Green** in the import dock. + +.. note:: + + A bent normal map is different from a regular normal map. The two are not + interchangeable. + Rim --- @@ -492,6 +537,8 @@ This controls how much light from the lit side (visible to light) is transferred to the dark side (opposite from the light). This works well for thin objects such as plant leaves, grass, human ears, etc. +.. image:: img/spatial_material22.png + Refraction ---------- @@ -696,14 +743,35 @@ Point Size When drawing points, specify the point size in pixels. -Transmission -~~~~~~~~~~~~ +Use Particle Trails +~~~~~~~~~~~~~~~~~~~ -This controls how much light from the lit side (visible to light) is transferred -to the dark side (opposite from the light). This works well for thin objects -such as plant leaves, grass, human ears, etc. +If true, enables parts of the shader required for GPUParticles3D trails to function. +This also requires using a mesh with appropriate skinning, such as RibbonTrailMesh +or TubeTrailMesh. Enabling this feature outside of materials used in GPUParticles3D +meshes will break material rendering. -.. image:: img/spatial_material22.png +Use Z Clip Scale +~~~~~~~~~~~~~~~~ + +Scales the object being rendered towards the camera to avoid clipping into things +like walls. This is intended to be used for objects that are fixed with respect to +the camera like player arms, tools, etc. Lighting and shadows will continue to work +correctly when this setting is adjusted, but screen-space effects like SSAO and SSR +may break with lower scales. Therefore, try to keep this setting as close to 1.0 as +possible. + +Use FOV Override +~~~~~~~~~~~~~~~~ + +Overrides the ``Camera3D``'s field of view angle (in degrees). + +.. note:: + + This behaves as if the field of view is set on a ``Camera3D`` with + ``Camera3D.keep_aspect`` set to ``Camera3D.KEEP_HEIGHT``. Additionally, it may not + look correct on a non-perspective camera where the field of view setting is + ignored. Proximity and Distance Fade --------------------------- diff --git a/tutorials/3d/using_gridmaps.rst b/tutorials/3d/using_gridmaps.rst index df3426fb3..0ee426708 100644 --- a/tutorials/3d/using_gridmaps.rst +++ b/tutorials/3d/using_gridmaps.rst @@ -89,6 +89,21 @@ additional nodes can be added as source geometry just for baking the navmesh. The baked cell size of the NavigationMesh must match the NavigationServer map cell size to properly merge the navigation meshes of different grid cells. +Lightmaps +--------- + +It is possible to bake lightmaps onto a GridMap. Lightmap UV2 data will be reused +from meshes if already present. If UV2 data is not present, then it will be +automatically generated on bake with a lightmap texel size of 0.1 units. +To generate UV2 data with a different lightmap texel size, you can set the +global illumination mode in the Import dock to **Static Lightmaps** +and specify the texel size there. This option must be changed *before* the scene +is converted to a MeshLibrary, as changing it later on will not affect +the existing MeshLibrary data. + +Aside from this peculiarity, the lightmap baking process is the same as for any other 3D scene. +See :ref:`doc_using_lightmap_gi` for more information about lightmap baking. + MeshLibrary format ------------------ @@ -120,7 +135,7 @@ as a resource. .. image:: img/gridmap_export.webp -You can find an already exported MeshLibrary in the project named "MeshLibrary.tres". +You can find an already exported MeshLibrary in the project named ``MeshLibrary.tres``. Using GridMap ------------- diff --git a/tutorials/3d/using_transforms.rst b/tutorials/3d/using_transforms.rst index d0086b0d4..df9eccd09 100644 --- a/tutorials/3d/using_transforms.rst +++ b/tutorials/3d/using_transforms.rst @@ -305,7 +305,9 @@ Jump: // Keep in mind Y is up-axis if (Input.IsActionJustPressed("jump")) + { velocity.Y = JumpSpeed; + } MoveAndSlide(); diff --git a/tutorials/animation/2d_skeletons.rst b/tutorials/animation/2d_skeletons.rst index d9831b4bf..d12f17b92 100644 --- a/tutorials/animation/2d_skeletons.rst +++ b/tutorials/animation/2d_skeletons.rst @@ -144,7 +144,7 @@ Keep going and build the whole skeleton: You will notice that all bones raise a warning about a missing rest pose. A rest pose is the default pose for a skeleton, you can come back to it anytime you want (which is very handy for animating). To set one click on the *skeleton* node in -the scene tree, then click on the ``Skeleton2D`` button in the toolbar, and select +the scene tree, then click on the :button:`Skeleton2D` button in the toolbar, and select ``Overwrite Rest Pose`` from the dropdown menu. .. image:: img/skel2d14.webp diff --git a/tutorials/animation/animation_tree.rst b/tutorials/animation/animation_tree.rst index b7140e3e1..fff0cbe98 100644 --- a/tutorials/animation/animation_tree.rst +++ b/tutorials/animation/animation_tree.rst @@ -7,28 +7,30 @@ Introduction ------------ With :ref:`AnimationPlayer `, Godot has one of the most flexible animation systems that you can find in any game engine. -The ability to animate almost any property in any node or resource, as well as having dedicated transform, bezier, -function calling, audio and sub-animation tracks, is pretty much unique. +It is pretty much unique in its ability to animate almost any property in any node or resource, and its dedicated transform, bezier, +function calling, audio, and sub-animation tracks. -However, the support for blending those animations via ``AnimationPlayer`` is relatively limited, as only a fixed cross-fade transition time can be set. +However, the support for blending those animations via ``AnimationPlayer`` is limited, as you can only set a fixed cross-fade transition time. -Creating an AnimationTree -------------------------- +:ref:`AnimationTree ` is a new node introduced in Godot 3.1 to deal with advanced transitions. +It replaces the ancient ``AnimationTreePlayer``, while adding a huge amount of features and flexibility. -Before starting, it must be made clear that an ``AnimationTree`` node does not contain its own animations. -Instead, it uses animations contained in an ``AnimationPlayer`` node. This way, you can edit your animations (or import them from a 3D scene) -as usual and then use this extra node to control the playback. +AnimationTree and AnimationPlayer +--------------------------------- -The most common way to use ``AnimationTree`` is in a 3D scene. When importing your scenes from a 3D exchange format, they will usually come -with animations built-in (either multiple ones or split from a large one on import). -At the end, the imported Godot scene will contain the animations in a ``AnimationPlayer`` node. +Before starting, know that an ``AnimationTree`` node does not contain its own animations. +Instead, it uses animations contained in an ``AnimationPlayer`` node. You create, edit, or import your animations in an ``AnimationPlayer`` +and then use an ``AnimationTree`` to control the playback. -As you rarely use imported scenes directly in Godot (they are either instantiated or inherited from), you can place the ``AnimationTree`` node in your +``AnimationPlayer`` and ``AnimationTree`` can be used in both 2D and 3D scenes. When importing 3D scenes and their animations, you can use +`name suffixes `_ +to simplify the process and import with the correct properties. At the end, the imported Godot scene will contain the animations in an ``AnimationPlayer`` node. +Since you rarely use imported scenes directly in Godot (they are either instantiated or inherited from), you can place the ``AnimationTree`` node in your new scene which contains the imported one. Afterwards, point the ``AnimationTree`` node to the ``AnimationPlayer`` that was created in the imported scene. -This is how it's done in the `Third Person Shooter demo `_, for reference: +This is how it's done in the `Third Person Shooter demo `_, for reference: -.. image:: img/animtree1.png +.. image:: img/animtree_treeandplayersetup.png A new scene was created for the player with a ``CharacterBody3D`` as root. Inside this scene, the original ``.dae`` (Collada) file was instantiated and an ``AnimationTree`` node was created. @@ -36,78 +38,77 @@ and an ``AnimationTree`` node was created. Creating a tree --------------- -There are three main types of nodes that can be used in ``AnimationTree``: +To use an ``AnimationTree``, you have to set a root node. An animation root node is a class that contains and evaluates sub-nodes and outputs an animation. +There are 3 types of sub-nodes: 1. Animation nodes, which reference an animation from the linked ``AnimationPlayer``. -2. Animation Root nodes, which are used to blend sub-nodes. -3. Animation Blend nodes, which are used within ``AnimationNodeBlendTree`` as single-graph blending via multiple input ports. +2. Animation Root nodes, which are used to blend sub-nodes and can be nested. +3. Animation Blend nodes, which are used in an ``AnimationNodeBlendTree``, a 2D graph of nodes. Blend nodes take multiple input ports and give one output port. -To set a root node in ``AnimationTree``, a few types are available: +A few types of root nodes are available: -.. image:: img/animtree2.png +.. image:: img/animtree_rootnodes.png -* ``AnimationNodeAnimation``: Selects an animation from the list and plays it. This is the simplest root node, and generally not used directly as root. -* ``AnimationNodeBlendTree``: Contains many *blend* type nodes, such as mix, blend2, blend3, one shot, etc. This is one of the most commonly used roots. -* ``AnimationNodeStateMachine``: Contains multiple root nodes as children in a graph. Each node is used as a *state*, and provides multiple functions to alternate between states. -* ``AnimationNodeBlendSpace2D``: Allows placing root nodes in a 2D blend space. Control the blend position in 2D to mix between multiple animations. -* ``AnimationNodeBlendSpace1D``: Simplified version of the above (1D). +* ``AnimationNodeAnimation``: Selects an animation from the list and plays it. This is the simplest root node, and generally not used as a root. +* ``AnimationNodeBlendTree``: Contains multiple nodes as children in a graph. Many blend nodes are available, such as mix, blend2, blend3, one shot, etc. +* ``AnimationNodeBlendSpace1D``: Allows linear blending between two animation nodes. Control the blend position in a 1D blend space to mix between animations. +* ``AnimationNodeBlendSpace2D``: Allows linear blending between three animation nodes. Control the blend position in a 2D blend space to mix between animations. +* ``AnimationNodeStateMachine``: Contains multiple nodes as children in a graph. Each node is used as a state, with multiple functions used to alternate between states. Blend tree ---------- -An ``AnimationNodeBlendTree`` can contain both root and regular nodes used for blending. Nodes are added to the graph from a menu: +When you make an ``AnimationNodeBlendTree``, you get an empty 2d graph in the bottom panel, under the AnimationTree tab. It contains only an ``Output`` +node by default. -.. image:: img/animtree3.webp +.. image:: img/animtree_emptyblendtree.webp -All blend trees contain an ``Output`` node by default, and something has to be connected to it in order for animations to play. +In order for animations to play, a node has to be connected to the output. You can add nodes from the **Add Node..** menu or by right clicking an empty space: -The easiest way to test this functionality is to connect an ``Animation`` node to it directly: +.. image:: img/animtree_blendnodes.webp -.. image:: img/animtree4.png +The simplest connection to make is to connect an ``Animation`` node to the output directly, which will just play back the animation. -This will simply play back the animation. Make sure that the ``AnimationTree`` is active for something to actually happen. +.. image:: img/animtree_animtooutput.png -Following is a short description of available nodes: +Following is a description of the other available nodes: Blend2 / Blend3 ~~~~~~~~~~~~~~~ These nodes will blend between two or three inputs by a user-specified blend value: -.. image:: img/animtree5.gif +.. image:: img/animtree_blend2.gif -For more complex blending, it is advised to use blend spaces instead. +Blending can use **filters** to control individually which tracks get blended and which do not. This can be useful for layering animations on top of each other. -Blending can also use filters, i.e. you can control individually which tracks go through the blend function. -This is very useful for layering animations on top of each other. +.. image:: img/animtree_filtering.png -.. image:: img/animtree6.png +For more complex blending, it is recommended to use blend spaces instead. OneShot ~~~~~~~ -This node will execute a sub-animation and return once it finishes. Blend times for fading in and out can be customized, as well as filters. +This node will execute an animation once and return when it finishes. You can customize blend times for fading in and out, as well as filters. -.. image:: img/animtree6b.gif - -After setting the request and changing the animation playback, the one-shot node automatically clears the request on the next process frame by setting its ``request`` value to ``AnimationNodeOneShot.ONE_SHOT_REQUEST_NONE``. +.. image:: img/animtree_oneshot.gif .. tabs:: .. code-tab:: gdscript GDScript # Play child animation connected to "shot" port. animation_tree.set("parameters/OneShot/request", AnimationNodeOneShot.ONE_SHOT_REQUEST_FIRE) - # Alternative syntax (same result as above). + # Alternative syntax (same result). animation_tree["parameters/OneShot/request"] = AnimationNodeOneShot.ONE_SHOT_REQUEST_FIRE # Abort child animation connected to "shot" port. animation_tree.set("parameters/OneShot/request", AnimationNodeOneShot.ONE_SHOT_REQUEST_ABORT) - # Alternative syntax (same result as above). + # Alternative syntax (same result). animation_tree["parameters/OneShot/request"] = AnimationNodeOneShot.ONE_SHOT_REQUEST_ABORT # Get current state (read-only). animation_tree.get("parameters/OneShot/active")) - # Alternative syntax (same result as above). + # Alternative syntax (same result). animation_tree["parameters/OneShot/active"] .. code-tab:: csharp @@ -124,21 +125,23 @@ After setting the request and changing the animation playback, the one-shot node TimeSeek ~~~~~~~~ -This node can be used to cause a seek command to happen to any sub-children of the animation graph. Use this node type to play an ``Animation`` from the start or a certain playback position inside the ``AnimationNodeBlendTree``. +This node allows you to seek to a time in the animation connected to its `in` input. Use this node to play an ``Animation`` starting from a certain playback position. +Note that the seek request value is measured in seconds, so if you would like to play an animation from the beginning, set the value to ``0.0``, or if you would like +to play an animation from 3 seconds in, set the value to ``3.0``. -After setting the time and changing the animation playback, the seek node automatically goes into sleep mode on the next process frame by setting its ``seek_request`` value to ``-1.0``. +.. image:: img/animtree_timeseek.webp .. tabs:: .. code-tab:: gdscript GDScript # Play child animation from the start. animation_tree.set("parameters/TimeSeek/seek_request", 0.0) - # Alternative syntax (same result as above). + # Alternative syntax (same result). animation_tree["parameters/TimeSeek/seek_request"] = 0.0 # Play child animation from 12 second timestamp. animation_tree.set("parameters/TimeSeek/seek_request", 12.0) - # Alternative syntax (same result as above). + # Alternative syntax (same result). animation_tree["parameters/TimeSeek/seek_request"] = 12.0 .. code-tab:: csharp @@ -152,30 +155,35 @@ After setting the time and changing the animation playback, the seek node automa TimeScale ~~~~~~~~~ -Allows scaling the speed of the animation (or reverse it) connected to the `in` input via the `scale` parameter. Setting the `scale` to 0 will pause the animation. +This node allows you to scale the speed of the animation connected to its `in` input. The speed of the animation will be multiplied by the number in the `scale` +parameter. Setting the scale to 0 will pause the animation. Setting the scale to a negative number will play the animation backwards. + +.. image:: img/animtree_timescale.webp Transition ~~~~~~~~~~ -Very simple state machine (when you don't want to cope with a ``StateMachine`` node). Animations can be connected to the outputs and transition times can be specified. -After setting the request and changing the animation playback, the transition node automatically clears the request on the next process frame by setting its ``transition_request`` value to an empty string (``""``). +This node is a simplified version of a StateMachine. You connect animations to the inputs, and the current state index determines which animation to play. +You may specify a crossfade transition time. In the Inspector, you may change the number of input ports, rearrange inputs, or delete inputs. + +.. image:: img/animtree_transition.webp .. tabs:: .. code-tab:: gdscript GDScript # Play child animation connected to "state_2" port. animation_tree.set("parameters/Transition/transition_request", "state_2") - # Alternative syntax (same result as above). + # Alternative syntax (same result). animation_tree["parameters/Transition/transition_request"] = "state_2" # Get current state name (read-only). animation_tree.get("parameters/Transition/current_state") - # Alternative syntax (same result as above). + # Alternative syntax (same result). animation_tree["parameters/Transition/current_state"] # Get current state index (read-only). animation_tree.get("parameters/Transition/current_index")) - # Alternative syntax (same result as above). + # Alternative syntax (same result). animation_tree["parameters/Transition/current_index"] .. code-tab:: csharp @@ -189,62 +197,132 @@ After setting the request and changing the animation playback, the transition no // Get current state index (read-only). animationTree.Get("parameters/Transition/current_index"); -BlendSpace2D -~~~~~~~~~~~~ - -``BlendSpace2D`` is a node to do advanced blending in two dimensions. Points are added to a two-dimensional space and then a position -can be controlled to determine blending: - -.. image:: img/animtree7.gif - -The ranges in X and Y can be controlled (and labeled for convenience). By default, points can be placed anywhere (right-click on -the coordinate system or use the *add point* button) and triangles will be generated automatically using Delaunay. - -.. image:: img/animtree8.gif - -It is also possible to draw the triangles manually by disabling the *auto triangle* option, though this is rarely necessary: - -.. image:: img/animtree9.png - -Finally, it is possible to change the blend mode. By default, blending happens by interpolating points inside the closest triangle. -When dealing with 2D animations (frame by frame), you may want to switch to *Discrete* mode. -Alternatively, if you want to keep the current play position when switching between discrete animations, there is a *Carry* mode. -This mode can be changed in the *Blend* menu: - -.. image:: img/animtree10.png - -BlendSpace1D -~~~~~~~~~~~~ - -This is similar to 2D blend spaces, but in one dimension (so triangles are not needed). StateMachine ~~~~~~~~~~~~ -This node acts as a state machine with root nodes as states. Root nodes can be created and connected via lines. States are connected via *Transitions*, -which are connections with special properties. Transitions are uni-directional, but two can be used to connect in both directions. +When you make an ``AnimationNodeStateMachine``, you get an empty 2d graph in the bottom panel, under the AnimationTree tab. It contains a ``Start`` and ``End`` +state by default. -.. image:: img/animtree11.gif +.. image:: img/animtree_emptystatemachine.webp -There are many types of transition: +To add states, right click or use the **create new nodes** button, whose icon is a plus in a box. You can add animations, blendspaces, blendtrees, or even +another StateMachine. To edit one of these more complex sub-nodes, click on the pencil icon on the right of the state. To return to the original StateMachine, +click **Root** on the top left of the panel. -.. image:: img/animtree12.png +Before the StateMachine can do anything useful, the states must be connected with transitions. To add a transition, click the **connect nodes** button, which is +a line with a right-facing arrow, and drag between two states. You can create 2 transitions between states, one going in each direction. -* *Immediate*: Will switch to the next state immediately. The current state will end and blend into the beginning of the new one. +.. image:: img/animtree_connections.gif + +There are 3 types of transitions: + +.. image:: img/animtree_transitiontypes.png + +* *Immediate*: Will switch to the next state immediately. * *Sync*: Will switch to the next state immediately, but will seek the new state to the playback position of the old state. * *At End*: Will wait for the current state playback to end, then switch to the beginning of the next state animation. -Transitions also have a few properties. Click any transition and it will be displayed in the inspector dock: +Transitions also have a few properties. Click a transition and it will be displayed in the inspector: -.. image:: img/animtree13.png +.. image:: img/animtree_statemachinetransitionproperties.webp -* *Switch Mode* is the transition type (see above), it can be modified after creation here. -* *Auto Advance* will turn on the transition automatically when this state is reached. This works best with the *At End* switch mode. -* *Advance Condition* will turn on auto advance when this condition is set. This is a custom text field that can be filled with a variable name. - The variable can be modified from code (more on this later). * *Xfade Time* is the time to cross-fade between this state and the next. +* *Xfade Curve* is a cross-fade following a curve rather than a linear blend. +* *Reset* determines whether the state you are switching into plays from the beginning (true) or not (false). * *Priority* is used together with the ``travel()`` function from code (more on this later). Lower priority transitions are preferred when travelling through the tree. -* *Disabled* toggles disabling this transition (when disabled, it will not be used during travel or auto advance). +* *Switch Mode* is the transition type (see above). It can be changed after creation here. +* *Advance Mode* determines the advance mode. If ``Disabled``, the transition will not be used. If ``Enabled``, the transition will only be used during ``travel()``. If ``Auto``, the transition will be used if the advance condition and expression are true, or if there are no advance conditions/expressions. + +Advance Condition and Advance Expression +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +The last 2 properties in a StateMachine transition are ``Advance Condition`` and ``Advance Expression.`` When the Advance Mode is set to *Auto*, these +determine if the transition will advance or not. + +Advance Condition is a true/false check. You may put a custom variable name in the text field, and when the StateMachine reaches this transition, +it will check if your variable is *true*. If so, the transition continues. Note that the advance condition **only** checks if a variable is *true*, +and it cannot check for falseness. + +This gives the Advance Condition a very limited capability. If you wanted to make a transition back and forth based on one property, you would need to make +2 variables that have opposite values, and check if either of them are true. This is why, in Godot 4, the Advance Expression was added. + +The Advance Expression works similar to the Advance Condition, but instead of checking if one variable is true, it evaluates any expression. An expression +is anything you could put in an ``if`` statement. These are all examples of expressions that would work in the Advance Expression: + +* ``is_walking`` +* ``is_walking`` == true +* ``is_walking && !is_idle`` +* ``velocity > 0`` +* ``player.is_on_floor()`` + +Here is an example of an improperly-set-up StateMachine transition using Advance Condition: + +.. image:: img/animtree_badanimcondition.webp +.. image:: img/animtree_badanimcondition.gif + +This is not working because there is a ``!`` variable in the Advance Condition, which cannot be checked. + +Here is the same example, set up properly, using two opposite variables: + +.. image:: img/animtree_goodanimcondition.webp +.. image:: img/animtree_goodanimcondition.gif + +Here is the same example, but using Advance Expression rather than Advance Condition, which eliminates the need for two variables: + +.. image:: img/animtree_goodanimexpression.webp +.. image:: img/animtree_goodanimexpression2.webp +.. image:: img/animtree_goodanimexpression.gif + +In order to use Advance Expressions, the Advance Expression Base Node has to be set from the Inspector of the AnimationTree node. By default, it is set +to the AnimationTree node itself, but it needs to point to whatever node contains the script with your animation variables. + +StateMachine travel +^^^^^^^^^^^^^^^^^^^ + +One of the nice features in Godot's ``StateMachine`` implementation is the ability to travel. You can instruct the graph to go from the +current state to another one, while visiting all the intermediate ones. This is done via the A\* algorithm. +If there is no path of transitions starting at the current state and finishing at the destination state, the graph teleports to the destination state. + +To use the travel ability, you should first retrieve the :ref:`AnimationNodeStateMachinePlayback ` +object from the ``AnimationTree`` node (it is exported as a property), and then call one of its many functions: + +.. tabs:: + .. code-tab:: gdscript GDScript + + var state_machine = animation_tree["parameters/playback"] + state_machine.travel("SomeState") + + .. code-tab:: csharp + + AnimationNodeStateMachinePlayback stateMachine = (AnimationNodeStateMachinePlayback)animationTree.Get("parameters/playback"); + stateMachine.Travel("SomeState"); + +The StateMachine must be running before you can travel. Make sure to either call ``start()`` or connect a node to **Start**. + +BlendSpace2D and BlendSpace1D +----------------------------- + +``BlendSpace2D`` is a node to do advanced blending in two dimensions. Points representing animations are added to a 2D space and then a position between them +is controlled to determine the blending: + +.. image:: img/animtree_blendspace2d.gif + +You may place these points anywhere on the graph by right clicking or using the **add point** button, whose icon is a pen and point. +Wherever you place the points, the triangle between them will be generated automatically using Delaunay. +You may also control and label the ranges in X and Y. + +.. image:: img/animtree_blendspacepoints.gif + +Finally, you may also change the blend mode. By default, blending happens by interpolating points inside the closest triangle. When dealing with 2D +animations (frame by frame), you may want to switch to *Discrete* mode. Alternatively, if you want to keep the current play position when switching +between discrete animations, there is a *Carry* mode. This mode can be changed in the *Blend* menu: + +.. image:: img/animtree_blendmode.png + +BlendSpace1D works just like BlendSpace2D, but in one dimension (a line). Triangles are not used. + +.. image:: img/animtree_blendspace1d.webp For better blending ------------------- @@ -276,7 +354,7 @@ This problem can be solved by adding a Property track for Position as an initial It is assumed to have only one frame and is not expected to be played back using the timeline. Also keep in mind that the Rotation 3D tracks and the Property tracks for 2D rotation -with Interpolation Type set to Linear Angle or Cubic Angle will prevent rotation of more than 180 degrees +with Interpolation Type set to Linear Angle or Cubic Angle will prevent rotations greater than 180 degrees from the initial value as blended animation. This can be useful for Skeleton3Ds to prevent the bones penetrating the body when blending animations. @@ -298,7 +376,7 @@ This allows animating characters in a way where steps actually match the floor b When playing back the animation in Godot, it is possible to select this bone as the *root motion track*. Doing so will cancel the bone transformation visually (the animation will stay in place). -.. image:: img/animtree14.png +.. image:: img/animtree_rootmotiontrack.webp Afterwards, the actual motion can be retrieved via the :ref:`AnimationTree ` API as a transform: @@ -329,7 +407,7 @@ Afterwards, the actual motion can be retrieved via the :ref:`AnimationTree ` to control the character movement. -There is also a tool node, ``RootMotionView``, that can be placed in a scene and will act as a custom floor for your +There is also a tool node, ``RootMotionView``, you can place a scene that will act as a custom floor for your character and animations (this node is disabled by default during the game). .. image:: img/animtree15.gif @@ -339,66 +417,35 @@ Controlling from code After building the tree and previewing it, the only question remaining is "How is all this controlled from code?". -Keep in mind that the animation nodes are just resources and, as such, they are shared between all instances using them. +Keep in mind that the animation nodes are just resources, so they are shared between all instances using them. Setting values in the nodes directly will affect all instances of the scene that uses this ``AnimationTree``. This is generally undesirable, but does have some cool use cases, e.g. you can copy and paste parts of your animation tree, -or reuse nodes with a complex layout (such as a state machine or blend space) in different animation trees. +or reuse nodes with a complex layout (such as a StateMachine or blend space) in different animation trees. The actual animation data is contained in the ``AnimationTree`` node and is accessed via properties. Check the "Parameters" section of the ``AnimationTree`` node to see all the parameters that can be modified in real-time: -.. image:: img/animtree16.png +.. image:: img/animtree_parameters.webp This is handy because it makes it possible to animate them from an ``AnimationPlayer``, or even the ``AnimationTree`` itself, -allowing the realization of very complex animation logic. +allowing very complex animation logic. -To modify these values from code, the property path must be obtained. This is done easily by hovering the mouse over any of the parameters: +To modify these values from code, you must obtain the property path. You can find them by hovering your mouse over any of the parameters: -.. image:: img/animtree17.png +.. image:: img/animtree_propertypath.webp -Which allows setting them or reading them: +Then you can set or read them: .. tabs:: .. code-tab:: gdscript GDScript animation_tree.set("parameters/eye_blend/blend_amount", 1.0) - # Simpler alternative form: + # Alternate syntax (same result) animation_tree["parameters/eye_blend/blend_amount"] = 1.0 .. code-tab:: csharp animationTree.Set("parameters/eye_blend/blend_amount", 1.0); -State machine travel --------------------- - -One of the nice features in Godot's ``StateMachine`` implementation is the ability to travel. The graph can be instructed to go from the -current state to another one, while visiting all the intermediate ones. This is done via the A\* algorithm. -If there is no path of transitions starting at the current state and finishing at the destination state, the graph teleports to the destination state. - -To use the travel ability, you should first retrieve the :ref:`AnimationNodeStateMachinePlayback ` -object from the ``AnimationTree`` node (it is exported as a property). - -.. tabs:: - .. code-tab:: gdscript GDScript - - var state_machine = animation_tree["parameters/playback"] - - .. code-tab:: csharp - - AnimationNodeStateMachinePlayback stateMachine = (AnimationNodeStateMachinePlayback)animationTree.Get("parameters/playback"); - -Once retrieved, it can be used by calling one of the many functions it offers: - -.. tabs:: - .. code-tab:: gdscript GDScript - - state_machine.travel("SomeState") - - .. code-tab:: csharp - - stateMachine.Travel("SomeState"); - -The state machine must be running before you can travel. Make sure to either call ``start()`` or choose a node to **Autoplay on Load**. - -.. image:: img/animtree18.png +.. note:: Advance Expressions from a StateMachine will not be found under the parameters. This is because they are held in another script rather than the + AnimationTree itself. Advance `Conditions` will be found under parameters. diff --git a/tutorials/animation/creating_movies.rst b/tutorials/animation/creating_movies.rst index 25d58f529..a7b12bd89 100644 --- a/tutorials/animation/creating_movies.rst +++ b/tutorials/animation/creating_movies.rst @@ -66,8 +66,9 @@ corner of the editor *before* running the project: Movie Maker mode is disabled, click the "movie reel" icon to enable -The icon gets a background matching the accent color when Movie Maker mode is -enabled: +A menu will be displayed with options to enable Movie Maker mode and to go to +the settings. The icon gets a background matching the accent color when Movie +Maker mode is enabled: .. figure:: img/creating_movies_disable_movie_maker_mode.webp :align: center @@ -153,23 +154,52 @@ Choosing an output format ------------------------- Output formats are provided by the :ref:`MovieWriter ` class. -Godot has 2 built-in :ref:`MovieWriters `, and more can be +Godot has 3 built-in :ref:`MovieWriters `, and more can be implemented by extensions: -AVI (recommended) +OGV (recommended) ~~~~~~~~~~~~~~~~~ +OGV container with Theora for video and Vorbis for audio. Features lossy video +and audio compression with a good balance of file size and encoding speed, with +a better image quality than MJPEG. It has 4 speed levels that can be adjusted +by changing **Editor > Movie Writer > Encoding Speed** with the fastest one +being around as fast as AVI with better compression. At slower speed levels, it +can compress even better while keeping the same image quality. The lossy +compression quality can be adjusted by changing **Editor > Movie Writer > Video +Quality** for video and **Editor > Movie Writer > Audio Quality** for audio. + +The Keyframe Interval can be adjusted by changing **Editor > Movie Writer > +Keyframe Interval**. In some cases, increasing this setting can improve +compression efficiency without downsides. + +The resulting file can be viewed in Godot with :ref:`VideoStreamPlayer +` and most video players but not web browsers. OGV +does not support transparency. + +To use OGV, specify a path to a ``.ogv`` file to be created in the **Editor > +Movie Writer > Movie File** project setting. + +.. note:: + + OGV can only be recorded in editor builds. + On the other hand, :ref:`OGV playback ` + is possible in both editor and export template builds. + +AVI +~~~ + AVI container with MJPEG for video and uncompressed audio. Features lossy video compression, resulting in medium file sizes and fast encoding. The lossy compression quality can be adjusted by changing -**Editor > Movie Writer > MJPEG Quality**. +**Editor > Movie Writer > Video Quality**. The resulting file can be viewed in most video players, but it must be converted to another format for viewing on the web or by Godot with the VideoStreamPlayer node. MJPEG does not support transparency. AVI output is currently limited to a file of 4 GB in size at most. -To use AVI, specify a path to an ``.avi`` file to be created in the +To use AVI, specify a path to a ``.avi`` file to be created in the **Editor > Movie Writer > Movie File** project setting. PNG @@ -213,12 +243,12 @@ the **Advanced** toggle in the top-right corner of the Project Settings dialog. desynchronizing over time. - **Speaker Mode:** The speaker mode to use in the recorded audio when writing a movie (stereo, 5.1 surround or 7.1 surround). -- **MJPEG Quality:** The JPEG quality to use when writing a video to an AVI - file, between ``0.01`` and ``1.0`` (inclusive). Higher quality values result +- **Video Quality:** The image quality to use when writing a video to an OGV or + AVI file, between ``0.01`` and ``1.0`` (inclusive). Higher quality values result in better-looking output at the cost of larger file sizes. Recommended quality - values are between ``0.75`` and ``0.9``. Even at quality ``1.0``, JPEG - compression remains lossy. This setting does not affect audio quality and is - ignored when writing to a PNG image sequence. + values are between ``0.75`` and ``0.9``. Even at quality ``1.0``, compression + remains lossy. This setting does not affect audio quality and is ignored when + writing to a PNG image sequence. - **Movie File:** The output path for the movie. This can be absolute or relative to the project root. - **Disable V-Sync:** If enabled, requests V-Sync to be disabled when writing a @@ -231,6 +261,18 @@ the **Advanced** toggle in the top-right corner of the Project Settings dialog. output file sizes. Most video hosting platforms do not support FPS values higher than 60, but you can use a higher value and use that to generate motion blur. +- **Audio Quality:** The audio quality to use when writing a video to an OGV + file, between ``-0.1`` and ``1.0`` (inclusive). Higher quality values result + in better audio quality at the cost of very slightly larger file sizes. + Recommended quality values are between ``0.3`` and ``0.5``. Even at quality + ``1.0``, compression remains lossy. +- **Encoding Speed:** The speed level to use when writing a video to an OGV + file. Faster speed levels have less compression efficiency. The image quality + stays barely the same. +- **Keyframe Interval:** Also known as GOP (Group Of Pictures), the maximum + number of inter-frames to use when writing to an OGV file. Higher values can + improve compression efficiency without quality loss but at the cost of slower + video seeks. .. note:: @@ -254,8 +296,9 @@ to render before quitting. Pressing :kbd:`F8` (:kbd:`Cmd + .` on macOS) or pressing :kbd:`Ctrl + C` on the terminal running Godot is **not recommended**, as it will result in an improperly formatted AVI file with no duration information. For PNG image -sequences, PNG images will not be negatively altered, but the associated WAV file -will still lack duration information. +sequences, PNG images will not be negatively altered, but the associated WAV +file will still lack duration information. OGV files might end up with slightly +different duration video and audio tracks but still valid. Some video players may still be able to play the AVI or WAV file with working video and audio. However, software that makes use of the AVI or WAV file such as @@ -370,18 +413,18 @@ Some common post-processing steps are listed below. .. _doc_creating_movies_converting_avi: -Converting AVI video to MP4 -~~~~~~~~~~~~~~~~~~~~~~~~~~~ +Converting OGV/AVI video to MP4 +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ While some platforms such as YouTube support uploading the AVI file directly, many others will require a conversion step beforehand. `HandBrake `__ (GUI) and `FFmpeg `__ (CLI) are popular open source tools for this purpose. FFmpeg has a steeper learning curve, but it's more powerful. -The command below converts an AVI video to an MP4 (H.264) video with a Constant -Rate Factor (CRF) of 15. This results in a relatively large file, but is -well-suited for platforms that will re-encode your videos to reduce their size -(such as most video sharing websites): +The command below converts an OGV/AVI video to an MP4 (H.264) video with a +Constant Rate Factor (CRF) of 15. This results in a relatively large file, but +is well-suited for platforms that will re-encode your videos to reduce their +size (such as most video sharing websites): :: diff --git a/tutorials/animation/img/animtree13.png b/tutorials/animation/img/animtree13.png deleted file mode 100644 index d79e64655..000000000 Binary files a/tutorials/animation/img/animtree13.png and /dev/null differ diff --git a/tutorials/animation/img/animtree14.png b/tutorials/animation/img/animtree14.png deleted file mode 100644 index 5248eb063..000000000 Binary files a/tutorials/animation/img/animtree14.png and /dev/null differ diff --git a/tutorials/animation/img/animtree16.png b/tutorials/animation/img/animtree16.png deleted file mode 100644 index ef8156d31..000000000 Binary files a/tutorials/animation/img/animtree16.png and /dev/null differ diff --git a/tutorials/animation/img/animtree17.png b/tutorials/animation/img/animtree17.png deleted file mode 100644 index bdc9c2917..000000000 Binary files a/tutorials/animation/img/animtree17.png and /dev/null differ diff --git a/tutorials/animation/img/animtree18.png b/tutorials/animation/img/animtree18.png deleted file mode 100644 index 7d8fabb42..000000000 Binary files a/tutorials/animation/img/animtree18.png and /dev/null differ diff --git a/tutorials/animation/img/animtree9.png b/tutorials/animation/img/animtree9.png deleted file mode 100644 index fcb17c43e..000000000 Binary files a/tutorials/animation/img/animtree9.png and /dev/null differ diff --git a/tutorials/animation/img/animtree9.webp b/tutorials/animation/img/animtree9.webp new file mode 100644 index 000000000..379937b24 Binary files /dev/null and b/tutorials/animation/img/animtree9.webp differ diff --git a/tutorials/animation/img/animtree4.png b/tutorials/animation/img/animtree_animtooutput.png similarity index 100% rename from tutorials/animation/img/animtree4.png rename to tutorials/animation/img/animtree_animtooutput.png diff --git a/tutorials/animation/img/animtree_badanimcondition.gif b/tutorials/animation/img/animtree_badanimcondition.gif new file mode 100644 index 000000000..c5532ceb6 Binary files /dev/null and b/tutorials/animation/img/animtree_badanimcondition.gif differ diff --git a/tutorials/animation/img/animtree_badanimcondition.webp b/tutorials/animation/img/animtree_badanimcondition.webp new file mode 100644 index 000000000..d8cd4a38a Binary files /dev/null and b/tutorials/animation/img/animtree_badanimcondition.webp differ diff --git a/tutorials/animation/img/animtree5.gif b/tutorials/animation/img/animtree_blend2.gif similarity index 100% rename from tutorials/animation/img/animtree5.gif rename to tutorials/animation/img/animtree_blend2.gif diff --git a/tutorials/animation/img/animtree10.png b/tutorials/animation/img/animtree_blendmode.png similarity index 100% rename from tutorials/animation/img/animtree10.png rename to tutorials/animation/img/animtree_blendmode.png diff --git a/tutorials/animation/img/animtree3.webp b/tutorials/animation/img/animtree_blendnodes.webp similarity index 100% rename from tutorials/animation/img/animtree3.webp rename to tutorials/animation/img/animtree_blendnodes.webp diff --git a/tutorials/animation/img/animtree_blendspace1d.webp b/tutorials/animation/img/animtree_blendspace1d.webp new file mode 100644 index 000000000..c9324a880 Binary files /dev/null and b/tutorials/animation/img/animtree_blendspace1d.webp differ diff --git a/tutorials/animation/img/animtree7.gif b/tutorials/animation/img/animtree_blendspace2d.gif similarity index 100% rename from tutorials/animation/img/animtree7.gif rename to tutorials/animation/img/animtree_blendspace2d.gif diff --git a/tutorials/animation/img/animtree8.gif b/tutorials/animation/img/animtree_blendspacepoints.gif similarity index 100% rename from tutorials/animation/img/animtree8.gif rename to tutorials/animation/img/animtree_blendspacepoints.gif diff --git a/tutorials/animation/img/animtree11.gif b/tutorials/animation/img/animtree_connections.gif similarity index 100% rename from tutorials/animation/img/animtree11.gif rename to tutorials/animation/img/animtree_connections.gif diff --git a/tutorials/animation/img/animtree_emptyblendtree.webp b/tutorials/animation/img/animtree_emptyblendtree.webp new file mode 100644 index 000000000..907f594f8 Binary files /dev/null and b/tutorials/animation/img/animtree_emptyblendtree.webp differ diff --git a/tutorials/animation/img/animtree_emptystatemachine.webp b/tutorials/animation/img/animtree_emptystatemachine.webp new file mode 100644 index 000000000..d2b7477f3 Binary files /dev/null and b/tutorials/animation/img/animtree_emptystatemachine.webp differ diff --git a/tutorials/animation/img/animtree6.png b/tutorials/animation/img/animtree_filtering.png similarity index 100% rename from tutorials/animation/img/animtree6.png rename to tutorials/animation/img/animtree_filtering.png diff --git a/tutorials/animation/img/animtree_goodanimcondition.gif b/tutorials/animation/img/animtree_goodanimcondition.gif new file mode 100644 index 000000000..648a3ee0d Binary files /dev/null and b/tutorials/animation/img/animtree_goodanimcondition.gif differ diff --git a/tutorials/animation/img/animtree_goodanimcondition.webp b/tutorials/animation/img/animtree_goodanimcondition.webp new file mode 100644 index 000000000..ce45f5c7b Binary files /dev/null and b/tutorials/animation/img/animtree_goodanimcondition.webp differ diff --git a/tutorials/animation/img/animtree_goodanimexpression.gif b/tutorials/animation/img/animtree_goodanimexpression.gif new file mode 100644 index 000000000..82c151560 Binary files /dev/null and b/tutorials/animation/img/animtree_goodanimexpression.gif differ diff --git a/tutorials/animation/img/animtree_goodanimexpression.webp b/tutorials/animation/img/animtree_goodanimexpression.webp new file mode 100644 index 000000000..905d6daa8 Binary files /dev/null and b/tutorials/animation/img/animtree_goodanimexpression.webp differ diff --git a/tutorials/animation/img/animtree_goodanimexpression2.webp b/tutorials/animation/img/animtree_goodanimexpression2.webp new file mode 100644 index 000000000..1c77baa31 Binary files /dev/null and b/tutorials/animation/img/animtree_goodanimexpression2.webp differ diff --git a/tutorials/animation/img/animtree6b.gif b/tutorials/animation/img/animtree_oneshot.gif similarity index 100% rename from tutorials/animation/img/animtree6b.gif rename to tutorials/animation/img/animtree_oneshot.gif diff --git a/tutorials/animation/img/animtree_parameters.webp b/tutorials/animation/img/animtree_parameters.webp new file mode 100644 index 000000000..8fe89c7c7 Binary files /dev/null and b/tutorials/animation/img/animtree_parameters.webp differ diff --git a/tutorials/animation/img/animtree_propertypath.webp b/tutorials/animation/img/animtree_propertypath.webp new file mode 100644 index 000000000..8b97b5762 Binary files /dev/null and b/tutorials/animation/img/animtree_propertypath.webp differ diff --git a/tutorials/animation/img/animtree_rootmotiontrack.webp b/tutorials/animation/img/animtree_rootmotiontrack.webp new file mode 100644 index 000000000..dadc44008 Binary files /dev/null and b/tutorials/animation/img/animtree_rootmotiontrack.webp differ diff --git a/tutorials/animation/img/animtree2.png b/tutorials/animation/img/animtree_rootnodes.png similarity index 100% rename from tutorials/animation/img/animtree2.png rename to tutorials/animation/img/animtree_rootnodes.png diff --git a/tutorials/animation/img/animtree_statemachinetransitionproperties.webp b/tutorials/animation/img/animtree_statemachinetransitionproperties.webp new file mode 100644 index 000000000..648c725cd Binary files /dev/null and b/tutorials/animation/img/animtree_statemachinetransitionproperties.webp differ diff --git a/tutorials/animation/img/animtree_timescale.webp b/tutorials/animation/img/animtree_timescale.webp new file mode 100644 index 000000000..74cfe8a17 Binary files /dev/null and b/tutorials/animation/img/animtree_timescale.webp differ diff --git a/tutorials/animation/img/animtree_timeseek.webp b/tutorials/animation/img/animtree_timeseek.webp new file mode 100644 index 000000000..c66ca5fd4 Binary files /dev/null and b/tutorials/animation/img/animtree_timeseek.webp differ diff --git a/tutorials/animation/img/animtree_transition.webp b/tutorials/animation/img/animtree_transition.webp new file mode 100644 index 000000000..120d76305 Binary files /dev/null and b/tutorials/animation/img/animtree_transition.webp differ diff --git a/tutorials/animation/img/animtree12.png b/tutorials/animation/img/animtree_transitiontypes.png similarity index 100% rename from tutorials/animation/img/animtree12.png rename to tutorials/animation/img/animtree_transitiontypes.png diff --git a/tutorials/animation/img/animtree1.png b/tutorials/animation/img/animtree_treeandplayersetup.png similarity index 100% rename from tutorials/animation/img/animtree1.png rename to tutorials/animation/img/animtree_treeandplayersetup.png diff --git a/tutorials/animation/playing_videos.rst b/tutorials/animation/playing_videos.rst index 5130f5387..596f34019 100644 --- a/tutorials/animation/playing_videos.rst +++ b/tutorials/animation/playing_videos.rst @@ -22,7 +22,7 @@ as it was too buggy and difficult to maintain. .. note:: - You may find videos with an ``.ogg`` or ``.ogx`` extensions, which are generic + You may find videos with a ``.ogg`` or ``.ogx`` extensions, which are generic extensions for data within an Ogg container. Renaming these file extensions to ``.ogv`` *may* allow the videos to be @@ -34,7 +34,7 @@ Setting up VideoStreamPlayer 1. Create a VideoStreamPlayer node using the Create New Node dialog. 2. Select the VideoStreamPlayer node in the scene tree dock, go to the inspector - and load an ``.ogv`` file in the Stream property. + and load a ``.ogv`` file in the Stream property. - If you don't have your video in Ogg Theora format yet, jump to :ref:`doc_playing_videos_recommended_theora_encoding_settings`. @@ -150,13 +150,11 @@ To ensure your videos decode smoothly on varied hardware: Playback limitations -------------------- -There are several limitations with the current implementation of video playback in Godot: +There are some limitations with the current implementation of video playback in Godot: -- Seeking a video to a certain point is not supported. -- Changing playback speed is not supported. VideoStreamPlayer also won't follow - :ref:`Engine.time_scale`. - Streaming a video from a URL is not supported. -- Only mono and stereo audio output is supported. +- Only mono and stereo audio output is supported. Videos with 4, 5.1 and 7.1 + audio channels are supported but down-mixed to stereo. .. _doc_playing_videos_recommended_theora_encoding_settings: @@ -183,7 +181,7 @@ maximize the quality of the output Ogg Theora video, but this can require a lot of disk space. `FFmpeg `__ (CLI) is a popular open source tool -for this purpose. FFmpeg has a steep learning curve, but it's powerful tool. +for this purpose. FFmpeg has a steep learning curve, but it's a powerful tool. Here are example FFmpeg commands to convert an MP4 video to Ogg Theora. Since FFmpeg supports a lot of input formats, you should be able to use the commands @@ -195,17 +193,20 @@ below with almost any input video format (AVI, MOV, WebM, …). You can check this by running ``ffmpeg`` without any arguments, then looking at the ``configuration:`` line in the command output. -.. UPDATE: When the FFmpeg bugfixes for https://trac.ffmpeg.org/ticket/11451 and -.. https://trac.ffmpeg.org/ticket/11454 are included in a stable FFmpeg release, -.. this note can be removed. That will likely be FFmpeg 7.2 or 8.0, and will -.. likely happen during the Godot 4.5 or 4.6 release cycle. - .. warning:: - All FFmpeg releases before Feb 20th, 2025 could produce bad video streams - due to a couple of bugs. It's highly recommended to use one of the latest - static daily builds, or build FFmpeg from their master branch where they're - already fixed. + Current official FFmpeg releases have some bugs in their Ogg/Theora + multiplexer. It's highly recommended to use one of the latest static daily + builds, or build from their master branch to get the latest fixes. + +.. UPDATE: When the FFmpeg bugfixes for https://trac.ffmpeg.org/ticket/11451 and +.. https://trac.ffmpeg.org/ticket/11454 are included in a stable FFmpeg release, +.. this warning can be removed. That will likely be FFmpeg 7.2 or 8.0, and will +.. likely happen during the Godot 4.5 or 4.6 release cycle. +.. Commits fixing the issues: +.. - https://github.org/FFmpeg/FFmpeg@22aa71d4da37a4ad2b0d28deeace64b57aa2ef50 +.. - https://github.org/FFmpeg/FFmpeg@84d85e7ad4ace228265af0c8c5caccc0730042fd +.. - https://github.org/FFmpeg/FFmpeg@6e26f57f672b05e7b8b052007a83aef99dc81ccb Balancing quality and file size ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ @@ -231,12 +232,18 @@ variable bitrates. The **GOP (Group of Pictures) size** (``-g:v``) is the max interval between keyframes. Increasing this value can improve compression with almost no impact -on quality. The valid range goes from ``0`` to ``2,147,483,648``, although -compression benefits will fade away and even be reversed as the GOP size -increases. The default size (``12``) is too low for most types of content, it's -therefore recommended to test higher GOP sizes before reducing video quality. +on quality. The default size (``12``) is too low for most types of content, +it's therefore recommended using higher GOP values before reducing video +quality. Compression benefits will fade away as the GOP size increases though. Values between ``64`` and ``512`` usually give the best compression. +.. note:: + + Higher GOP sizes will increase max seek times with a sudden increase when + going beyond powers of two starting at ``64``. Max seek times with GOP size + ``65`` can be almost twice as long as with GOP size ``64``, depending on + decoding speed. + FFmpeg: Convert while preserving original video resolution ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ diff --git a/tutorials/assets_pipeline/importing_3d_scenes/advanced_import_settings.rst b/tutorials/assets_pipeline/importing_3d_scenes/advanced_import_settings.rst new file mode 100644 index 000000000..a6c7f23d0 --- /dev/null +++ b/tutorials/assets_pipeline/importing_3d_scenes/advanced_import_settings.rst @@ -0,0 +1,247 @@ +.. _doc_advanced_import_settings: + +Advanced Import Settings +======================== + +While the regular import panel provides many essential options for imported 3D +models, the advanced import settings provides per object options, model previews, +and animation previews. To open it select the :button:`Advanced...` button at the +bottom of the import dock. + +.. figure:: img/importing_3d_scenes_advanced_import_settings_button.webp + :align: center + +This is available for 3D models imported as scenes, as well as animation libraries. + +.. note:: + + This page does not go over options also available in the import dock, or anything + outside of the advanced import settings. For information on those please read the + :ref:`doc_importing_3d_scenes_import_configuration` page. + +Using the Advanced Import Settings dialog +----------------------------------------- + +The first tab you'll see is the **Scene** tab. The options available in the +panel on the right are identical to the Import dock, but you have access to a 3D +preview. The 3D preview can be rotated by holding down the left mouse button +then dragging the mouse. Zoom can be adjusted using the mouse wheel. + +.. figure:: img/importing_3d_scenes_advanced_import_settings_scene.webp + :align: center + :alt: Advanced Import Settings dialog (Scene tab) + + Advanced Import Settings dialog (Scene tab). + Credit: `Modern Arm Chair 01 - Poly Haven `__ + +Configuring node import options +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +You can select individual nodes that compose the scene while in the **Scene** +tab using the tree view at the left: + +.. figure:: img/importing_3d_scenes_advanced_import_settings_node.webp + :align: center + :alt: Selecting a node in the Advanced Import Settings dialog (Scene tab) + + Selecting a node in the Advanced Import Settings dialog (Materials tab) + +This exposes several per-node import options: + +- **Skip Import:** If checked, the node will not be present in the final + imported scene. Enabling this disables all other options. +- **Generate > Physics:** If checked, generates a PhysicsBody3D *parent* node + with collision shapes that are *siblings* to the MeshInstance3D node. +- **Generate > NavMesh:** If checked, generates a NavigationRegion3D *child* + node for :ref:`navigation `. **Mesh + NavMesh** + will keep the original mesh visible, while **NavMesh Only** will only import + the navigation mesh (without a visual representation). **NavMesh Only** is + meant to be used when you've manually authored a simplified mesh for navigation. +- **Generate > Occluder:** If checked, generates an OccluderInstance3D *sibling* + node for :ref:`occlusion culling ` using the mesh's + geometry as a basis for the occluder's shape. **Mesh + Occluder** will keep + the original mesh visible, while **Occluder Only** will only import the + occluder (without a visual representation). **Occluder Only** is meant to be + used when you've manually authored a simplified mesh for occlusion culling. + +These options are only visible if some of the above options are enabled: + +- **Physics > Body Type:** Only visible if **Generate > Physics** is enabled. + Controls the PhysicsBody3D that should be created. **Static** creates a + StaticBody3D, **Dynamic** creates a RigidBody3D, **Area** creates an Area3D. +- **Physics > Shape Type:** Only visible if **Generate > Physics** is enabled. + **Trimesh** allows for precise per-triangle collision, but it can only be used + with a **Static** body type. Other types are less precise and may require + manual configuration, but can be used with any body type. For static level + geometry, use **Trimesh**. For dynamic geometry, use primitive shapes if + possible for better performance, or use one of the convex decomposition modes + if the shape is large and complex. +- **Decomposition > Advanced:** Only visible if **Physics > Shape Type** is + **Decompose Convex**. If checked, allows adjusting advanced decomposition + options. If disabled, only a preset **Precision** can be adjusted (which is + usually sufficient). +- **Decomposition > Precision:** Only visible if **Physics > Shape Type** is + **Decompose Convex**. Controls the precision to use for convex decomposition. + Higher values result in more detailed collision, at the cost of slower + generation and increased CPU usage during physics simulation. To improve + performance, it's recommended to keep this value as low as possible for your + use cases. +- **Occluder > Simplification Distance:** Only visible if **Generate > + Occluder** is set to **Mesh + Occluder** or **Occluder Only**. Higher values + result in an occluder mesh with fewer vertices (resulting in decreased CPU + utilization), at the cost of more occlusion culling issues (such as false + positives or false negatives). If you run into objects disappearing when they + shouldn't when the camera is near a certain mesh, try decreasing this value. + +Configuring mesh and material import options +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +In the Advanced Import Settings dialog, there are 2 ways to select individual +meshes or materials: + +- Switch to the **Meshes** or **Materials** tab in the top-left corner of the dialog. +- Stay in the **Scene** tab, but unfold the options on the tree view on the + left. After choosing a mesh or material, this presents the same information as + the **Meshes** and **Materials** tabs, but in a tree view instead of a list. + +If you select a mesh, different options will appear in the panel on the right: + +.. figure:: img/importing_3d_scenes_advanced_import_settings_meshes.webp + :align: center + :alt: Advanced Import Settings dialog (Meshes tab) + + Advanced Import Settings dialog (Meshes tab) + +The options are as follows: + +- **Save to File:** Saves the :ref:`class_Mesh` *resource* to an external file + (this isn't a scene file). You generally don't need to use this for placing + the mesh in a 3D scene – instead, you should instance the 3D scene directly. + However, having direct access to the Mesh resource is useful for specific + nodes, such as :ref:`class_MeshInstance3D`, :ref:`class_MultiMeshInstance3D`, + :ref:`class_GPUParticles3D` or :ref:`class_CPUParticles3D`. + - You will also need to specify an output file path using the option that + appears after enabling **Save to File**. It's recommended to use the ``.res`` + output file extension for smaller file sizes and faster loading speeds, as + ``.tres`` is inefficient for writing large amounts of data. +- **Generate > Shadow Meshes:** Per-mesh override for the **Meshes > Create + Shadow Meshes** scene-wide import option described in + :ref:`doc_importing_3d_scenes_using_the_import_dock`. **Default** will use the + scene-wide import option, while **Enable** or **Disable** can forcibly enable + or disable this behavior on a specific mesh. +- **Generate > Lightmap UV:** Per-mesh override for the **Meshes > Light + Baking** scene-wide import option described in + :ref:`doc_importing_3d_scenes_using_the_import_dock`. **Default** will use the + scene-wide import option, while **Enable** or **Disable** can forcibly enable + or disable this behavior on a specific mesh. + - Setting this to **Enable** on a scene with the **Static** light baking mode + is equivalent to configuring this mesh to use **Static Lightmaps**. Setting this + to **Disable** on a scene with the **Static Lightmaps** light baking mode is + equivalent to configuring this mesh to use **Static** instead. +- **Generate > LODs:** Per-mesh override for the **Meshes > Generate LODs** + scene-wide import option described in + :ref:`doc_importing_3d_scenes_using_the_import_dock`. **Default** will use the + scene-wide import option, while **Enable** or **Disable** can forcibly enable + or disable this behavior on a specific mesh. +- **LODs > Normal Merge Angle:** The minimum angle difference between two + vertices required to preserve a geometry edge in mesh LOD generation. If + running into visual issues with LOD generation, decreasing this value may help + (at the cost of less efficient LOD generation). + +If you select a material, only one option will appear in the panel on the right: + +.. figure:: img/importing_3d_scenes_advanced_import_settings_materials.webp + :align: center + :alt: Advanced Import Settings dialog (Materials tab) + + Advanced Import Settings dialog (Materials tab) + +When **Use External** is checked and an output path is specified, this lets you +use an external material instead of the material that is included in the +original 3D scene file; see the section below. + +Extracting materials to separate files +-------------------------------------- + +While Godot can import materials authored in 3D modeling software, the default +configuration may not be suitable for your needs. For example: + +- You want to configure material features not supported by your 3D application. +- You want to use a different texture filtering mode, as this option is + configured in the material since Godot 4.0 (and not in the image). +- You want to replace one of the materials with an entirely different material, + such as a custom shader. + +To be able to modify the 3D scene's materials in the Godot editor, you need to +use *external* material resources. + +In the top-left corner of the Advanced Import Settings dialog, choose +**Actions… > Extract Materials**: + +.. figure:: img/importing_3d_scenes_advanced_import_settings_extract_materials.webp + :align: center + :alt: Extracting all built-in materials to external resources in the Advanced Import Settings dialog + + Extracting all built-in materials to external resources in the Advanced Import Settings dialog + +After choosing this option, select a folder to extract material ``.tres`` files +to, then confirm the extraction: + +.. figure:: img/importing_3d_scenes_advanced_import_settings_extract_materials_confirm.webp + :align: center + :alt: Confirming material extraction in the Advanced Import Settings subdialog + + Confirming material extraction in the Advanced Import Settings subdialog + +.. note:: + + After extracting materials, the 3D scene will automatically be configured to + use external material references. As a result, you don't need to manually + enable **Use External** on every material to make the external ``.tres`` + material effective. + +When **Use External** is enabled, remember that the Advanced Import Settings +dialog will keep displaying the mesh's original materials (the ones designed in +the 3D modeling software). This means your customizations to the materials won't +be visible within this dialog. To preview your modified materials, you need to +place the imported 3D scene in another scene using the editor. + +Godot will not overwrite changes made to extracted materials when the source 3D +scene is reimported. However, if the material name is changed in the source 3D +file, the link between the original material and the extracted material will be +lost. As a result, you'll need to use the Advanced Import Settings dialog to +associate the renamed material to the existing extracted material. + +The above can be done in the dialog's **Materials** tab by selecting the +material, enabling **Save to File**, then specifying the save path using the +**Path** option that appears after enabling **Save to File**. + +Animation options +----------------- + +Several extra options are available for the generated :ref:`class_AnimationPlayer` +nodes, as well as their individual animations when they're selected in the +**Scene** tab. + +Optimizer +~~~~~~~~~ + +When animations are imported, an optimizer is run, which reduces the size of the +animation considerably. In general, this should always be turned on unless you +suspect that an animation might be broken due to it being enabled. + +Save to file +~~~~~~~~~~~~ + +By default, animations are saved as built-in. It is possible to save them to a +file instead. This allows adding custom tracks to the animations and keeping +them after a reimport. + +Slices +~~~~~~ + +It is possible to specify multiple animations from a single timeline as slices. +For this to work, the model must have only one animation that is named +``default``. To create slices, change the slice amount to something greater than +zero. You can then name a slice, specify which frames it starts and stops on, and +choose whether the animation loops or not. diff --git a/tutorials/assets_pipeline/importing_3d_scenes/available_formats.rst b/tutorials/assets_pipeline/importing_3d_scenes/available_formats.rst index 718f63b2f..b39771fa0 100644 --- a/tutorials/assets_pipeline/importing_3d_scenes/available_formats.rst +++ b/tutorials/assets_pipeline/importing_3d_scenes/available_formats.rst @@ -21,7 +21,7 @@ Godot supports the following 3D *scene file formats*: - FBX, supported via the `ufbx `__ library. The previous import workflow used `FBX2glTF `__ integration. This requires installing an external program that links against the - proprietary FBX SDK, so we recommend using the default ubfx method or other formats + proprietary FBX SDK, so we recommend using the default ufbx method or other formats listed above (if suitable for your workflow). Copy the scene file together with the textures and mesh data (if separate) to diff --git a/tutorials/assets_pipeline/importing_3d_scenes/img/importing_3d_scenes_advanced_import_settings_button.webp b/tutorials/assets_pipeline/importing_3d_scenes/img/importing_3d_scenes_advanced_import_settings_button.webp new file mode 100644 index 000000000..6b7cb6490 Binary files /dev/null and b/tutorials/assets_pipeline/importing_3d_scenes/img/importing_3d_scenes_advanced_import_settings_button.webp differ diff --git a/tutorials/assets_pipeline/importing_3d_scenes/img/importing_3d_scenes_advanced_import_settings_meshes.webp b/tutorials/assets_pipeline/importing_3d_scenes/img/importing_3d_scenes_advanced_import_settings_meshes.webp index 25ff9ae5f..e6a281c7a 100644 Binary files a/tutorials/assets_pipeline/importing_3d_scenes/img/importing_3d_scenes_advanced_import_settings_meshes.webp and b/tutorials/assets_pipeline/importing_3d_scenes/img/importing_3d_scenes_advanced_import_settings_meshes.webp differ diff --git a/tutorials/assets_pipeline/importing_3d_scenes/import_configuration.rst b/tutorials/assets_pipeline/importing_3d_scenes/import_configuration.rst index 845b60cce..fcd639705 100644 --- a/tutorials/assets_pipeline/importing_3d_scenes/import_configuration.rst +++ b/tutorials/assets_pipeline/importing_3d_scenes/import_configuration.rst @@ -40,7 +40,9 @@ This import process is customizable using 3 separate interfaces, depending on yo FileSystem dock. - The **Advanced Import Settings** dialog, which can be accessed by double-clicking the 3D scene in the FileSystem dock or by clicking the **Advanced…** button in - the Import dock. This allows you to customize per-object options in Godot. + the Import dock. This allows you to customize per-object options in Godot, and + preview models and animations. please see the :ref:`doc_advanced_import_settings` + page for more information. - :ref:`Import hints `, which are special suffixes added to object names in the 3D modeling software. This allows you to customize per-object options in the 3D modeling software. @@ -172,204 +174,75 @@ exported from other tools such as Maya. Universal** and **Embed as Uncompressed** keeps the textures embedded in the imported scene, with and without VRAM compression respectively. -Using the Advanced Import Settings dialog -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +**Blender-specific options** -The first tab you'll see is the **Scene** tab. The options available in the -panel on the right are identical to the Import dock, but you have access to a 3D -preview. The 3D preview can be rotated by holding down the left mouse button -then dragging the mouse. Zoom can be adjusted using the mouse wheel. +Only visible for ``.blend`` files. -.. figure:: img/importing_3d_scenes_advanced_import_settings_scene.webp - :align: center - :alt: Advanced Import Settings dialog (Scene tab) +**Nodes** - Advanced Import Settings dialog (Scene tab). - Credit: `Modern Arm Chair 01 - Poly Haven `__ +- **Visible:** **All** imports everything, even invisible objects. **Visible Only** + only imports visible objects. **Renderable** only imports objects that are marked + as renderable in Blender, regardless of whether they are actually visible. + In Blender, renderability is toggled by clicking the camera icon next to each object + in the Outliner, while visibility is toggled by the eye icon. +- **Active Collection Only:** If checked, only imports nodes that are in the active collection + in Blender. +- **Punctual Lights:** If checked, imports lights (directional, omni, and spot) from Blender. + "Punctual" is not to be confused with "positional", which is why directional lights + are also included. +- **Cameras:** If checked, imports cameras from Blender. +- **Custom Properties:** If checked, imports custom properties from Blender as glTF extras. + This data can then be used from an editor plugin that uses + :ref:`GLTFDocument.register_gltf_document_extension() `, + which can set node metadata on import (among other use cases). +- **Modifiers:** If set to **No Modifiers**, object modifiers are ignored on import. + If set to **All Modifiers**, applies modifiers to objects on import. -**Configuring node import options** +**Meshes** -You can select individual nodes that compose the scene while in the **Scene** -tab using the tree view at the left: +- **Colors:** If checked, imports vertex colors from Blender. +- **UVs:** If checked, imports vertex UV1 and UV2 from Blender. +- **Normals:** If checked, imports vertex normals from Blender. +- **Export Geometry Nodes Instances:** If checked, imports + `geometry node `__ + instances from Blender. +- **Tangents:** If checked, imports vertex tangents from Blender. +- **Skins:** **None** skips skeleton skin data import from Blender. **4 Influences (Compatible)** + imports skin data to be compatible with all renderers, at the cost of lower precision + for certain rigs. **All Influences** imports skin data with all influences + (up to 8 in Godot), which is more precise but may not be compatible with all renderers. +- **Export Bones Deforming Mesh Only:** If checked, only imports bones that deform the mesh + from Blender. -.. figure:: img/importing_3d_scenes_advanced_import_settings_node.webp - :align: center - :alt: Selecting a node in the Advanced Import Settings dialog (Scene tab) +**Materials** - Selecting a node in the Advanced Import Settings dialog (Materials tab) +- **Unpack Enabled:** If checked, unpacks the original images to the Godot filesystem + and uses them. This allows changing image import settings like VRAM compression. + If unchecked, allows Blender to convert the original images, such as repacking + roughness and metallic into one roughness + metallic texture. In most cases, + this option should be left checked, but if the ``.blend`` file's images + aren't in the correct format, this must be disabled for correct behavior. +- **Export Materials:** If set to **Placeholder**, does not import materials, + but keeps surface slots so that separate materials can be assigned to different surfaces. + If set to **Export**, imports materials as-is (note that procedural Blender materials + may not work correctly). If set to **Named Placeholder**, imports materials, + but doesn't import images that are packed into the ``.blend`` file. + Textures will have to be reassigned manually in the imported materials. -This exposes several per-node import options: +**Animation** -- **Skip Import:** If checked, the node will not be present in the final - imported scene. Enabling this disables all other options. -- **Generate > Physics:** If checked, generates a PhysicsBody3D *parent* node - with collision shapes that are *siblings* to the MeshInstance3D node. -- **Generate > NavMesh:** If checked, generates a NavigationRegion3D *child* - node for :ref:`navigation `. **Mesh + NavMesh** - will keep the original mesh visible, while **NavMesh Only** will only import - the navigation mesh (without a visual representation). **NavMesh Only** is - meant to be used when you've manually authored a simplified mesh for navigation. -- **Generate > Occluder:** If checked, generates an OccluderInstance3D *sibling* - node for :ref:`occlusion culling ` using the mesh's - geometry as a basis for the occluder's shape. **Mesh + Occluder** will keep - the original mesh visible, while **Occluder Only** will only import the - occluder (without a visual representation). **Occluder Only** is meant to be - used when you've manually authored a simplified mesh for occlusion culling. - -These options are only visible if some of the above options are enabled: - -- **Physics > Body Type:** Only visible if **Generate > Physics** is enabled. - Controls the PhysicsBody3D that should be created. **Static** creates a - StaticBody3D, **Dynamic** creates a RigidBody3D, **Area** creates an Area3D. -- **Physics > Shape Type:** Only visible if **Generate > Physics** is enabled. - **Trimesh** allows for precise per-triangle collision, but it can only be used - with a **Static** body type. Other types are less precise and may require - manual configuration, but can be used with any body type. For static level - geometry, use **Trimesh**. For dynamic geometry, use primitive shapes if - possible for better performance, or use one of the convex decomposition modes - if the shape is large and complex. -- **Decomposition > Advanced:** Only visible if **Physics > Shape Type** is - **Decompose Convex**. If checked, allows adjusting advanced decomposition - options. If disabled, only a preset **Precision** can be adjusted (which is - usually sufficient). -- **Decomposition > Precision:** Only visible if **Physics > Shape Type** is - **Decompose Convex**. Controls the precision to use for convex decomposition. - Higher values result in more detailed collision, at the cost of slower - generation and increased CPU usage during physics simulation. To improve - performance, it's recommended to keep this value as low as possible for your - use cases. -- **Occluder > Simplification Distance:** Only visible if **Generate > - Occluder** is set to **Mesh + Occluder** or **Occluder Only**. Higher values - result in an occluder mesh with fewer vertices (resulting in decreased CPU - utilization), at the cost of more occlusion culling issues (such as false - positives or false negatives). If you run into objects disappearing when they - shouldn't when the camera is near a certain mesh, try decreasing this value. - -**Configuring mesh and material import options** - -In the Advanced Import Settings dialog, there are 2 ways to select individual -meshes or materials: - -- Switch to the **Meshes** or **Materials** tab in the top-left corner of the dialog. -- Stay in the **Scene** tab, but unfold the options on the tree view on the - left. After choosing a mesh or material, this presents the same information as - the **Meshes** and **Materials** tabs, but in a tree view instead of a list. - -If you select a mesh, different options will appear in the panel on the right: - -.. figure:: img/importing_3d_scenes_advanced_import_settings_meshes.webp - :align: center - :alt: Advanced Import Settings dialog (Meshes tab) - - Advanced Import Settings dialog (Meshes tab) - -The options are as follows: - -- **Save to File:** Saves the :ref:`class_Mesh` *resource* to an external file - (this isn't a scene file). You generally don't need to use this for placing - the mesh in a 3D scene – instead, you should instance the 3D scene directly. - However, having direct access to the Mesh resource is useful for specific - nodes, such as :ref:`class_MeshInstance3D`, :ref:`class_MultiMeshInstance3D`, - :ref:`class_GPUParticles3D` or :ref:`class_CPUParticles3D`. - - You will also need to specify an output file path using the option that - appears after enabling **Save to File**. It's recommended to use the ``.res`` - output file extension for smaller file sizes and faster loading speeds, as - ``.tres`` is inefficient for writing large amounts of data. -- **Generate > Shadow Meshes:** Per-mesh override for the **Meshes > Create - Shadow Meshes** scene-wide import option described in - :ref:`doc_importing_3d_scenes_using_the_import_dock`. **Default** will use the - scene-wide import option, while **Enable** or **Disable** can forcibly enable - or disable this behavior on a specific mesh. -- **Generate > Lightmap UV:** Per-mesh override for the **Meshes > Light - Baking** scene-wide import option described in - :ref:`doc_importing_3d_scenes_using_the_import_dock`. **Default** will use the - scene-wide import option, while **Enable** or **Disable** can forcibly enable - or disable this behavior on a specific mesh. - - Setting this to **Enable** on a scene with the **Static** light baking mode - is equivalent to configuring this mesh to use **Static Lightmaps**. Setting this - to **Disable** on a scene with the **Static Lightmaps** light baking mode is - equivalent to configuring this mesh to use **Static** instead. -- **Generate > LODs:** Per-mesh override for the **Meshes > Generate LODs** - scene-wide import option described in - :ref:`doc_importing_3d_scenes_using_the_import_dock`. **Default** will use the - scene-wide import option, while **Enable** or **Disable** can forcibly enable - or disable this behavior on a specific mesh. -- **LODs > Normal Split Angle:** The minimum angle difference between two - vertices required to preserve a geometry edge in mesh LOD generation. If - running into visual issues with LOD generation, decreasing this value may help - (at the cost of less efficient LOD generation). -- **LODs > Normal Merge Angle:** The minimum angle difference between two - vertices required to preserve a geometry edge in mesh LOD generation. If - running into visual issues with LOD generation, decreasing this value may help - (at the cost of less efficient LOD generation). - -If you select a material, only one option will appear in the panel on the right: - -.. figure:: img/importing_3d_scenes_advanced_import_settings_materials.webp - :align: center - :alt: Advanced Import Settings dialog (Materials tab) - - Advanced Import Settings dialog (Materials tab) - -When **Use External** is checked and an output path is specified, this lets you -use an external material instead of the material that is included in the -original 3D scene file; see the section below. - -Extracting materials to separate files -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -While Godot can import materials authored in 3D modeling software, the default -configuration may not be suitable for your needs. For example: - -- You want to configure material features not supported by your 3D application. -- You want to use a different texture filtering mode, as this option is - configured in the material since Godot 4.0 (and not in the image). -- You want to replace one of the materials with an entirely different material, - such as a custom shader. - -To be able to modify the 3D scene's materials in the Godot editor, you need to -use *external* material resources. - -In the top-left corner of the Advanced Import Settings dialog, choose -**Actions… > Extract Materials**: - -.. figure:: img/importing_3d_scenes_advanced_import_settings_extract_materials.webp - :align: center - :alt: Extracting all built-in materials to external resources in the Advanced Import Settings dialog - - Extracting all built-in materials to external resources in the Advanced Import Settings dialog - -After choosing this option, select a folder to extract material ``.tres`` files -to, then confirm the extraction: - -.. figure:: img/importing_3d_scenes_advanced_import_settings_extract_materials_confirm.webp - :align: center - :alt: Confirming material extraction in the Advanced Import Settings subdialog - - Confirming material extraction in the Advanced Import Settings subdialog - -.. note:: - - After extracting materials, the 3D scene will automatically be configured to - use external material references. As a result, you don't need to manually - enable **Use External** on every material to make the external ``.tres`` - material effective. - -When **Use External** is enabled, remember that the Advanced Import Settings -dialog will keep displaying the mesh's original materials (the ones designed in -the 3D modeling software). This means your customizations to the materials won't -be visible within this dialog. To preview your modified materials, you need to -place the imported 3D scene in another scene using the editor. - -Godot will not overwrite changes made to extracted materials when the source 3D -scene is reimported. However, if the material name is changed in the source 3D -file, the link between the original material and the extracted material will be -lost. As a result, you'll need to use the Advanced Import Settings dialog to -associate the renamed material to the existing extracted material. - -The above can be done in the dialog's **Materials** tab by selecting the -material, enabling **Save to File**, then specifying the save path using the -**Path** option that appears after enabling **Save to File**. +- **Limit Playback:** If checked, limits animation import to the playback range + defined in Blender (the **Start** and **End** options at the right of the animation timeline + in Blender). This can avoid including unused animation data, making the imported scene smaller + and faster to load. However, this can also result in missing animation data if the playback range + is not set correctly in Blender. +- **Always Sample:** If checked, forces animation sampling on import to ensure consistency + between how Blender and glTF perform animation interpolation, at the cost of larger file sizes. + If unchecked, there may be differences in how animations are interpolated between what you see + in Blender and the imported scene in Godot, due to different interpolation semantics + between both. +- **Group Tracks:** If checked, imports animations (actives and on NLA tracks) as + separate tracks. If unchecked, all the currently assigned actions become one glTF animation. .. _doc_importing_3d_scenes_import_script: @@ -454,14 +327,18 @@ match, with support for ``?`` and ``*`` wildcards (using The script must start with an animation filter statement (as denoted by the line beginning with an ``@``). For example, if we would like to apply filters to all -imported animations which have a name ending in ``"_Loop"``:: +imported animations which have a name ending in ``"_Loop"``: + +.. code:: text @+*_Loop Similarly, additional patterns can be added to the same line, separated by commas. Here is a modified example to additionally *include* all animations with names that begin with ``"Arm_Left"``, but also *exclude* all animations which -have names ending in ``"Attack"``:: +have names ending in ``"Attack"``: + +.. code:: text @+*_Loop, +Arm_Left*, -*Attack @@ -478,7 +355,9 @@ script. For example: include all tracks in animations with names ending in ``"_Loop"``, but discard any tracks affecting a ``"Skeleton"`` which end in ``"Control"``, -unless they have ``"Arm"`` in their name:: +unless they have ``"Arm"`` in their name: + +:: @+*_Loop +* @@ -491,29 +370,6 @@ would be retained. Any track filter lines that do not begin with a ``+`` or ``-`` are ignored. -Storage -~~~~~~~ - -By default, animations are saved as built-in. It is possible to save them to a -file instead. This allows adding custom tracks to the animations and keeping -them after a reimport. - -Optimizer -~~~~~~~~~ - -When animations are imported, an optimizer is run, which reduces the size of the -animation considerably. In general, this should always be turned on unless you -suspect that an animation might be broken due to it being enabled. - -Clips -~~~~~ - -It is possible to specify multiple animations from a single timeline as clips. -For this to work, the model must have only one animation that is named -``default``. To create clips, change the clip amount to something greater than -zero. You can then name a clip, specify which frames it starts and stops on, and -choose whether the animation loops or not. - Scene inheritance ----------------- diff --git a/tutorials/assets_pipeline/importing_3d_scenes/index.rst b/tutorials/assets_pipeline/importing_3d_scenes/index.rst index 0bf4e38c5..b3c538c7f 100644 --- a/tutorials/assets_pipeline/importing_3d_scenes/index.rst +++ b/tutorials/assets_pipeline/importing_3d_scenes/index.rst @@ -21,6 +21,7 @@ dialog, and inherited scenes. model_export_considerations node_type_customization import_configuration + advanced_import_settings .. seealso:: diff --git a/tutorials/assets_pipeline/importing_3d_scenes/node_type_customization.rst b/tutorials/assets_pipeline/importing_3d_scenes/node_type_customization.rst index a5a9f4999..bd8ce6a83 100644 --- a/tutorials/assets_pipeline/importing_3d_scenes/node_type_customization.rst +++ b/tutorials/assets_pipeline/importing_3d_scenes/node_type_customization.rst @@ -20,11 +20,33 @@ will detect suffixes in object names and will perform actions automatically. All the suffixes described below can be used with ``-``, ``$``, and ``_`` and are **case-insensitive**. -Remove nodes (-noimp) ---------------------- +Opting out +---------- -Objects that have the ``-noimp`` suffix will be removed at import-time no matter -what their type is. They will not appear in the imported scene. +If you do not want Godot to perform any of the actions described below, you +can set the ``nodes/use_node_type_suffixes`` import option to ``false``. +This will disable all node type suffixes, which keeps nodes the same type +as the original file indicated. However, the ``-noimp`` suffix will still +be respected, as well as non-node suffixes like ``-vcol`` or ``-loop``. + +Alternatively, you can completely opt out of all name suffixes by setting +the ``nodes/use_name_suffixes`` import option to ``false``. This will +completely stop the general scene import code from looking at name suffixes. +However, the format-specific import code may still look at name suffixes, +such as the glTF importer checking for the ``-loop`` suffix. + +Disabling these options makes editor-imported files more similar to the +original files, and more similar to importing files at runtime. +For an import workflow that works at runtime, gives more predictable +results, and only has explicitly defined behavior, consider setting these +options to ``false`` and using :ref:`class_GLTFDocumentExtension` instead. + +Remove nodes and animations (-noimp) +------------------------------------ + +Nodes and animations that have the ``-noimp`` suffix will be removed at +import time no matter what their type is. They will not appear in the +imported scene. This is equivalent to enabling **Skip Import** for a node in the Advanced Import Settings dialog. @@ -132,3 +154,16 @@ will be imported as a Godot :ref:`class_Animation` with the loop flag set. In Blender, this requires using the NLA Editor and naming the Action with the ``loop`` or ``cycle`` prefix or suffix. + +Material alpha (-alpha) +----------------------- + +A material with the ``-alpha`` suffix will be imported with the +:ref:`TRANSPARENCY_ALPHA` transparency mode. + +Material vertex color (-vcol) +----------------------------- + +A material with the ``-vcol`` suffix will be imported with the +:ref:`FLAG_ALBEDO_FROM_VERTEX_COLOR` and +:ref:`FLAG_SRGB_VERTEX_COLOR` flags set. diff --git a/tutorials/assets_pipeline/importing_audio_samples.rst b/tutorials/assets_pipeline/importing_audio_samples.rst index 9018384fb..8fe289eb6 100644 --- a/tutorials/assets_pipeline/importing_audio_samples.rst +++ b/tutorials/assets_pipeline/importing_audio_samples.rst @@ -10,16 +10,15 @@ Godot provides 3 options to import your audio data: WAV, Ogg Vorbis and MP3. Each format has different advantages: -- WAV files use raw data or light compression (IMA-ADPCM or QOA). Currently - they can only be imported in raw format, but Godot allows compression after - import. They are lightweight to play back on the CPU (hundreds of simultaneous - voices in this format are fine). The downside is that they take up a lot of disk space. -- Ogg Vorbis files use a stronger compression that results in much - smaller file size, but require significantly more processing power to - play back. -- MP3 files use better compression than WAV with IMA-ADPCM or QOA, but worse - than Ogg Vorbis. This means that an MP3 file with roughly equal quality to - Ogg Vorbis will be significantly larger. On the bright side, MP3 requires +- WAV files use raw data or light compression (IMA ADPCM or Quite OK Audio). Currently + they can only be imported in raw format, but Godot allows compression after import. + They are lightweight to play back on the CPU (hundreds of simultaneous voices + in this format are fine). The downside is that they take up a lot of disk space. +- Ogg Vorbis files use a stronger compression that results in much smaller file + size, but require significantly more processing power to play back. +- MP3 files use better compression than WAV with IMA ADPCM or Quite OK Audio, but + worse than Ogg Vorbis. This means that an MP3 file with roughly equal quality + to Ogg Vorbis will be significantly larger. On the bright side, MP3 requires less CPU usage to play back compared to Ogg Vorbis. .. note:: @@ -30,23 +29,23 @@ Each format has different advantages: Here is a comparative chart representing the file size of 1 second of audio with each format: -+-----------------------------+-------------------+ -| Format | 1 second of audio | -+=============================+===================+ -| WAV 24-bit, 96 kHz, stereo | 576 KB | -+-----------------------------+-------------------+ -| WAV 16-bit, 44 kHz, mono | 88 KB | -+-----------------------------+-------------------+ -| WAV IMA-ADPCM, 44 kHz, mono | 22 KB | -+-----------------------------+-------------------+ -| WAV QOA, 44 kHz, mono | 17 KB | -+-----------------------------+-------------------+ -| MP3 192 Kb/s, stereo | 24 KB | -+-----------------------------+-------------------+ -| Ogg Vorbis 128 Kb/s, stereo | 16 KB | -+-----------------------------+-------------------+ -| Ogg Vorbis 96 Kb/s, stereo | 12 KB | -+-----------------------------+-------------------+ ++------------------------------+-------------------+ +| Format | 1 second of audio | ++==============================+===================+ +| WAV 24-bit, 96 kHz, stereo | 576 KB | ++------------------------------+-------------------+ +| WAV 16-bit, 44 kHz, mono | 88 KB | ++------------------------------+-------------------+ +| WAV IMA ADPCM, 44 kHz, mono | 22 KB | ++------------------------------+-------------------+ +| Quite OK Audio, 44 kHz, mono | 17 KB | ++------------------------------+-------------------+ +| MP3 192 Kb/s, stereo | 24 KB | ++------------------------------+-------------------+ +| Ogg Vorbis 128 Kb/s, stereo | 16 KB | ++------------------------------+-------------------+ +| Ogg Vorbis 96 Kb/s, stereo | 12 KB | ++------------------------------+-------------------+ Note that the MP3 and Ogg Vorbis figures can vary depending on the encoding type. The above figures use :abbr:`CBR (Constant Bit Rate)` encoding for @@ -125,8 +124,8 @@ saving to a waveform, which increases their size unnecessarily and add latency to the moment they are played back. Enabling **Trim** will automatically trim the beginning and end of the audio if -it's lower than -50 dB *after* normalization (see **Edit > Normalize** below). A -fade-in/fade-out period of 500 samples is also used during trimming to avoid +it's lower than -50 dB *after* normalization (see **Edit > Normalize** below). +A fade-in/fade-out period of 500 samples is also used during trimming to avoid audible pops. Edit > Normalize @@ -143,13 +142,15 @@ Unlike Ogg Vorbis and MP3, WAV files can contain metadata to indicate whether they're looping (in addition to loop points). By default, Godot will follow this metadata, but you can choose to apply a specific loop mode: +- **Detect from WAV:** Uses loop information from the WAV metadata. - **Disabled:** Don't loop audio, even if metadata indicates the file should be played back looping. -- **Forward:** Standard audio looping. -- **Ping-Pong:** Play audio forward until it's done playing, then play it - backward and repeat. This is similar to mirrored texture repeat, but for - audio. -- **Backward:** Play audio in reverse and loop back to the end when done playing. +- **Forward:** Standard audio looping. Plays the audio forward from the beginning + to the loop end, then returns to the loop beginning and repeats. +- **Ping-Pong:** Plays the audio forward until the loop end, then backwards to + the loop beginning, repeating this cycle. +- **Backward:** Plays the audio backwards from the loop end to the loop beginning, + then repeats. When choosing one of the **Forward**, **Ping-Pong** or **Backward** loop modes, loop points can also be defined to make only a specific part of the sound loop. @@ -166,12 +167,12 @@ the end of the audio file if set to ``-1``. Compress > Mode --------------- -Three compression modes can be chosen from for WAV files: **Disabled** (default), -**RAM (Ima-ADPCM)**, or **QOA (Quite OK Audio)**. **RAM (Ima-ADPCM)** reduces -file size and memory usage a little, at the cost of decreasing quality in an -audible manner. **QOA (Quite OK Audio)** reduces file size a bit more than -**RAM (Ima-ADPCM)** and the quality decrease is much less noticeable, at the -cost of higher CPU usage (still much lower than MP3). +Three compression modes can be chosen from for WAV files: **PCM (Uncompressed)**, +**IMA ADPCM**, or **Quite OK Audio** (default). **IMA ADPCM** reduces file size +and memory usage a little, at the cost of decreasing quality in an audible manner. +**Quite OK Audio** reduces file size a bit more than **IMA ADPCM** and the quality +decrease is much less noticeable, at the cost of slightly higher CPU usage (still +much lower than MP3). Ogg Vorbis and MP3 don't decrease quality as much and can provide greater file size reductions, at the cost of higher CPU usage during playback. This higher @@ -265,8 +266,8 @@ music tracks). .. note:: Unlike WAV files, Ogg Vorbis and MP3 only support a "loop begin" loop point, - not a "loop end" point. Looping can also be only be standard forward - looping, not ping-pong or backward. + not a "loop end" point. Looping can also be only be standard forward looping, + not ping-pong or backward. .. _doc_importing_audio_samples_best_practices: diff --git a/tutorials/assets_pipeline/importing_images.rst b/tutorials/assets_pipeline/importing_images.rst index b96615e78..2da557969 100644 --- a/tutorials/assets_pipeline/importing_images.rst +++ b/tutorials/assets_pipeline/importing_images.rst @@ -27,7 +27,7 @@ Godot can import the following image formats: - Truevision Targa (``.tga``) - SVG (``.svg``) - SVGs are rasterized using `ThorVG `__ - when importing them. `Support is limited `__; + when importing them. `Support is limited `__; complex vectors may not render correctly. :ref:`Text must be converted to paths `; otherwise, it won't appear in the rasterized image. You can check whether ThorVG can render a certain vector correctly using its diff --git a/tutorials/assets_pipeline/importing_translations.rst b/tutorials/assets_pipeline/importing_translations.rst index a6b75ad01..8b443172d 100644 --- a/tutorials/assets_pipeline/importing_translations.rst +++ b/tutorials/assets_pipeline/importing_translations.rst @@ -31,86 +31,16 @@ each string. This allows you to revise the text while it is being translated to other languages. The unique ID can be a number, a string, or a string with a number (it's just a unique string anyway). -.. note:: If you need a more powerful file format, Godot also supports - loading translations written in the gettext ``.po`` format. See - :ref:`doc_localization_using_gettext` for details. - -Translation format ------------------- +Supported formats +----------------- To complete the picture and allow efficient support for translations, Godot has a special importer that can read CSV files. Most spreadsheet -editors can export to this format, so the only requirement is that the files -have a special arrangement. The CSV files **must** be saved with UTF-8 encoding -without a `byte order mark `__. +editors can export to this format, so the only requirement is that the +files have a special arrangement. See +:ref:`doc_localization_using_spreadsheets` for detailed info on +formatting and importing CSVs. -CSV files must be formatted as follows: - -+--------+----------+----------+----------+ -| keys | | | | -+========+==========+==========+==========+ -| KEY1 | string | string | string | -+--------+----------+----------+----------+ -| KEY2 | string | string | string | -+--------+----------+----------+----------+ -| KEYN | string | string | string | -+--------+----------+----------+----------+ - -The "lang" tags must represent a language, which must be one of the :ref:`valid -locales ` supported by the engine, or they must start with an underscore (`_`), -which means the related column is served as comment and won't be imported. -The "KEY" tags must be unique and represent a string universally (they are usually in -uppercase, to differentiate from other strings). These keys will be replaced at -runtime by the matching translated string. Note that the case is important, -"KEY1" and "Key1" will be different keys. -The top-left cell is ignored and can be left empty or having any content. -Here's an example: - -+-------+-----------------------+------------------------+------------------------------+ -| keys | en | es | ja | -+=======+=======================+========================+==============================+ -| GREET | Hello, friend! | Hola, amigo! | こんにちは | -+-------+-----------------------+------------------------+------------------------------+ -| ASK | How are you? | Cómo está? | 元気ですか | -+-------+-----------------------+------------------------+------------------------------+ -| BYE | Goodbye | Adiós | さようなら | -+-------+-----------------------+------------------------+------------------------------+ -| QUOTE | "Hello" said the man. | "Hola" dijo el hombre. | 「こんにちは」男は言いました | -+-------+-----------------------+------------------------+------------------------------+ - -The same example is shown below as a comma-separated plain text file, -which should be the result of editing the above in a spreadsheet. -When editing the plain text version, be sure to enclose with double -quotes any message that contains commas, line breaks or double quotes, -so that commas are not parsed as delimiters, line breaks don't create new -entries and double quotes are not parsed as enclosing characters. Be sure -to escape any double quotes a message may contain by preceding them with -another double quote. Alternatively, you can select another delimiter than -comma in the import options. - -.. code-block:: none - - keys,en,es,ja - GREET,"Hello, friend!","Hola, amigo!",こんにちは - ASK,How are you?,Cómo está?,元気ですか - BYE,Goodbye,Adiós,さようなら - QUOTE,"""Hello"" said the man.","""Hola"" dijo el hombre.",「こんにちは」男は言いました - -CSV importer ------------- - -Godot will treat CSV files as translations by default. It will import them -and generate one or more compressed translation resource files next to it. - -Importing will also add the translation to the list of -translations to load when the game runs, specified in project.godot (or the -project settings). Godot allows loading and removing translations at -runtime as well. - -Select the ``.csv`` file and access the **Import** dock to define import -options. You can toggle the compression of the imported translations, and -select the delimiter to use when parsing the CSV file. - -.. image:: img/import_csv.webp - -Be sure to click **Reimport** after any change to these options. +If you need a more powerful file format, Godot also supports loading +translations written in the gettext ``.po`` format. See +:ref:`doc_localization_using_gettext` for details. diff --git a/tutorials/audio/text_to_speech.rst b/tutorials/audio/text_to_speech.rst index 6e91954c8..4717dccda 100644 --- a/tutorials/audio/text_to_speech.rst +++ b/tutorials/audio/text_to_speech.rst @@ -69,7 +69,7 @@ Requirements for functionality Godot includes text-to-speech functionality. You can find these under the :ref:`DisplayServer class `. -Godot depends on system libraries for text-to-speech functionality. These libraries are installed by default on Windows and macOS, but not on all Linux distributions. If they are not present, text-to-speech functionality will not work. Specifically, the ``tts_get_voices()`` method will return an empty list, indicating that there are no usable voices. +Godot depends on system libraries for text-to-speech functionality. These libraries are installed by default on Windows, macOS, Web, Android and iOS, but not on all Linux distributions. If they are not present, text-to-speech functionality will not work. Specifically, the ``tts_get_voices()`` method will return an empty list, indicating that there are no usable voices. Both Godot users on Linux and end-users on Linux running Godot games need to ensure that their system includes the system libraries for text-to-speech to work. Please consult the table below or your own distribution's documentation to determine what libraries you need to install. diff --git a/tutorials/best_practices/data_preferences.rst b/tutorials/best_practices/data_preferences.rst index 1bfe478b6..a4a4448ce 100644 --- a/tutorials/best_practices/data_preferences.rst +++ b/tutorials/best_practices/data_preferences.rst @@ -105,7 +105,7 @@ Contiguous memory stores imply the following operation performance: though. Done by re-sorting the Array after every edit and writing an ordered-aware search algorithm. -Godot implements Dictionary as an ``HashMap``. The engine +Godot implements Dictionary as a ``HashMap``. The engine stores a small array (initialized to 2^3 or 8 records) of key-value pairs. When one attempts to access a value, they provide it a key. It then *hashes* the key, i.e. converts it into a number. The "hash" is used to calculate the index diff --git a/tutorials/best_practices/godot_notifications.rst b/tutorials/best_practices/godot_notifications.rst index aea48284c..4afb1f592 100644 --- a/tutorials/best_practices/godot_notifications.rst +++ b/tutorials/best_practices/godot_notifications.rst @@ -166,7 +166,9 @@ delta time methods as needed. public void _Process(double delta) { if (Input.IsActionJustPressed("ui_select")) + { GD.Print(delta); + } } // Called during every input event. Equally true for _input(). @@ -176,7 +178,9 @@ delta time methods as needed. { case InputEventKey: if (Input.IsActionJustPressed("ui_accept")) + { GD.Print(GetProcessDeltaTime()); + } break; } } @@ -360,9 +364,9 @@ nodes that one might create at runtime. return _parentCache.HasUserSignal("InteractedWith"); } - public void _Notification(int what) + public override void _Notification(int what) { - switch (what) + switch ((long)what) { case NotificationParented: _parentCache = GetParent(); diff --git a/tutorials/best_practices/project_organization.rst b/tutorials/best_practices/project_organization.rst index 5a3e9927b..9eb806850 100644 --- a/tutorials/best_practices/project_organization.rst +++ b/tutorials/best_practices/project_organization.rst @@ -113,7 +113,9 @@ in general). On Windows 10, to further avoid mistakes related to case sensitivity, you can also make the project folder case-sensitive. After enabling the Windows -Subsystem for Linux feature, run the following command in a PowerShell window:: +Subsystem for Linux feature, run the following command in a PowerShell window: + +:: # To enable case-sensitivity: fsutil file setcasesensitiveinfo enable @@ -123,6 +125,8 @@ Subsystem for Linux feature, run the following command in a PowerShell window:: If you haven't enabled the Windows Subsystem for Linux, you can enter the following line in a PowerShell window *running as Administrator* then reboot -when asked:: +when asked: + +:: Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux diff --git a/tutorials/best_practices/scenes_versus_scripts.rst b/tutorials/best_practices/scenes_versus_scripts.rst index 713075404..4b83ca203 100644 --- a/tutorials/best_practices/scenes_versus_scripts.rst +++ b/tutorials/best_practices/scenes_versus_scripts.rst @@ -10,7 +10,7 @@ declarative code. Each system's capabilities are different as a result. Scenes can define how an extended class initializes, but not what its behavior actually is. Scenes are often used in conjunction with a script, -the scene declaring a composition of nodes, and the script adding behaviour with imperative code. +the scene declaring a composition of nodes, and the script adding behavior with imperative code. Anonymous types --------------- diff --git a/tutorials/best_practices/version_control_systems.rst b/tutorials/best_practices/version_control_systems.rst index a09ffe9da..42c8f0345 100644 --- a/tutorials/best_practices/version_control_systems.rst +++ b/tutorials/best_practices/version_control_systems.rst @@ -82,3 +82,98 @@ It is better to set this option as: Creating version control metadata using the project manager or editor will automatically enforce LF line endings using the ``.gitattributes`` file. In this case, you don't need to change your Git configuration. + +Git LFS +------- + +Git LFS (Large File Storage) is a Git extension that allows you to manage large +files in your repository. It replaces large files with text pointers inside Git, +while storing the file contents on a remote server. This is useful for +managing large assets, such as textures, audio files, and 3D models, without +bloating your Git repository. + +.. note:: + + When using Git LFS you will want to ensure it is setup before you commit any files to your repository. + If you have already committed files to your repository, you will need to + remove them from the repository and re-add them after setting up Git LFS. + + It is possible to use ``git lfs migrate`` to convert existing files in your repository, but this is more in-depth and + requires a good understanding of Git. + + A common approach is setting up a new repository with Git LFS (and a proper ``.gitattributes``), then + copying the files from the old repository to the new one. This way, you + can ensure that all files are tracked by LFS from the start. + +To use Git LFS with Godot, you need to install the Git LFS extension and +configure it to track the file types you want to manage. You can do this by +running the following command in your terminal: +:: + + git lfs install + +This will create a ``.gitattributes`` file in your repository that tells Git to +use LFS for the specified file types. You can add more file types by modifying +the ``.gitattributes`` file. For example, to track all GLB files, you can do this by +running the following command in your terminal: +:: + + git lfs track "*.glb" + +When you add or modify files that are tracked by LFS, Git will automatically +store them in LFS instead of the regular Git history. You can push and pull +LFS files just like regular Git files, but keep in mind that LFS files are +stored separately from the rest of your Git history. This means that you may +need to install Git LFS on any machine that you clone the repository to in +order to access the LFS files. + +Below is an example ``.gitattributes`` file that you can use as a starting point for Git LFS. +These file types were chosen because they are commonly used, but you can modify the list to include any binary types you may have in your project. + +.. code-block:: unixconfig + + # Normalize EOL for all files that Git considers text files. + * text=auto eol=lf + + # Git LFS Tracking (Assets) + + # 3D Models + *.fbx filter=lfs diff=lfs merge=lfs -text + *.gltf filter=lfs diff=lfs merge=lfs -text + *.glb filter=lfs diff=lfs merge=lfs -text + *.blend filter=lfs diff=lfs merge=lfs -text + *.obj filter=lfs diff=lfs merge=lfs -text + + # Images + *.png filter=lfs diff=lfs merge=lfs -text + *.svg filter=lfs diff=lfs merge=lfs -text + *.jpg filter=lfs diff=lfs merge=lfs -text + *.jpeg filter=lfs diff=lfs merge=lfs -text + *.gif filter=lfs diff=lfs merge=lfs -text + *.tga filter=lfs diff=lfs merge=lfs -text + *.webp filter=lfs diff=lfs merge=lfs -text + *.exr filter=lfs diff=lfs merge=lfs -text + *.hdr filter=lfs diff=lfs merge=lfs -text + *.dds filter=lfs diff=lfs merge=lfs -text + + # Audio + *.mp3 filter=lfs diff=lfs merge=lfs -text + *.wav filter=lfs diff=lfs merge=lfs -text + *.ogg filter=lfs diff=lfs merge=lfs -text + + # Font & Icon + *.ttf filter=lfs diff=lfs merge=lfs -text + *.otf filter=lfs diff=lfs merge=lfs -text + *.ico filter=lfs diff=lfs merge=lfs -text + + # Godot LFS Specific + *.scn filter=lfs diff=lfs merge=lfs -text + *.res filter=lfs diff=lfs merge=lfs -text + *.material filter=lfs diff=lfs merge=lfs -text + *.anim filter=lfs diff=lfs merge=lfs -text + *.mesh filter=lfs diff=lfs merge=lfs -text + *.lmbake filter=lfs diff=lfs merge=lfs -text + +For more information on Git LFS, check the official documentation: +https://git-lfs.github.com/ and https://docs.github.com/en/repositories/working-with-files/managing-large-files. + diff --git a/tutorials/editor/command_line_tutorial.rst b/tutorials/editor/command_line_tutorial.rst index ab28667d3..d97997035 100644 --- a/tutorials/editor/command_line_tutorial.rst +++ b/tutorials/editor/command_line_tutorial.rst @@ -16,7 +16,7 @@ suitable for this workflow. On Windows and Linux, you can run a Godot binary in a terminal by specifying its relative or absolute path. - On macOS, the process is different due to Godot being contained within an + On macOS, the process is different due to Godot being contained within a ``.app`` bundle (which is a *folder*, not a file). To run a Godot binary from a terminal on macOS, you have to ``cd`` to the folder where the Godot application bundle is located, then run ``Godot.app/Contents/MacOS/Godot`` @@ -43,17 +43,19 @@ given build type. **General options** -+----------------------------+-----------------------------------------------------------------------------+ -| Command | Description | -+----------------------------+-----------------------------------------------------------------------------+ -| ``-h``, ``--help`` | |release| Display the list of command line options. | -+----------------------------+-----------------------------------------------------------------------------+ -| ``--version`` | |release| Display the version string. | -+----------------------------+-----------------------------------------------------------------------------+ -| ``-v``, ``--verbose`` | |release| Use verbose stdout mode. | -+----------------------------+-----------------------------------------------------------------------------+ -| ``-q``, ``--quiet`` | |release| Quiet mode, silences stdout messages. Errors are still displayed. | -+----------------------------+-----------------------------------------------------------------------------+ ++----------------------------+-------------------------------------------------------------------------------+ +| Command | Description | ++----------------------------+-------------------------------------------------------------------------------+ +| ``-h``, ``--help`` | |release| Display the list of command line options. | ++----------------------------+-------------------------------------------------------------------------------+ +| ``--version`` | |release| Display the version string. | ++----------------------------+-------------------------------------------------------------------------------+ +| ``-v``, ``--verbose`` | |release| Use verbose stdout mode. | ++----------------------------+-------------------------------------------------------------------------------+ +| ``-q``, ``--quiet`` | |release| Quiet mode, silences stdout messages. Errors are still displayed. | ++----------------------------+-------------------------------------------------------------------------------+ +| ``--no-header`` | |release| Do not print engine version and rendering method header on startup. | ++----------------------------+-------------------------------------------------------------------------------+ **Run options** @@ -66,8 +68,15 @@ given build type. +------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------+ | ``-p``, ``--project-manager`` | |editor| Start the Project Manager, even if a project is auto-detected. | +------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| ``--recovery-mode`` | |editor| "Start the editor in recovery mode, which disables features that can typically cause startup crashes, such as tool scripts, editor plugins, | +| | GDExtension addons, and others. | ++------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------+ | ``--debug-server `` | |editor| Start the editor debug server (``://[:]``, e.g. ``tcp://127.0.0.1:6007``) | +------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| ``--dap-port `` | |editor| Use the specified port for the GDScript Debug Adapter Protocol. Recommended port range ``[1024, 49151]``. | ++------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| ``--lsp-port `` | |editor| Use the specified port for the GDScript Language Server Protocol. Recommended port range ``[1024, 49151]``. | ++------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------+ | ``--quit`` | |release| Quit after the first iteration. | +------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------+ | ``--quit-after`` | |release| Quit after the given number of iterations. Set to 0 to disable. | @@ -77,6 +86,8 @@ given build type. +------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------+ | ``--path `` | |release| Path to a project (```` must contain a 'project.godot' file). | +------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| ``scene `` | |release| Path or UID of a scene in the project that should be started. | ++------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------+ | ``-u``, ``--upwards`` | |release| Scan folders upwards for 'project.godot' file. | +------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------+ | ``--main-pack `` | |release| Path to a pack (.pck) file to load. | @@ -92,6 +103,9 @@ given build type. +------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------+ | ``--display-driver `` | |release| Display driver (and rendering driver). Use ``--help`` first to display the list of available drivers. | +------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| ``--audio-output-latency`` | |release| Override audio output latency in milliseconds (default is 15 ms). Lower values make sound playback more reactive but increase CPU usage, and may | +| | result in audio cracking if the CPU can't keep up | ++------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------+ | ``--rendering-method `` | |release| Renderer name. Requires driver support. | +------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------+ | ``--rendering-driver `` | |release| Rendering driver (depends on display driver). Use ``--help`` first to display the list of available drivers. | @@ -104,6 +118,9 @@ given build type. +------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------+ | ``--headless`` | |release| Enable headless mode (``--display-driver headless --audio-driver Dummy``). Useful for servers and with ``--script``. | +------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| ``--log-file`` | |release| Write output/error log to the specified path instead of the default location defined by the project. path should be absolute or relative to | +| | the project directory. | ++------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------+ | ``--write-movie `` | |release| Run the engine in a way that a movie is written (usually with .avi or .png extension). | | | ``--fixed-fps`` is forced when enabled, but can be used to change movie FPS. | | | ``--disable-vsync`` can speed up movie writing but makes interaction more difficult. | @@ -133,6 +150,11 @@ given build type. +------------------------------------+----------------------------------------------------------------------------+ | ``--xr-mode `` | |release| Select XR mode ('default', 'off', 'on'). | +------------------------------------+----------------------------------------------------------------------------+ +| ``--wid `` | |release| Request parented to window. | ++------------------------------------+----------------------------------------------------------------------------+ +| ``--accessibility `` | |release| Select accessibility mode ['auto' (when screen reader is running,| +| | default), 'always', 'disabled']. | ++------------------------------------+----------------------------------------------------------------------------+ **Debug options** @@ -143,6 +165,8 @@ given build type. +--------------------------------+-----------------------------------------------------------------------------------------------------------------+ | ``-b``, ``--breakpoints`` | |release| Breakpoint list as source::line comma-separated pairs, no spaces (use ``%20`` instead). | +--------------------------------+-----------------------------------------------------------------------------------------------------------------+ +| ``--ignore-error-breaks`` | |release| If debugger is connected, prevents sending error breakpoints. | ++--------------------------------+-----------------------------------------------------------------------------------------------------------------+ | ``--profiling`` | |release| Enable profiling in the script debugger. | +--------------------------------+-----------------------------------------------------------------------------------------------------------------+ | ``--gpu-profile`` | |release| Show a GPU profile of the tasks that took the most time during frame rendering. | @@ -151,6 +175,16 @@ given build type. +--------------------------------+-----------------------------------------------------------------------------------------------------------------+ | ``--gpu-abort`` | |debug| Abort on GPU errors (usually validation layer errors), may help see the problem if your system freezes. | +--------------------------------+-----------------------------------------------------------------------------------------------------------------+ +| ``--generate-spirv-debug-info``| |debug| Generate SPIR-V debug information. This allows source-level shader debugging with RenderDoc. | ++--------------------------------+-----------------------------------------------------------------------------------------------------------------+ +| ``--extra-gpu-memory-tracking``| |debug| Enables additional memory tracking (see class reference for | +| | `RenderingDevice.get_driver_and_device_memory_report()` and linked methods). Currently only implemented for | +| | Vulkan. Enabling this feature may cause crashes on some systems due to buggy drivers or bugs in the Vulkan | +| | Loader. See https://github.com/godotengine/godot/issues/95967 | ++--------------------------------+-----------------------------------------------------------------------------------------------------------------+ +| ``--accurate-breadcrumbs`` | |debug| Force barriers between breadcrumbs. Useful for narrowing down a command causing GPU resets. Currently | +| | only implemented for Vulkan. | ++--------------------------------+-----------------------------------------------------------------------------------------------------------------+ | ``--remote-debug `` | |release| Remote debug (``://[:]``, e.g. ``tcp://127.0.0.1:6007``). | +--------------------------------+-----------------------------------------------------------------------------------------------------------------+ | ``--single-threaded-scene`` | |release| Scene tree runs in single-threaded mode. Sub-thread groups are disabled and run on the main thread. | @@ -165,7 +199,14 @@ given build type. +--------------------------------+-----------------------------------------------------------------------------------------------------------------+ | ``--debug-stringnames`` | |debug| Print all StringName allocations to stdout when the engine quits. | +--------------------------------+-----------------------------------------------------------------------------------------------------------------+ -| ``--frame-delay `` | |release| Simulate high CPU load (delay each frame by milliseconds). | +| ``--debug-canvas-item-redraw`` | |debug| Display a rectangle each time a canvas item requests a redraw (useful to troubleshoot low processor | +| | mode). | ++--------------------------------+-----------------------------------------------------------------------------------------------------------------+ +| ``--max-fps `` | |release| Set a maximum number of frames per second rendered (can be used to limit power usage). A value of 0 | +| | results in unlimited framerate. | ++--------------------------------+-----------------------------------------------------------------------------------------------------------------+ +| ``--frame-delay `` | |release| Simulate high CPU load (delay each frame by milliseconds). Do not use as a FPS limiter; use | +| | --max-fps instead. | +--------------------------------+-----------------------------------------------------------------------------------------------------------------+ | ``--time-scale `` | |release| Force time scale (higher values are faster, 1.0 is normal speed). | +--------------------------------+-----------------------------------------------------------------------------------------------------------------+ @@ -182,6 +223,8 @@ given build type. +--------------------------------+-----------------------------------------------------------------------------------------------------------------+ | ``--print-fps`` | |release| Print the frames per second to the stdout. | +--------------------------------+-----------------------------------------------------------------------------------------------------------------+ +| ``--editor-pseudolocalization``| |editor| Enable pseudolocalization for the editor and the project manager. | ++--------------------------------+-----------------------------------------------------------------------------------------------------------------+ **Standalone tools** @@ -191,19 +234,27 @@ given build type. | ``-s``, ``--script